public function pjActionLogin() { $this->setLayout('pjActionAdminLogin'); if (isset($_POST['login_user'])) { if (!isset($_POST['login_email']) || !isset($_POST['login_password']) || !pjValidation::pjActionNotEmpty($_POST['login_email']) || !pjValidation::pjActionNotEmpty($_POST['login_password']) || !pjValidation::pjActionEmail($_POST['login_email'])) { pjUtil::redirect($_SERVER['PHP_SELF'] . "?controller=pjAdmin&action=pjActionLogin&err=4"); } $pjUserModel = pjUserModel::factory(); $user = $pjUserModel->where('t1.email', $_POST['login_email'])->where(sprintf("t1.password = AES_ENCRYPT('%s', '%s')", pjObject::escapeString($_POST['login_password']), PJ_SALT))->limit(1)->findAll()->getData(); if (count($user) != 1) { pjUtil::redirect($_SERVER['PHP_SELF'] . "?controller=pjAdmin&action=pjActionLogin&err=1"); } else { $user = $user[0]; unset($user['password']); if (!in_array($user['role_id'], array(1, 2, 3))) { pjUtil::redirect($_SERVER['PHP_SELF'] . "?controller=pjAdmin&action=pjActionLogin&err=2"); } if ($user['role_id'] == 3 && $user['is_active'] == 'F') { pjUtil::redirect($_SERVER['PHP_SELF'] . "?controller=pjAdmin&action=pjActionLogin&err=2"); } if ($user['status'] != 'T') { pjUtil::redirect($_SERVER['PHP_SELF'] . "?controller=pjAdmin&action=pjActionLogin&err=3"); } $last_login = date("Y-m-d H:i:s"); $_SESSION[$this->defaultUser] = $user; $data = array(); $data['last_login'] = $last_login; $pjUserModel->reset()->setAttributes(array('id' => $user['id']))->modify($data); if ($this->isAdmin() || $this->isEditor()) { //Let's check get data from clover. if (array_key_exists('cloverData', $_SESSION)) { pjUtil::redirect($_SERVER['PHP_SELF'] . "?controller=pjAdminSignUp&action=pjActionMain&case=login"); } pjUtil::redirect($_SERVER['PHP_SELF'] . "?controller=pjAdmin&action=pjActionIndex"); } } } else { $this->appendJs('jquery.validate.min.js', PJ_THIRD_PARTY_PATH . 'validate/'); $this->appendJs('pjAdmin.js'); } }
/** * Reset internal variables for another validation run. * * @return void */ protected static function pjActionReset() { self::$errors = array(); }
public function pjActionStep6() { self::pjActionCheckConfig(); $this->pjActionCheckSession(); if (isset($_POST['step5'])) { $_POST = array_map('trim', $_POST); if (!isset($_POST['license_key']) || !pjValidation::pjActionNotEmpty($_POST['license_key'])) { $time = time(); $_SESSION[$this->defaultErrors][$time] = "License Key is required and can't be empty."; pjUtil::redirect($_SERVER['PHP_SELF'] . "?controller=pjInstaller&action=pjActionStep5&install=1&err=" . $time); } else { $_POST = pjSanitize::clean($_POST, array('encode' => false)); $_SESSION[$this->defaultInstaller] = array_merge($_SESSION[$this->defaultInstaller], $_POST); $Http = new pjHttp(); $Http->request(base64_decode("aHR0cDovL3N1cHBvcnQuc3RpdmFzb2Z0LmNvbS8=") . 'index.php?controller=Api&action=newInstall&key=' . urlencode($_POST['license_key']) . "&version=" . urlencode(PJ_SCRIPT_VERSION) . "&script_id=" . urlencode(PJ_SCRIPT_ID) . "&server_name=" . urlencode($_SERVER['SERVER_NAME']) . "&ip=" . urlencode($_SERVER['REMOTE_ADDR']) . "&referer=" . urlencode($_SERVER['HTTP_REFERER'])); $resp = $Http->getResponse(); $error = $Http->getError(); $time = time(); if ($resp === FALSE || !empty($error) && $error['code'] == 109) { $_SESSION[$this->defaultErrors][$time] = "Installation key cannot be verified. Please, make sure you install on a server which is connected to the internet."; pjUtil::redirect($_SERVER['PHP_SELF'] . "?controller=pjInstaller&action=pjActionStep5&install=1&err=" . $time); } else { $output = unserialize($resp); if (isset($output['hash']) && isset($output['code']) && $output['code'] == 200) { $_SESSION[$this->defaultInstaller]['private_key'] = $output['hash']; } else { $text = 'Key is wrong or not valid. Please check you data again.'; if (isset($output['code'])) { switch ((int) $output['code']) { case 101: $text = 'License key is not valid'; break; case 106: $text = 'Number of installations allowed has been reached'; break; } } $_SESSION[$this->defaultErrors][$time] = $text; pjUtil::redirect($_SERVER['PHP_SELF'] . "?controller=pjInstaller&action=pjActionStep5&install=1&err=" . $time); } } } } if (!isset($_SESSION[$this->defaultInstaller]['step5'])) { pjUtil::redirect($_SERVER['PHP_SELF'] . "?controller=pjInstaller&action=pjActionStep5&install=1"); } $this->appendJs('jquery.validate.min.js', $this->getConst('PLUGIN_LIBS_PATH')); $this->appendJs('pjInstaller.js', $this->getConst('PLUGIN_JS_PATH')); }