public function loginAction() { if (!$this->getRequest()->isPost()) { return $this->_forward('index'); } $form = $this->getForm(); if (!$form->isValid($_POST)) { // Falla la validación; Se vuelve a mostrar el formulario $this->view->form = $form; return $this->render('form'); } $username = $form->getValue('username'); $password = $form->getValue('password'); $remember = $form->getValue('remember'); $usuario = new Application_Model_Usuario(); $result = $usuario->validarLogin($username, $password); if (!$result->isValid()) { // Autenticación fallida, imprime el porque return $this->_redirect('/'); } else { $usuario->setIdUsuario($result->getIdentity()); $mysession = new Zend_Session_Namespace('sesion'); $mysession->actividad = 'SI'; $mysession->setExpirationSeconds(60 * 5, 'actividad'); //$mysession->usuario_id = $usuario->getIdUsuario(); $mysession->usuario_nombre = $result->getIdentity(); $_SESSION['username'] = strtoupper($mysession->usuario_nombre); $aux = $usuario->getUsuariobyNombreUsuario($mysession->usuario_nombre); $mysession->usuario_id = $aux[0]['iUsuIdUsuario']; $mysession->tipo_usuario = $aux[0]['TipoUsuario_iTiUsuarioIdTipoUsuario']; $log = new Application_Model_Logs(); $log->crearLog('A'); $this->redireccionar(); } }
public function fetchByFb($id, Application_Model_Usuario $data, $attr = null) { $select = $this->getDbTable()->select(); if ($attr != null) { $select->from($this->getDbTable(), $attr); } else { $select->from($this->getDbTable()); } $select->where("FB_UID = ?", $id); $select->limit(1,0); $resultSet = $this->getDbTable()->fetchAll($select); if (0 == count($resultSet)) { return false; } foreach ($resultSet as $row) { if ($attr == null) { $data->setIdUsuario($row->ID_USUARIO); // $data->setIdTipoMoneda($row->ID_TIPO_MONEDA); } else { foreach($attr as $a) { $ta = strtolower($a); $ta = split("_", $ta); $method = "set"; foreach($ta as $pa) { $method .= ucfirst($pa); } $data->$method($row->$a); } } } }