%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /home/nailstv/public_html/es.nails.tv/
Upload File :
Create Path :
Current File : /home/nailstv/public_html/es.nails.tv/registracion.php

<?php

require_once 'config/config.php';

//Registry::set('debug', true);

$p['title'] = 'Registro en Es.nails.tv';
$p['desc'] = 'Registrarse en la plataforma es.nails.tv. Uso de favoritos, votación.';
$p['keywords'] = 'uñas artificiales, manicuras, registración';
$p['pagename'] = 'registración';
if (!empty($_SESSION[Registry::get('site')]['user_id']))
{
    $p['active'] = 'Adatmódosítás';
}
else
{
    $p['active'] = 'Regisztráció';
}


$page = new Page(Registry::get('site'), false, $p);
Registry::set('page', $page);
$page->assign('content', content());
$page->display('page.tpl.html');

////////////////////////////////////////////////////////////////////////////////

function content()
{
    //Registry::get('page')->assign('crop_img', 1);

    $db = Registry::get('db');
    $c = new Content();
    $v = new Inputvalidator;

    $c->assign('jobb_banner', Page::banner(2,'jobb'));
    $c->assign('top_cimkek', top_cimkek());
    Page::seoFromDb(2);

    $table = 'felhasznalo';

    if(isset($_SESSION['reg_ok']) && $_SESSION['reg_ok']) {
        $_SESSION['reg_ok'] = false;
        $c->assign('cim', 'Registración');
        $c->assign('msg', 'El registro se ha realizado exitosamente.');
        return $c->fetch('regisztracio.tpl.html');
    }

    if($_POST && isset($_POST['func']) && $_POST['func'] == 'reg') {
        $rec = validate($_POST, $v);

        if($v->isError) {
            $c->assign('reg_error', $v->printError());
            $c->assign('edit', $rec);
        }
        else {
            if(empty($_POST['id'])) {
                $rec['id'] = $db->GenID('_felhasznalo_id');

                $rec['last_ip'] = $_SERVER['REMOTE_ADDR'];

                $db->insert($rec, $table);

                sendAdminMail($rec);

                if($rec['hirlevel'] == 't'){
                    $hl['datum'] = date("Y-m-d H:i:s");
                    $hl['nev'] = $rec['nev'];
                    $hl['email'] = $rec['email'];

                    $db->insert($hl, 'hirlevel_cimek');
                }

                //User::pont($rec['id'], 1);

                if($rec['tipus'] == 'mukormos') {
                    User::pont($rec['id'], 2);
                }

                if(!empty($rec['meghivo']) && $rec['tipus'] == 'mukormos'){
                    $bind = $rec['meghivo'];
                    $sql = "SELECT id FROM felhasznalo WHERE email = ? AND storno = 'f'";
                    $hivo = $db->GetRow($sql, $bind);

                    $sql = "select COUNT(id) AS num from felhasznalo where email = '". $rec['email'] ."'";
                    $volt_mar_regisztralva = $db->GetRow($sql);
                }

                $user = new User(Registry::get('site'), 'felhasznalo');
                $user->checkLogin($rec['login'], $rec['not_crypted_pass'], 'login');

                $ma = date("Y-m-d H:i:s");
                $bind = array($ma, $rec['id']);
                $sql = "UPDATE felhasznalo SET last_login = ? WHERE id = ?";
                $db->query($sql, $bind);

                $_SESSION['reg_ok'] = true;

                sendRegMail($rec);
            }
            else {
                $db->update($rec, $table);

                if($rec['hirlevel'] == 'f'){
                    $sql = "UPDATE hirlevel_cimek SET storno = 't' WHERE email = '" . $rec['email'] . "'";
                    $db->execute($sql);
                    $sql = "DELETE FROM hirlevel_cimek WHERE email = '" . $rec['email'] . "'";
                    $db->execute($sql);
                } else {
                    $hl['datum'] = date("Y-m-d H:i:s");
                    $hl['nev'] = $rec['nev'];
                    $hl['email'] = $rec['email'];

                    $db->insert($hl, 'hirlevel_cimek');

                    $sql = "UPDATE felhasznalo SET hirlevel = 't' WHERE id = '" . $_SESSION[Registry::get('site')]['user_id'] . "'";
                    $db->execute($sql);
                }
            }

            header('Location: ' . Registry::get('wwwroot'). '/registration');
            die;
        }
    }

    if(!empty($_SESSION[Registry::get('site')]['user_id'])) {
        $c->assign('cim', 'Mi perfil');
    }
    else {
        $c->assign('cim', 'Registración');
    }

    if(!empty($_SESSION[Registry::get('site')]['user_id']) && empty($edit)) {
        $sql = "SELECT * FROM felhasznalo WHERE id = ?";
        $edit = $db->GetRow($sql, array($_SESSION[Registry::get('site')]['user_id']));

        $c->assign('edit', $edit);
    }

    return $c->fetch('regisztracio.tpl.html');
}

function validate($rec, $v)
{
    $db = Registry::get('db');
    $l = Registry::get('lang');

    // teljes név
    $msg = array('El nombre completo es obligatorio.');
    $rec['nev'] = $v->v($rec['nev'], 'required, stripHtml', $msg);

    // login
    $msg = array('Se requiere nombre de usuario.');
    $rec['login'] = $v->v($rec['login'], 'required, stripHtml', $msg);

    if(!preg_match("/^[a-z0-9A-Z]{3,30}$/", $rec['login'])) {
        $v->addError('El nombre de usuario debe contener sólo letras sin acentos y números  y debe incluir al menos 3 caracteres, hasta 30 caracteres de longitud.');
    }

    $sql = "SELECT id FROM felhasznalo WHERE login = ? AND storno = 'f'";
    $bind = array($rec['login']);

    if(!empty($rec['id'])) {
        $sql .= " AND id != ?";
        $bind[] = $rec['id'];
    }
    $row = $db->GetRow($sql, $bind);

    if(!empty($row['id'])) {
        $v->addError('Este nombre de usuario ya está en uso, elija otro.');
    }

    // jelszó
    if(!empty($rec['pass']) && $rec['pass'] != $rec['pass2']) {
        $v->addError('Las dos contraseñas no coinciden.');
    }
    else if(empty($rec['id']) && empty($rec['pass'])) {
        $v->addError('Es obligatorio introducir la  contraseña.');
    }
    else if(!empty($rec['pass'])) {
        $rec['not_crypted_pass'] = $rec['pass'];
        $rec['pass'] = String2::cryptPass($rec['pass']);
    }
    else {
        unset($rec['pass']);
    }

    // email
    $msg = array('Se requiere dirección de correo electrónico.', 'Dirección de correo electrónico incorrecta');
    $rec['email'] = $v->v($rec['email'], 'required, email', $msg);

    $sql = "SELECT id FROM felhasznalo WHERE email = ? AND storno = 'f'";
    $bind = array($rec['email']);

    if(!empty($rec['id'])) {
        $sql .= " AND id != ?";
        $bind[] = $rec['id'];
    }
    $row = $db->GetRow($sql, $bind);

    if(!empty($row['id'])) {
        $v->addError('Esta dirección de correo electrónico ya está en uso, elija otra por favor ó pida <a href=http://es.nails.tv/contrasena><u>nuestro recordatorio de contraseña.</u></a>.');
    }

    $rec['hirlevel'] = 't';

    if(!isset($_POST['tizenhat']) && empty($rec['id'])) {
        $v->addError('En es.nails.tv solo podrán registrase personas  mayores de 16 años. Es nesesario  declarar que son mayores de 16 años de edad.');
    }
    else {
        $rec['tizenhat'] = 't';
    }

    if(!isset($_POST['elfogad']) && empty($rec['id'])) {
        $v->addError('Debe aceptar los términos, condiciones de uso  y política de privacidad.');
    }
    else {
        $rec['elfogad'] = 't';
    }

    $rec['reg_date'] = date("Y-m-d H:i:s");

    return $rec;
}

function sendRegMail($rec)
{
    $c = new Content;
    $c->assign('rec', $rec);

    $mail = new PHPMailer();
    $mail->CharSet = "utf-8";
    /*$mail->IsSMTP();
    $mail->Host = Registry::get('smtp_host');
    $mail->SMTPAuth = true;
    $mail->Username = Registry::get('smtp_user');
    $mail->Password = Registry::get('smtp_pass');*/
    $mail->Subject = 'Sikeres regisztráció';
    $mail->From = Registry::get('email');
    $mail->FromName = Registry::get('from');
    $mail->Body = $c->fetch('mail_regisztracio.tpl.html');
    $mail->AddAddress($rec['email']);

    if(!$mail->Send())
    {
        echo "La carta no fue enviada";
        echo "Se ha encontrado el siguiente error: " . $mail->ErrorInfo;
        exit;
    }
}

function sendAdminMail($rec)
{
    $db = Registry::get('db');
    $c = new Content;

    $ip = $_SERVER['REMOTE_ADDR'];

    $email['subject'] = $ip . ' - Registrase en es.nails.tv - '. $rec['nev'];
    $email['from'] = Registry::get('email');
    $email['fromname'] = Registry::get('from');
    $email['to'] = Registry::get('email');

    $c->assign('rec', $rec);

    $email['body'] = $c->fetch('admin/mail_admin_reg.tpl.html');

    Page::sendEmail($email);
}
function top_cimkek()
{
    $db = Registry::get('db');

    $sql = "SELECT COUNT(ctv.id) as videoszam, c.nev, c.url, c.id
			FROM cimke_to_video ctv
			LEFT JOIN video v ON v.id = ctv.video_id
			LEFT JOIN cimkek c ON c.id = ctv.cimkek_id
			WHERE v.storno = 'f'
				AND v.aktiv = 't'
			GROUP BY ctv.cimkek_id
			ORDER BY videoszam DESC
			LIMIT 0,10";
    $top = $db->GetArray($sql);

    return $top;
}

?>

Zerion Mini Shell 1.0