public function signupFormCallback($args, $action, $mem_redirect, $mem_resend) { //$mem_redirect->post = $vars; foreach ($args->post as $key => $value) { $_SESSION['SignupBWVars'][$key] = $value; } $StrLog = "Entering signupFormCallback "; if (!empty($args->post["Username"])) { $StrLog = $StrLog . " Username=[" . $args->post["Username"] . "]"; } if (!empty($args->post["geonameid"])) { $StrLog = $StrLog . " geonameid=[" . $args->post["geonameid"] . "]"; } if (!empty($args->post["iso_date"])) { $StrLog = $StrLog . " iso_date=[" . $args->post["iso_date"] . "]"; } MOD_log::get()->write($StrLog, "Signup"); $vars = $_SESSION['SignupBWVars']; $request = $args->request; if (isset($request[1]) && $request[1] == '4') { $model = new SignupModel(); $errors = $model->checkRegistrationForm($vars); if (count($errors) > 0) { // show form again $_SESSION['SignupBWVars']['errors'] = $errors; $mem_redirect->post = $vars; return false; } $model->polishFormValues($vars); if (!($idTB = $model->registerTBMember($vars))) { // MyTB registration didn't work } else { // signup on MyTB successful, yeah. $id = $model->registerBWMember($vars); $_SESSION['IdMember'] = $id; $vars['feedback'] .= $model->takeCareForNonUniqueEmailAddress($vars['email']); $vars['feedback'] .= $model->takeCareForComputerUsedByBWMember(); $model->writeFeedback($vars['feedback']); $View = new SignupView($model); // TODO: BW 2007-08-19: $_SYSHCVOL['EmailDomainName'] // look at that ... a two years plus old todo :) ... and now four years plus :P // finally 6 years and counting... define('DOMAIN_MESSAGE_ID', 'bewelcome.org'); // TODO: config $View->registerMail($vars, $id, $idTB); $View->signupTeamMail($vars); unset($_SESSION['IdMember']); return 'signup/finish'; } } return false; }
public function indexAction() { header('content-type: application/json'); header('Access-Control-Allow-Origin: *'); header('Access-Control-Allow-Methods: POST'); $valid = true; $errors = []; $username = trim(ucwords(strtolower(htmlentities($_POST['username'])))); $first_name = trim(ucwords(strtolower(htmlentities($_POST['first-name'])))); $last_name = trim(ucwords(strtolower(htmlentities($_POST['last-name'])))); $mail = trim(htmlentities(strtolower($_POST['mail']))); $password = trim(htmlentities($_POST['password'])); $password2 = trim(htmlentities($_POST['password2'])); if (!isset($username) || empty($username)) { $errors['username'] = '******'; $valid = false; } elseif (strlen($username) < 6) { $errors['username'] = '******'; $valid = false; } elseif (strlen($username) > 24) { $errors['username'] = '******'; $valid = false; } if (!isset($first_name) || empty($first_name)) { $errors['firstName'] = '<span class="errors">Non saisi</span>'; $valid = false; } elseif (strlen($first_name) < 2) { $errors['firstName'] = '<span class="errors">2 caractères min</span>'; $valid = false; } elseif (strlen($first_name) > 32) { $errors['firstName'] = '<span class="errors">32 caractères max</span>'; $valid = false; } if (!isset($last_name) || empty($last_name)) { $errors['lastName'] = '<span class="errors">Non saisi</span>'; $valid = false; } elseif (strlen($last_name) < 2) { $errors['lastName'] = '<span class="errors">2 caractères min</span>'; $valid = false; } elseif (strlen($last_name) > 32) { $errors['lastName'] = '<span class="errors">32 caractères max</span>'; $valid = false; } if (!isset($mail) || empty($mail)) { $errors['mail'] = '<span class="errors">Non saisi</span>'; $valid = false; } elseif (!filter_var($mail, FILTER_VALIDATE_EMAIL)) { $errors['mail'] = '<span class="errors">Format incorrect</span>'; $valid = false; } if (!isset($password) || empty($password)) { $errors['password'] = '******'; $valid = false; } elseif (strlen($password) < 8) { $errors['password'] = '******'; $valid = false; } if (!isset($password2) || empty($password2)) { $errors['password2'] = '<span class="errors">Non saisi</span>'; $valid = false; } elseif ($password2 !== $password) { $errors['password2'] = '<span class="errors">Non identiques</span>'; $valid = false; } $errors['valid'] = $valid; if ($valid) { $timestamp = time(); $hash = hash('sha256', strrev($timestamp) . $password . '\\Rand0msalT/'); $errors['create'] = SignupModel::create($this->pdo, $username, $first_name, $last_name, $mail, $hash, $timestamp); } echo json_encode($errors); }