$nickname = isset($_POST['nickname']) && $_POST['nickname'] !== '' ? $ocarina->purge($_POST['nickname']) : '';
$password = isset($_POST['password']) && $_POST['password'] !== '' ? $ocarina->purge($_POST['password']) : '';
$confPassword = isset($_POST['confPassword']) && $_POST['confPassword'] !== '' ? $ocarina->purge($_POST['confPassword']) : '';
$email = isset($_POST['email']) && $_POST['email'] !== '' ? $ocarina->purge($_POST['email']) : '';
$submit = isset($_POST['submit']) ? true : false;
$codiceRegistrazione = isset($_GET['codice']) && $_GET['codice'] !== '' ? $ocarina->purge($_GET['codice']) : '';
$ocarina->skin = $ocarina->isLogged() ? $ocarina->username[0]->skin : $ocarina->config[0]->skin;
$ocarina->addValue('titolo', $ocarina->getLanguage('title', 8) . $ocarina->getLanguage('title', 2) . $ocarina->config[0]->nomesito);
$ocarina->addValue('description', $ocarina->getLanguage('description', 8));
if ($ocarina->isLogged()) {
    $ocarina->addValue('result', $ocarina->getLanguage('registration', 0));
} elseif ($codiceRegistrazione !== '') {
    if ($ocarina->config[0]->validazioneaccount == 0) {
        $ocarina->addValue('result', $ocarina->getLanguage('registration', 1));
    } else {
        if (!($ocarina->username = $ocarina->searchUserByField('codiceregistrazione', $codiceRegistrazione))) {
            if ($ocarina->config[0]->log == 1) {
                $ocarina->log('~', 'Invalid validation code.');
            }
            $ocarina->addValue('result', $ocarina->getLanguage('registration', 2));
        } elseif ($ocarina->username[0]->codiceregistrazione == $codiceRegistrazione) {
            if ($ocarina->editUser('codiceregistrazione', '', $ocarina->username[0]->nickname)) {
                if ($ocarina->config[0]->log == 1) {
                    $ocarina->log('~', 'Validation account complete.');
                }
                $ocarina->addValue('result', $ocarina->getLanguage('registration', 3) . header('Refresh: 2; URL=' . $ocarina->config[0]->url_index . '/login.php'));
            } else {
                if ($ocarina->config[0]->{$ocarina}->addValue('result', $ocarina->getLanguage('registration', 11)) == 1) {
                    $ocarina->log('~', 'Validation account failed.');
                }
                $ocarina->addValue('result', $ocarina->getLanguage('registration', 4));
require_once 'etc/class.ReCaptcha.php';
$ocarina = new Ocarina();
$captcha = new ReCaptcha();
$email = isset($_POST['email']) && $_POST['email'] !== '' ? $ocarina->purge($_POST['email']) : '';
$codiceRecupero = isset($_GET['codice']) && $_GET['codice'] !== '' ? $ocarina->purge($_GET['codice']) : '';
$recupero = $codiceRecupero !== '' ? true : false;
$submit = isset($_POST['submit']) ? true : false;
$ocarina->skin = $ocarina->isLogged() ? $ocarina->username[0]->skin : $ocarina->config[0]->skin;
$ocarina->addValue('titolo', $ocarina->getLanguage('title', 7) . $ocarina->getLanguage('title', 2) . $ocarina->config[0]->nomesito);
$ocarina->addValue('description', $ocarina->getLanguage('description', 7));
if (!$submit) {
    $ocarina->addValue('captcha', $captcha->getCaptcha());
    $ocarina->addValue('result', $ocarina->getLanguage('recoverpassword', 8));
} elseif (!$ocarina->isLogged()) {
    if ($email == '' && $recupero && $codiceRecupero !== '') {
        if (!($ocarinaname = $ocarina->searchUserByField('codicerecupero', $codiceRecupero))) {
            $ocarina->addValue('result', $ocarina->getLanguage('recoverpassword', 0));
            if ($ocarina->config[0]->log == 1) {
                $ocarina->log('~', 'Invalid recover code.');
            }
            $ocarina->addValue('recupera', '');
        } elseif ($ocarinaname[0]->codicerecupero == $codiceRecupero) {
            $codice = $ocarina->getCode();
            $password = substr($codice, strlen($codice) - 24);
            // 32-24=8
            if ($ocarina->editUser('codicerecupero', '', $ocarinaname[0]->nickname) && $ocarina->editUser('password', md5($password), $ocarinaname[0]->nickname)) {
                if ($ocarina->config[0]->log == 1) {
                    $ocarina->log($ocarinaname[0]->nickname, 'Password recovered.');
                }
                $ocarina->addValue('result', str_replace('{$password}', $password, $ocarina->getLanguage('recoverpassword', 1)));
                $ocarina->addValue('recupera', '');