예제 #1
0
 /**
  * one action Index
  * for show and update userinfo
  */
 public function actionIndex()
 {
     if ($_SERVER['REQUEST_METHOD'] === 'POST') {
         Module::getTable('UserInfo');
         $usersTable = new UserInfo();
         if (isset($_POST['firstname'])) {
             echo $_POST['surname'];
             // save user's additional info
             $userInfo['uid'] = $_SESSION['uid'];
             $userInfo['firstname'] = isset($_POST['firstname']) ? $_POST['firstname'] : ' ';
             $userInfo['surname'] = isset($_POST['surname']) ? $_POST['surname'] : ' ';
             $userInfo['website'] = isset($_POST['website']) ? $_POST['website'] : ' ';
             $userInfo['imageurl'] = isset($_POST['imageurl']) ? $_POST['imageurl'] : ' ';
             $usersTable->addUserInfo($userInfo);
             header("Location: " . $_SERVER['HTTP_REFERER']);
         }
     }
     Module::getTable('UserInfo');
     $usersTable = new UserInfo();
     $where = 'users.id = ' . $_SESSION['uid'];
     $translator = new translate();
     $data = $usersTable->fetchByCond($where);
     $data['lang'] = $translator->getVocab($_SESSION['lang']);
     $this->view->generate('InfoView.php', 'TemplateView.php', $data);
 }
예제 #2
0
 /**
  * default action (front page of site)
  */
 function actionindex()
 {
     Module::getTable('Users');
     $usersTable = new Users();
     $data = $usersTable->fetchAll();
     $translator = new translate();
     $data['lang'] = $translator->getVocab($_SESSION['lang']);
     $this->view->generate('MainView.php', 'TemplateView.php', $data);
 }
예제 #3
0
 /**
  * action for registration
  */
 public function actionRegister()
 {
     $translator = new translate();
     $data['lang'] = $translator->getVocab($_SESSION['lang']);
     if ($_SERVER['REQUEST_METHOD'] === 'POST') {
         $formIsValid = false;
         // validate entered data
         if (isset($_POST['login']) && isset($_POST['email']) && isset($_POST['password']) && isset($_POST['passwordretype'])) {
             if ($_POST['login'] != '' && $_POST['email'] != '' && $_POST['password'] != '' && $_POST['passwordretype'] != '' && $_POST['password'] == $_POST['passwordretype'] && filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)) {
                 // на всякий случай
                 // для безопасности не критично, но эта строковая константа используется в системе
                 if ($_POST['login'] == 'Anonimous') {
                     $formIsValid = false;
                 } else {
                     $formIsValid = true;
                 }
             }
         }
         if (!$formIsValid) {
             $data['login'] = $_POST['login'];
             $data['email'] = $_POST['email'];
             $data['errors'] = $data['lang']['errors'];
             $this->view->generate('RegisterView.php', 'TemplateView.php', $data);
         }
         // insert new user into table
         Module::getTable('Users');
         $usersTable = new Users();
         $password = md5($_POST['password']);
         $result = $usersTable->appendNewUser($_POST['login'], $password, session_id(), $_POST['email']);
         if ($result) {
             $_SESSION['sid'] = session_id();
             define('SID', session_id());
             header("Location: http://" . $_SERVER['HTTP_HOST'] . "/auth");
         } else {
             // something goes wrong, it's possible user already exist
             $data['userexist'] = $data['lang']['username'] . ' ' . $_POST['login'] . ' ' . $data['lang']['registered'];
         }
     }
     $this->view->generate('RegisterView.php', 'TemplateView.php', $data);
 }
예제 #4
0
 /**
  * default action
  */
 function actionindex()
 {
     $translator = new translate();
     $data['lang'] = $translator->getVocab($_SESSION['lang']);
     $this->view->generate('404View.php', 'TemplateView.php');
 }