Пример #1
0
 /**
  *  Activation du compte.
  *  @author Cam
  *  @return tpl
  */
 protected function main()
 {
     if (empty($_GET['mid']) || empty($_GET['ca'])) {
         header('Location: ./');
     }
     if (is_logged_in()) {
         redir(Nw::$lang['common']['already_connected'], false, './');
     }
     $return_valid = false;
     inc_lib('users/mbr_act_exists');
     if (mbr_act_exists($_GET['mid'], $_GET['ca'])) {
         inc_lib('users/get_info_mbr');
         $donnees_compte = get_info_mbr($_GET['mid']);
         if ($donnees_compte['u_active'] == 0) {
             inc_lib('users/valid_account');
             inc_lib('admin/gen_cachefile_nb_members');
             valid_account($_GET['mid']);
             gen_cachefile_nb_members();
             generate_members_sitemap();
             redir(Nw::$lang['users']['compte_valide'], true, './');
             $return_valid = true;
         }
     }
     if (!$return_valid) {
         redir(Nw::$lang['users']['compte_valid_error'], false, './');
     }
 }
Пример #2
0
function add_mbr($pseudo, $password, $email, $identifier = '', $valide = 0)
{
    $bf_token = 'jJ_=éZAç1l';
    $ft_token = 'ù%*àè1ç0°dezf';
    $key_alea_code_activate = md5(uniqid(mt_rand()));
    // Enregistrement de l'utilisateur dans la base de données
    Nw::$DB->query('INSERT INTO ' . Nw::$prefix_table . 'members (u_pseudo, u_alias, u_identifier, u_password, u_email, u_group, u_date_register, u_active, u_code_act, u_ip)
    VALUES(\'' . insertBD(trim($pseudo)) . '\', \'' . rewrite(trim($pseudo)) . '\', \'' . insertBD(trim($identifier)) . '\', \'' . insertBD(sha1($bf_token . trim($password) . $ft_token)) . '\', \'' . insertBD(trim($email)) . '\',
    4, NOW(), ' . intval($valide) . ', \'' . insertBD($key_alea_code_activate) . '\', \'' . get_ip() . '\')') or Nw::$DB->trigger(__LINE__, __FILE__);
    $id_new_membre = Nw::$DB->insert_id;
    $identifiant_unique = md5($id_new_membre . uniqid(rand(), true));
    $lien_activation = Nw::$site_url . 'users-32.html?mid=' . $id_new_membre . '&ca=' . $key_alea_code_activate;
    Nw::$DB->query('UPDATE ' . Nw::$prefix_table . 'members SET u_ident_unique = \'' . Nw::$DB->real_escape_string($identifiant_unique) . '\' WHERE u_id = ' . intval($id_new_membre)) or Nw::$DB->trigger(__LINE__, __FILE__);
    Nw::$DB->query('INSERT INTO ' . Nw::$prefix_table . 'members_stats (s_id_membre) VALUES(' . intval($id_new_membre) . ')') or Nw::$DB->trigger(__LINE__, __FILE__);
    inc_lib('users/mail2gd');
    mail2gd($identifiant_unique, trim($email));
    inc_lib('newsletter/add_abonnement');
    add_abonnement(trim($email), $id_new_membre);
    // Envoie d'email de validation
    if ($valide == 0) {
        $txt_mail = sprintf(Nw::$lang['users']['mail_confirm_insc'], $pseudo, Nw::$site_url, Nw::$site_name, $lien_activation, $lien_activation, $lien_activation);
        @envoi_mail(trim($email), sprintf(Nw::$lang['users']['confirm_inscription'], Nw::$site_name), $txt_mail);
    } else {
        // Le compte est confirmé, on met à jour le nbr de membres
        inc_lib('admin/gen_cachefile_nb_members');
        gen_cachefile_nb_members();
        generate_members_sitemap();
    }
    return $id_new_membre;
}
Пример #3
0
    $_COOKIE = array_map('stripslashes_antimq', $_COOKIE);
}
include PATH_ROOT . 'inc/functions.php';
include PATH_ROOT . 'inc/_constantes.php';
include PATH_ROOT . 'inc/_config.php';
// Si la connexion MySQL a échoué
if (!Nw::$DB->is_connected()) {
    error(Nw::$lang['common']['mysqlerror_title'], Nw::$lang['common']['mysqlerror_content']);
}
if (!is_file(PATH_ROOT . Nw::$assets['dir_cache'] . Nw::$site_lang . '.hot_search.php')) {
    inc_lib('admin/gen_cachefile_top_search');
    gen_cachefile_top_search(true);
}
if (!is_file(PATH_ROOT . Nw::$assets['dir_cache'] . Nw::$site_lang . '.nb_members.php')) {
    inc_lib('admin/gen_cachefile_nb_members');
    gen_cachefile_nb_members();
}
if (is_file(PATH_ROOT . Nw::$assets['dir_cache'] . Nw::$site_lang . '.last_mod_file.php')) {
    include PATH_ROOT . Nw::$assets['dir_cache'] . Nw::$site_lang . '.last_mod_file.php';
}
include PATH_ROOT . Nw::$assets['dir_cache'] . Nw::$site_lang . '.categories.php';
include PATH_ROOT . Nw::$assets['dir_cache'] . Nw::$site_lang . '.hot_search.php';
include PATH_ROOT . Nw::$assets['dir_cache'] . Nw::$site_lang . '.nb_members.php';
//On essaye de se connecte avec les cookies
if (!is_logged_in() && !empty($_COOKIE['nw_ident']) && !empty($_COOKIE['nw_pass'])) {
    //On vérifie que le compte existe
    if (Session::count_exit_cookies($_COOKIE['nw_ident'], $_COOKIE['nw_pass']) > 0) {
        $_SESSION['logged'] = true;
        $_SESSION['ident_session'] = intval($_COOKIE['nw_ident']);
    }
}