예제 #1
0
 public function login()
 {
     if ($_POST) {
         $pass = new Password();
         $filter = new Validations();
         $auth = new Authorization();
         $username = $filter->sanitizeText($_POST["username"]);
         $password = $filter->sanitizeText($_POST["password"]);
         $options['conditions'] = " username = '******'";
         $user = $this->User->find("users", "first", $options);
         if ($pass->isValid($password, $user['password'])) {
             $auth->login($user);
             $this->redirect(array("controller" => "users", "action" => "index"));
         } else {
             echo "Usuario Invalido";
         }
     }
 }
예제 #2
0
 public function register()
 {
     $this->today = date("Y-m-d");
     $error = '';
     try {
         ### CONEXAO ###
         $conn = new PDO(DB_DSN, DB_USERNAME, DB_PASSWORD);
         $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
         ### VERIFICA ERROS ###
         $valid = new Validations();
         ### USUARIO JÁ CADASTRADO ###
         $error_0 = $conn->prepare("SELECT * FROM users WHERE user = :username");
         $error_0->bindValue("username", $this->username, PDO::PARAM_STR);
         $error_0->execute();
         if ($error_0->fetch(PDO::FETCH_NUM) > 0) {
             $error .= "Usuário já cadastrado!<br/>";
         }
         ### VERIFICA SE O E-MAIL É VALIDO ###
         if (!$valid->valida_email($this->mail)) {
             $error .= "E-mail inválido!<br/>";
         }
         ### E-MAIL JÁ CADASTRADO ###
         $error_1 = $conn->prepare("SELECT * FROM users WHERE mail = :email");
         $error_1->bindValue("email", $this->mail, PDO::PARAM_STR);
         $error_1->execute();
         if ($error_1->fetch(PDO::FETCH_NUM) > 0) {
             $error .= "E-mail já cadastrado!<br/>";
         }
         ### VERIFICA SE O CNPJ É VALIDO ###
         if (!$valid->valida_cnpj($this->username)) {
             $error .= "CNPJ inválido!</br>";
         }
         ### ###
         if ($error == '') {
             $sql = "INSERT INTO users (user, name, pass, mail, telephone, created, modified ) VALUES(:username, :name, :password, :email, :telefone, :today, :today)";
             $stmt = $conn->prepare($sql);
             $stmt->bindValue("username", $this->username, PDO::PARAM_STR);
             $stmt->bindValue("name", $this->name, PDO::PARAM_STR);
             $stmt->bindValue("razao", $this->razao, PDO::PARAM_STR);
             $stmt->bindValue("password", hash("md5", $this->password), PDO::PARAM_STR);
             //$stmt->bindValue("password", hash("sha256"), $this->password) . $this->salt, PDO:PARAM_STR); SECURITY
             $stmt->bindValue("email", $this->mail, PDO::PARAM_STR);
             $stmt->bindValue("telefone", $this->telefone, PDO::PARAM_STR);
             $stmt->bindValue("today", $this->today, PDO::PARAM_STR);
             if ($stmt->execute()) {
                 return "Cadastro efetuado com sucesso. <a href='index.php'>Clique aqui</a> para efetuar o login.";
             } else {
                 return "Erro ao efetuar cadastro. Tente novamente mais tarde.";
             }
         } else {
             return $error;
         }
     } catch (PDOException $e) {
         return $e->getMessage();
     }
 }
예제 #3
0
 /**
  * login es el metodo que se encarga de validar los datos para inicio de sesion.
  */
 public function login()
 {
     if ($_POST) {
         $pass = new Password();
         $filter = new Validations();
         $auth = new Authorization();
         $username = $filter->sanitizeText($_POST['username']);
         $password = $filter->sanitizeText($_POST['password']);
         $options = array('conditions' => "username = '******'");
         $usuario = $this->db->find('usuarios', 'first', $options);
         if ($pass->isValid($password, $usuario['password'])) {
             $auth->login($usuario);
             $this->redirect(array('controller' => 'tareas'));
         } else {
             echo "Usuario no Valido";
         }
     }
     $this->_view->renderizar('login');
 }
예제 #4
0
 public function toHash()
 {
     $validatedSubtotalIVA = Validations::validateNumber($this->subtotalIVA, 0, 12, "El subtotal IVA");
     $validatedSubtotalIVA0 = Validations::validateNumber($this->subtotalIVA0, 0, 12, "El subtotal IVA 0");
     $validatedIva = Validations::validateNumber($this->iva, 0, 12, "El IVA");
     $validatedIce = Validations::validateNumber($this->ice, 0, 12, "El ICE");
     $total = $this->subtotalIVA + $this->subtotalIVA0 + $this->iva + $this->ice;
     $validatedTotal = Validations::validateNumber($total, 0, 12, "El total");
     return array("Subtotal_IVA" => $validatedSubtotalIVA, "Subtotal_IVA0" => $validatedSubtotalIVA0, "IVA" => $validatedIva, "ICE" => $validatedIce, "Total_amount" => $validatedTotal);
 }
예제 #5
0
 public function login()
 {
     if ($_POST) {
         $pass = new Password();
         # code...
         $filter = new Validations();
         $auth = new Authorization();
         $username = $filter->sanitizeText($_POST['username']);
         $password = $filter->sanitizeText($_POST['password']);
         $options = array('conditions' => "username='******'");
         $usuario = $this->db->find('usuarios', 'first', $options);
         if ($pass->isValid($password, $usuario['password'])) {
             $auth->login($usuario);
             $this->redirect(array('controller' => 'usuarios', 'action' => 'escritorio'));
         } else {
             echo "<script type='text/javascript'>\n\t\t     alert('usuario no valido');\n\t\t    </script>";
         }
     }
     $this->_view->renderizar('login', 'login');
 }
 /**
  *Metodo de los usuarios cuando inicien en la aplicacion
  */
 public function login()
 {
     if ($_POST) {
         $pass = new Password();
         $filter = new Validations();
         //sanear lo que se reciba en el formaulario
         $auth = new Authorization();
         $username = $filter->sanitizeText($_POST["username"]);
         //sanea cajas
         $password = $filter->sanitizeText($_POST["password"]);
         $options = array("conditions" => "username = '******'");
         $usuario = $this->find("usuarios", "first", $options);
         if ($pass->isValid($password, $usuario["password"])) {
             $auth->login($usuario);
             $this->redirect(array("controller" => "tareas"));
         } else {
             echo "Usuario invalido";
         }
     }
     $this->_view->renderizar("login");
 }
예제 #7
0
 function validate()
 {
     if (!Validations::notEmptyString($this->txt)) {
         return false;
     }
     if (!Validations::notEmptyString($this->subject)) {
         return false;
     }
     if (!Validations::email($this->to)) {
         return false;
     }
     return true;
 }
예제 #8
0
 public function login()
 {
     /**
      * function that allows the user to login
      * @param password $pass password of the user
      * @param $filter to validate that the password is correct
      * @param $auth to authorize the entrance to de system
      * 
      * @return void
      */
     if ($_POST) {
         $pass = new Password();
         $filter = new Validations();
         $auth = new Authorization();
         $username = $filter->sanitizeText($_POST['username']);
         $password = $filter->sanitizeText($_POST['password']);
         $options = array('conditions' => "username = '******'");
         $usuario = $this->db->find('usuarios', 'first', $options);
         if ($pass->isValid($password, $usuario['password'])) {
             $auth->login($usuario);
             $this->redirect(array('controller' => 'tareas'));
         } else {
             echo "Usuario no valido";
         }
     }
     $this->_view->renderizar('login');
 }
 protected function _initWebFlow()
 {
     // Flowパラムの初期化
     if (NULL === Flow::$params) {
         Flow::$params = array();
     }
     // GETパラメータの各種自動処理
     if (isset($_GET) && count($_GET) > 0) {
         Flow::$params['get'] = array();
         foreach ($_GET as $key => $val) {
             // Flow用としてPOSTパラメータをしまっておく
             Flow::$params['get'][$key] = $val;
             if (NULL === Flow::$params['view']) {
                 Flow::$params['view'] = array();
             }
             Flow::$params['view'][] = array('[frowparamsection=' . $key . ']' => array(HtmlViewAssignor::PART_REPLACE_NODE_KEY => array('_flow_' . $key . '_' => $val)));
             Flow::$params['view'][] = array('[frowparamsection=' . $key . ']' => array(HtmlViewAssignor::PART_REPLACE_ATTR_KEY => array('href' => array('_flow_' . $key . '_' => $val), 'value' => array('_flow_' . $key . '_' => $val), 'src' => array('_flow_' . $key . '_' => $val))));
         }
     }
     self::$flowpostformsectionUsed = FALSE;
     if (isset($_POST['flowpostformsection']) && count($_POST) > 0) {
         Flow::$params['post'] = array();
         foreach ($_POST as $key => $val) {
             $executed = FALSE;
             // Flow用としてPOSTパラメータをしまっておく
             Flow::$params['post'][$key] = $val;
             // flowFormでPOSTされていたらbackfrowの処理をしておく
             if ($_GET['_c_'] === $_POST['flowpostformsection']) {
                 // backflowがポストされてきたらそれをviewのformに自動APPEND
                 if ($key === 'flowpostformsection-backflow-section') {
                     Flow::$params['view'][] = array('form[flowpostformsection]' => array(HtmlViewAssignor::APPEND_NODE_KEY => '<input type="hidden" name="flowpostformsection-backflow-section" value="' . $val . '"/>'));
                     self::$flowpostformsectionUsed = TRUE;
                     $executed = TRUE;
                 } elseif ($key === 'flowpostformsection-backflow-section-query') {
                     Flow::$params['view'][] = array('form[flowpostformsection]' => array(HtmlViewAssignor::APPEND_NODE_KEY => '<input type="hidden" name="flowpostformsection-backflow-section-query" value="' . $val . '"/>'));
                     $executed = TRUE;
                 }
             }
             // パスワード以外はREPLACE ATTRIBUTEを自動でして上げる
             if (0 !== strpos($key, 'pass') && $key !== 'flowpostformsection-backflow-section' && $key !== 'flowpostformsection-backflow-section-query') {
                 if (NULL === Flow::$params['view']) {
                     Flow::$params['view'] = array();
                 }
                 Flow::$params['view'][] = array('input[name=' . $key . ']' => array(HtmlViewAssignor::REPLACE_ATTR_KEY => array('value' => htmlspecialchars($val))));
             }
             if ($this->target . str_replace('_', '-', strtolower(get_class($this))) !== $_POST['flowpostformsection'] && FALSE === $executed && 0 !== strpos($key, 'pass')) {
                 // それ以外はformにhiddenで埋め込む
                 Flow::$params['view'][] = array('form[flowpostformsection]' => array(HtmlViewAssignor::APPEND_NODE_KEY => '<input type="hidden" name="' . $key . '" value="' . htmlspecialchars($val) . '"/>'));
             }
             // auto validate
             // flowFormでPOSTされていたら自動的にバリデートする
             if ($_GET['_c_'] === $_POST['flowpostformsection']) {
                 try {
                     if (FALSE !== strpos($key, 'mail')) {
                         // メールアドレスのオートバリデート
                         Validations::isEmail($val);
                     }
                     if (FALSE !== strpos($key, '_must') && 0 === strlen($val)) {
                         debug('must exception');
                         // 必須パラメータの存在チェック
                         throw new Exception();
                     }
                 } catch (Exception $Exception) {
                     // 最後のエラーメッセージを取っておく
                     $validateError = TRUE;
                     if (NULL === Flow::$params['view']) {
                         Flow::$params['view'] = array();
                     }
                     // XXX メッセージの固定化いるか??
                     Flow::$params['view'][] = array('div[flowpostformsectionerror=' . $_POST['flowpostformsection'] . ']' => 'メールアドレスの形式が違います');
                 }
             }
         }
         if (isset($validateError)) {
             // オートバリデートでエラー
             debug('$validateError');
             return FALSE;
         }
     }
     // Backflowの初期化
     if (NULL === Flow::$params['backflow']) {
         Flow::$params['backflow'] = array();
     }
     // 一つ前の画面のbackflowをflowpostformsectionに自動で挿入
     if (count(Flow::$params['backflow']) > 0) {
         $backFrowID = Flow::$params['backflow'][count(Flow::$params['backflow']) - 1]['target'] . '/' . Flow::$params['backflow'][count(Flow::$params['backflow']) - 1]['section'];
         if ('' === Flow::$params['backflow'][count(Flow::$params['backflow']) - 1]['target']) {
             $backFrowID = $this->section;
         } else {
             $backFrowID = str_replace('//', '/', $backFrowID);
         }
         // Viewの初期化
         if (NULL === Flow::$params['view']) {
             Flow::$params['view'] = array();
         }
         Flow::$params['view'][] = array('form[flowpostformsection]' => array(HtmlViewAssignor::APPEND_NODE_KEY => '<input type="hidden" name="flowpostformsection-backflow-section" value="' . $backFrowID . '"/>'));
         Flow::$params['view'][] = array('form[flowpostformsection]' => array(HtmlViewAssignor::APPEND_NODE_KEY => '<input type="hidden" name="flowpostformsection-backflow-section-query" value="' . Flow::$params['backflow'][count(Flow::$params['backflow']) - 1]['query'] . '"/>'));
         self::$flowpostformsectionUsed = TRUE;
     }
     // 現在実行中のFlowをBackflowとして登録しておく
     $query = '';
     foreach ($_GET as $key => $val) {
         if ('_c_' !== $key && '_a_' !== $key && '_o_' !== $key) {
             if (strlen($query) > 0) {
                 $query .= '&';
             }
             $query .= $key . '=' . $val;
         }
     }
     Flow::$params['backflow'][] = array('section' => $this->section, 'target' => $this->target, 'query' => htmlspecialchars($query));
     debug('backflows=');
     debug(Flow::$params['backflow']);
     // flowpostformsectionに現在の画面をBackFlowとして登録する
     if (NULL === Flow::$params['view'] && FALSE === self::$flowpostformsectionUsed) {
         $backFrowID = Flow::$params['backflow'][count(Flow::$params['backflow']) - 1]['target'] . '/' . Flow::$params['backflow'][count(Flow::$params['backflow']) - 1]['section'];
         if ('' === Flow::$params['backflow'][count(Flow::$params['backflow']) - 1]['target']) {
             $backFrowID = Flow::$params['backflow'][count(Flow::$params['backflow']) - 1]['section'];
         } else {
             $backFrowID = str_replace('//', '/', $backFrowID);
         }
         Flow::$params['view'][] = array('form[flowpostformsection]' => array(HtmlViewAssignor::APPEND_NODE_KEY => '<input type="hidden" name="flowpostformsection-backflow-section" value="' . $backFrowID . '"/>'));
         Flow::$params['view'][] = array('form[flowpostformsection]' => array(HtmlViewAssignor::APPEND_NODE_KEY => '<input type="hidden" name="flowpostformsection-backflow-section-query" value="' . Flow::$params['backflow'][count(Flow::$params['backflow']) - 1]['query'] . '"/>'));
     }
     return TRUE;
 }
예제 #10
0
파일: validate.php 프로젝트: Jamp/sgas
 /**
  * Agrega un nuevo error
  * @param Array $param parametros
  * @param string $field Nombre del campo
  * @param string $rule Nombre de la regla
  */
 protected function addError(array $param, $field, $rule)
 {
     $this->messages[$field][] = isset($param['error']) ? $param['error'] : Validations::getMessage($rule);
 }
 private function deleteRestoreGuid($guid, $validationType)
 {
     $criteria = new CDbCriteria();
     $criteria->select = '*';
     $criteria->addCondition('guid=:param1');
     $criteria->addCondition('type=:param2');
     $criteria->params = array(':param1' => $guid, ':param2' => $validationType);
     Validations::model()->deleteAll($criteria);
 }

<div class="wrap">
    
    <div id="icon-options-general" class="icon32"></div>
    
    <a href ="edit.php?post_type=job&page=consultants" class="button button-primary">Back</a>   <h1>Update Consultant</h1>

    
    <?php 
$error = 0;
$error_msg = array();
$consultants = new Consultants();
$validations = new Validations();
if (isset($_GET['id'])) {
    $id = $_GET['id'];
    $data = $consultants->getUserById($id);
}
if (isset($_POST['submit'])) {
    if (!$validations->stringCheck($_POST['firstname'])) {
        $error++;
        $error_msg[] = 'Please check firstname!';
    }
    if (!$validations->stringCheck($_POST['lastname'])) {
        $error++;
        $error_msg[] = 'Please check lastname!';
    }
    if ($consultants->isUsernameExist($_POST['email'], $_POST['id'])) {
        $error++;
        $error_msg[] = 'Please check email!';
    }
예제 #13
0
 /**
  * Validates the model.
  *
  * @return boolean True if passed validators otherwise false
  */
 private function _validate()
 {
     require_once 'Validations.php';
     $validator = new Validations($this);
     $validationOn = 'ValidationOn' . ($this->isNewRecord() ? 'Create' : 'Update');
     foreach (array('beforeValidation', "before{$validationOn}") as $callback) {
         if (!$this->invokeCallback($callback, false)) {
             return false;
         }
     }
     // need to store reference b4 validating so that custom validators have access to add errors
     $this->errors = $validator->getRecord();
     $validator->validate();
     foreach (array('afterValidation', "after{$validationOn}") as $callback) {
         $this->invokeCallback($callback, false);
     }
     if (!$this->errors->isEmpty()) {
         return false;
     }
     return true;
 }
 /**
  * Returns the data model based on the primary key given in the GET variable.
  * If the data model is not found, an HTTP exception will be raised.
  * @param integer the ID of the model to be loaded
  */
 public function loadModel($id)
 {
     $model = Validations::model()->findByPk((int) $id);
     if ($model === null) {
         throw new CHttpException(404, Yii::t('site', '404_Error'));
     }
     return $model;
 }
예제 #15
0
 /**
  * Validates the model.
  *
  * @return boolean True if passed validators otherwise false
  */
 private function _validate()
 {
     require_once 'Validations.php';
     $validator = new Validations($this);
     $validation_on = 'validation_on_' . ($this->is_new_record() ? 'create' : 'update');
     foreach (array('before_validation', "before_{$validation_on}") as $callback) {
         if (!$this->invoke_callback($callback, false)) {
             return false;
         }
     }
     // need to store reference b4 validating so that custom validators have access to add errors
     $this->errors = $validator->get_record();
     $validator->validate();
     foreach (array('after_validation', "after_{$validation_on}") as $callback) {
         $this->invoke_callback($callback, false);
     }
     if (!$this->errors->is_empty()) {
         return false;
     }
     return true;
 }
예제 #16
0
 /**
  * Returns array of validator data for this Model.
  *
  * Will return an array looking like:
  *
  * <code>
  * array(
  *   'name' => array(
  *     array('validator' => 'validates_presence_of'),
  *     array('validator' => 'validates_inclusion_of', 'in' => array('Bob','Joe','John')),
  *   'password' => array(
  *     array('validator' => 'validates_length_of', 'minimum' => 6))
  *   )
  * );
  * </code>
  *
  * @return array An array containing validator data for this model.
  */
 public function get_validation_rules()
 {
     $validator = new Validations($this);
     return $validator->rules();
 }
예제 #17
0
파일: Model.php 프로젝트: neoff/mywork
 /**
  * Validates the model.
  *
  * @return boolean True if passed validators otherwise false
  */
 private function _validate()
 {
     require_once 'Validations.php';
     $validator = new Validations($this);
     $validation_on = 'validation_on_' . ($this->is_new_record() ? 'create' : 'update');
     foreach (array('before_validation', "before_{$validation_on}") as $callback) {
         if (!$this->invoke_callback($callback, false)) {
             return false;
         }
     }
     $this->errors = $validator->validate();
     foreach (array('after_validation', "after_{$validation_on}") as $callback) {
         $this->invoke_callback($callback, false);
     }
     if (!$this->errors->is_empty()) {
         return false;
     }
     return true;
 }
<?php

//echo '<pre>'.print_r( wp_get_nav_menu_items( 2 ) ,1).'</pre>';
?>
<!DOCTYPE html>

<?php 
$consultants = new Consultants();
$validations = new Validations();
if (isset($_POST['submit'])) {
    if (!$validations->emailCheck($_POST['username'])) {
        $error++;
        $error_msg = 'Wrong username/password!';
    }
    if (!$consultants->loginUser($_POST['username'], $_POST['password'])) {
        $error++;
        $error_msg = 'Wrong username/password!';
        $showlogin = '******';
    }
}
?>
<html lang="en-US" class="css3transitions">
<html <?php 
language_attributes();
?>
>
<head>