Ejemplo n.º 1
0
 public function load()
 {
     parent::load();
     $this->SNdata = 0;
     $this->success = FALSE;
     $ip = $_SERVER['REMOTE_ADDR'];
     if ($this->isPost()) {
         if ($this->globalModel->isGameOver()) {
             $this->redirect("over.php");
         } else {
             $name = trim($_POST['name']);
             $email = trim($_POST['email']);
             $pwd = trim($_POST['pwd']);
             $this->err[0] = strlen($name) < 3 ? register_player_txt_notless3 : "";
             if ($this->err[0] == "") {
                 $this->err[0] = preg_match("/[:,\\. \\n\\r\\t\\s]+/", $name) ? register_player_txt_invalidchar : "";
             }
             if ($name == "[ally]" || $name == "admin" || $name == "administrator" || $name == "مدير" || $name == "تتار" || $name == "التتار" || $name == "دعم" || $name == "الدعم" || $name == $this->appConfig['system']['adminName'] || $name == tatar_tribe_player) {
                 $this->err[0] = register_player_txt_reserved;
             }
             $this->err[1] = !preg_match("/^[^@]+@[a-zA-Z0-9._-]+\\.[a-zA-Z]+\$/", $email) ? register_player_txt_invalidemail : "";
             $this->err[2] = strlen($pwd) < 4 ? register_player_txt_notless4 : "";
             $this->err[3] = !isset($_POST['tid']) || $_POST['tid'] != 1 && $_POST['tid'] != 2 && $_POST['tid'] != 3 && $_POST['tid'] != 6 && $_POST['tid'] != 7 ? "<li>" . register_player_txt_choosetribe . "</li>" : "";
             $this->err[3] .= !isset($_POST['kid']) || !is_numeric($_POST['kid']) || $_POST['kid'] < 0 || 4 < $_POST['kid'] ? "<li>" . register_player_txt_choosestart . "</li>" : "";
             if (0 < strlen($this->err[0]) || 0 < strlen($this->err[1]) || 0 < strlen($this->err[2]) || 0 < strlen($this->err[3])) {
                 return;
             }
             $m = new RegisterModel();
             $this->err[0] = $m->isPlayerNameExists($name) ? register_player_txt_usedname : "";
             $this->err[1] = $m->isPlayerEmailExists($email) ? register_player_txt_usedemail : "";
             $this->err[1] = $m->isPlayerIpExists($ip) ? "Canot Register IP address already in use" : "";
             if (0 < strlen($this->err[0]) || 0 < strlen($this->err[1])) {
                 $m->dispose();
             } else {
                 $ip = $_SERVER['REMOTE_ADDR'];
                 $villageName = new_village_name_prefix . " " . $name;
                 #removed 'PLAYERTYPE_NORMAL' right after map_size thing. Dunno why it doesnt make him player_type = 1 but owke.
                 $result = $m->createNewPlayer($name, $email, $pwd, $_POST['tid'], $_POST['kid'], $villageName, $this->setupMetadata['map_size'], 1, 1, $this->SNdata, $ip);
                 if ($result['hasErrors']) {
                     $this->err[3] = register_player_txt_fullserver;
                     $m->dispose();
                 } else {
                     $m->dispose();
                     $link = WebHelper::getbaseurl() . "activate.php?id=" . $result['activationCode'];
                     $to = $email;
                     $from = $this->appConfig['system']['email'];
                     $subject = register_player_txt_regmail_sub;
                     $message = sprintf(register_player_txt_regmail_body, $name, $name, $pwd, $link, $link);
                     WebHelper::sendmail($to, $from, $subject, $message);
                     $this->success = TRUE;
                 }
             }
         }
     }
 }
Ejemplo n.º 2
0
 function load()
 {
     parent::load();
     $this->SNdata = 0;
     $this->success = FALSE;
     if ($this->isPost()) {
         if ($this->globalModel->isGameOver()) {
             $this->redirect('over.php');
             return null;
         }
         $name = trim($_POST['name']);
         $email = trim($_POST['email']);
         $pwd = trim($_POST['pwd']);
         $this->err[0] = strlen($name) < 3 ? register_player_txt_notless3 : '';
         if ($this->err[0] == '') {
             $this->err[0] = preg_match('/[:,\\. \\n\\r\\t\\s]+/', $name) ? register_player_txt_invalidchar : '';
         }
         if ($name == '[ally]' || $name == 'admin' || $name == 'administrator' || $name == 'مدير' || $name == 'تتار' || $name == 'التتار' || $name == 'دعم' || $name == 'الدعم' || $name == $this->appConfig['system']['adminName'] || $name == tatar_tribe_player) {
             $this->err[0] = register_player_txt_reserved;
         }
         $this->err[1] = !preg_match("/^[^@]+@[a-zA-Z0-9._-]+\\.[a-zA-Z]+\$/", $email) ? register_player_txt_invalidemail : "";
         $this->err[2] = strlen($pwd) < 4 ? register_player_txt_notless4 : "";
         $this->err[3] = !isset($_POST['tid']) || $_POST['tid'] != 1 && $_POST['tid'] != 2 && $_POST['tid'] != 3 && $_POST['tid'] != 6 && $_POST['tid'] != 8 && $_POST['tid'] != 7 && $_POST['tid'] != 8 && $_POST['tid'] != 9 ? "<li>" . register_player_txt_choosetribe . "</li>" : "";
         $this->err[3] .= !isset($_POST['kid']) || !is_numeric($_POST['kid']) || $_POST['kid'] < 0 || 4 < $_POST['kid'] ? "<li>" . register_player_txt_choosestart . "</li>" : "";
         if (0 < strlen($this->err[0]) || 0 < strlen($this->err[1]) || 0 < strlen($this->err[2]) || 0 < strlen($this->err[3])) {
             return null;
         }
         $m = new RegisterModel();
         $this->err[0] = $m->isPlayerNameExists($name) ? register_player_txt_usedname : '';
         $this->err[1] = $m->isPlayerEmailExists($email) ? register_player_txt_usedemail : '';
         if (0 < strlen($this->err[0]) || 0 < strlen($this->err[1])) {
             $m->dispose();
             return null;
         }
         $villageName = new_village_name_prefix . ' ' . $name;
         $result = $m->createNewPlayer($name, $email, $pwd, $_POST['tid'], $_POST['kid'], $villageName, $this->setupMetadata['map_size'], PLAYERTYPE_NORMAL, 1, $this->SNdata);
         if ($result['hasErrors']) {
             $this->err[3] = register_player_txt_fullserver;
             $m->dispose();
             return null;
         }
         $m->dispose();
         $link = WebHelper::getbaseurl() . 'activate.php?id=' . $result['activationCode'];
         $to = $email;
         $from = $this->appConfig['system']['email'];
         $subject = register_player_txt_regmail_sub;
         $message = sprintf(register_player_txt_regmail_body, $name, $name, $pwd, $link, $link);
         WebHelper::sendmail($to, $from, $subject, $message);
         $this->success = TRUE;
     }
 }