コード例 #1
0
ファイル: ValidarController.php プロジェクト: amirws/em-1
 public function indexAction()
 {
     $this->dbAdapter = $this->getServiceLocator()->get('Zend\\Db\\Adapter');
     $auth = $this->auth;
     $id = $this->params()->fromRoute('id', 0);
     $cod = $this->params()->fromRoute('validar', 0);
     if ($this->getRequest()->isPost()) {
         $usuario = $this->getRequest()->getPost();
         $id = $usuario['id'];
         $codigo = $usuario['codigo'];
         $busqueda = new Usuario($this->dbAdapter);
         $usuario1 = $busqueda->SearchValidarUsuario($id, $codigo);
         if (count($usuario1) == 1) {
             $usuarioupdate = array('us' => $usuario['username'], 'Nombre' => $usuario['nombre'], 'direccion' => $usuario['direccion'], 'verificado' => 'si');
             $busqueda->actualizar($usuarioupdate, $id);
             $authAdapter = new AuthAdapter($this->dbAdapter, 'usuario', 'us', 'contrasena');
             /* 
              Podemos hacer lo mismo de esta manera:
              $authAdapter = new AuthAdapter($dbAdapter);
              $authAdapter
                  ->setTableName('users')
                  ->setIdentityColumn('username')
                  ->setCredentialColumn('password');
             */
             /*
             En el caso de que la contraseña en la db este cifrada
             tenemos que utilizar el mismo algoritmo de cifrado
             */
             //Establecemos como datos a autenticar los que nos llegan del formulario
             $authAdapter->setIdentity($usuario['username'])->setCredential($usuario1[0]['contrasena']);
             //Le decimos al servicio de autenticación que el adaptador
             $auth->setAdapter($authAdapter);
             //Le decimos al servicio de autenticación que lleve a cabo la identificacion
             $result = $auth->authenticate();
             //Si el resultado del login es falso, es decir no son correctas las credenciales
             if ($authAdapter->getResultRowObject() == false) {
                 //Crea un mensaje flash y redirige
                 $mensaje = "Credenciales Incorrectas. ";
             } else {
                 // Le decimos al servicio que guarde en una sesión
                 // el resultado del login cuando es correcto
                 $auth->getStorage()->write($authAdapter->getResultRowObject());
                 //Nos redirige a una pagina interior
                 return $this->redirect()->toUrl($this->getRequest()->getBaseUrl() . '/usuario/cpanel');
             }
         }
     } else {
         $busqueda = new Usuario($this->dbAdapter);
         $usuario = $busqueda->SearchValidarUsuario($id, $cod);
         $username = @$usuario[0]['us'];
         $verificado = @$usuario[0]['verificado'];
         $email = @$usuario[0]['email'];
     }
     $vista = new ViewModel(array('id' => @$usuario[0]['id_usuario'], 'codigo' => @$usuario[0]['cod'], 'verificado' => @$verificado, 'email' => @$email, 'mensaje' => @$mensaje, 'username' => @$username));
     $this->layout('layout/layout');
     return $vista;
 }
コード例 #2
0
ファイル: UsuarioController.php プロジェクト: amirws/em-1
 public function updateuserAction()
 {
     $this->dbAdapter = $this->getServiceLocator()->get('Zend\\Db\\Adapter');
     $username = htmlentities($this->request->getPost('username'));
     $email = $this->request->getPost('email');
     $nombre = htmlentities($this->request->getPost('nombre'));
     $direccion = $this->request->getPost('direccion');
     $buscar = new Usuario($this->dbAdapter);
     $username_s = $buscar->getUserUsername($username);
     foreach ($username_s as $result) {
         $username_search = $result['us'];
     }
     if (@$username_search == null) {
         if ($username == '') {
             $mensaje = "porfavor elige un nombre de usuario";
         } elseif (strlen($username) < 5) {
             $mensaje = "Nombre de usuario muy corto.";
         } elseif (!@ereg("^[a-zA-Z0-9_\\-]+\$", $username)) {
             $mensaje = "Nombre de usuario inválido, solo caracteres alfanuméricos.";
         } elseif ($nombre == '') {
             $mensaje = 'Escribe tu nombre completo. Esta información no será visible.';
         } elseif (!@ereg("^[a-zA-Z]+ [a-zA-Z]", $nombre)) {
             $mensaje = "Nombre Incompleto. Ejemplo: Juan Pérez Rodriguez";
         } elseif ($direccion == '') {
             $mensaje = "Escribe tu dirección";
         } else {
             $datos = array('nombre' => $nombre, 'direccion' => $direccion, 'us' => $username);
             $actualizar = $buscar->validarEmail($email, $datos);
             $username_s = $buscar->getUserUsername($username);
             foreach ($username_s as $result) {
                 $password = $result['contrasena'];
             }
             $this->login = new LoginService($this->dbAdapter, 'usuario', 'us', 'contrasena');
             $this->login->login($username, $password);
             $mensaje = "<span class='ui-icon ui-icon-circle-check' style='float:left; margin:0 7px 50px 0;'></span>Datos actualizados correctamente";
             $status = 200;
         }
     } elseif ($username_search != null) {
         $mensaje = "usuario ya existe. Porfavor elige otro nombre de usuario.";
     } else {
     }
     $vista = new ViewModel(array('mensaje' => $mensaje, 'status' => @$status));
     $this->layout('layout/ajax');
     return $vista;
 }
コード例 #3
0
ファイル: HtmlController.php プロジェクト: amirws/em-1
 public function indexAction()
 {
     $url = $this->params()->fromRoute('pagina', 0);
     $this->dbAdapter = $this->getServiceLocator()->get('Zend\\Db\\Adapter');
     $empresas = $this->dbAdapter->query("SELECT * FROM empresa INNER JOIN categoria ON empresa.idcategoria = categoria.idcategoria WHERE empresa.url='{$url}' limit 1", Adapter::QUERY_MODE_EXECUTE);
     $empresas = $empresas->toArray();
     $form = new Search('search');
     $municipios = new Municipio($this->dbAdapter);
     $muni = $municipios->getMunicipios();
     $datos = array();
     foreach ($muni as $row) {
         $datos[$row->url_m] = $row->nombre_m;
     }
     if (count($empresas) == 1) {
         foreach ($empresas as $empresa) {
             $nombre = $empresa['Nombre'];
             $servicios = $empresa['Servicios'];
             $categoria = $empresa['nombre_categoria'];
             $ciudad2 = $empresa['Ciudad'];
             $calle = $empresa['Direccion'];
             $numero = $empresa['Numero'];
             $colonia = $empresa['Colonia'];
             $cp = $empresa['Codigo_postal'];
             $telefono = $empresa['telefono'];
             $email = $empresa['email'];
             $web = $empresa['web'];
             $facebook = $empresa['face'];
             $twitter = $empresa['twitter'];
             $idcategoria = $empresa['idcategoria'];
             $logo = $empresa['nombre_foto'];
             $paquete = $empresa['paquete'];
             $suma_ratings = $empresa['suma_ratings'];
             $num_ratings = $empresa['num_rating'];
             $id = $empresa['id'];
             $direccion = $calle . ', ' . $numero . ', ' . $colonia . ' ' . $ciudad2 . ', ' . 'Veracruz';
             $coordenadas = @json_decode(file_get_contents(sprintf('https://maps.googleapis.com/maps/api/geocode/json?sensor=false&address=%s', urlencode($direccion))));
             @($estado = $coordenadas->status);
             if ($estado == 'OK') {
                 $lat = $coordenadas->results[0]->geometry->location->lat;
                 $long = $coordenadas->results[0]->geometry->location->lng;
                 $coordenadas = "{$lat}, {$long}";
             }
         }
         if ($paquete > 1) {
             $fotos = $this->dbAdapter->query("SELECT * FROM fotospyme WHERE id_pyme = {$id}", Adapter::QUERY_MODE_EXECUTE);
         }
         $ciudad = $this->dbAdapter->query("SELECT * FROM municipio WHERE nombre_m = '" . $ciudad2 . "' limit 1", Adapter::QUERY_MODE_EXECUTE);
         foreach ($ciudad as $ciudade) {
             $ciudad = $ciudade['nombre_m'];
             $ciudad_url = $ciudade['url_m'];
             $titulo = $nombre . ' | ' . $categoria . ' en ' . $ciudad;
         }
         $videos = $this->dbAdapter->query("SELECT * FROM videos WHERE id_empresa={$id}", Adapter::QUERY_MODE_EXECUTE);
         $videos = $videos->toArray();
         $comentarios = new Comentarios($this->dbAdapter);
         $usuario = new Usuario($this->dbAdapter);
         $comentarios = $comentarios->getComentarios($id);
         $comments = array();
         $i = 0;
         foreach ($comentarios as $row) {
             $us = $usuario->getUser($row['id_user']);
             $comments[$i]['user'] = $us;
             $comments[$i]['content'] = $row['content'];
             $comments[$i]['calificacion'] = $row['calificacion'];
             $i = $i + 1;
         }
         $layout = new ViewModel(array('pagina' => $url, 'titulo' => $titulo, 'nombre' => $nombre, 'servicios' => $servicios, 'categoria' => $categoria, 'ciudad' => $ciudad, 'ciudad_url' => $ciudad_url, 'url' => $url, 'calle' => $calle, 'numero' => $numero, 'colonia' => $colonia, 'cp' => $cp, 'telefono' => $telefono, 'email' => $email, 'web' => $web, 'facebook' => $facebook, 'twitter' => $twitter, 'idcategoria' => $idcategoria, 'logo' => $logo, 'paquete' => $paquete, 'suma_ratings' => $suma_ratings, 'total_ratings' => $num_ratings, 'fotos' => @$fotos, 'videos' => $videos, 'coordenadas' => $coordenadas, 'comentarios' => $comments, 'id_empresa' => $id, 'municipios' => $datos, 'form' => $form));
         $this->layout('layout/premium');
         return $layout;
     } else {
         $this->layout('layout/simple');
         return $this->notFoundAction();
     }
 }