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 logout() { $userProfileNamespace = new Zend_Session_Namespace('sesion'); $userProfileNamespace->unLock(); $log = new Application_Model_Logs(); $log->crearLog('B'); Zend_Session::destroy(true); }
/** * Удаление сайта удаляет все что с ним связано вьюху не используем сразу * удаление и редирект на индекс */ public function deleteAction() { // модели $mSite = new Application_Model_Sites(); $mLogs = new Application_Model_Logs(); $mMaps = new Application_Model_Maps(); // данные $id_site = $this->_getParam('id'); $arrMaps = $mMaps->getMaps($id_site); // действия удаления foreach ($arrMaps as $value) { $mMaps->deleteMap($value['id_map']); } $mSite->deleteSite($id_site); $mLogs->deleteLogs($id_site); // редирект $this->_redirect('/sites/'); }
public function scanSites($sites, $sendMail = false) { ini_set('display_errors', 0); $mdlLogs = new Application_Model_Logs(); $urlsStatus = array(); foreach ($sites as $site) { $arr = array(); $status = 0; if (!empty($site['url'])) { $response = $this->curlResponse($site['url']); $arr = $response; //$this->get_headers_from_curl_response($response); $parseRedirect = $this->parseRedirect($arr); if ($parseRedirect) { $this->update(array('url' => $parseRedirect), 'id_site = ' . (int) $site['id_site']); } if ($arr['http_code']) { /* $arrCode = explode(' ', $arr['http_code']); if ($arrCode[1]) { $status = $arrCode[1]; } } else { $status = 0;*/ $status = $arr['http_code']; } $status = $arr['http_code']; $id_log = $mdlLogs->insert(array('id_site' => $site['id_site'], "status" => $status)); $urlsStatus[] = array('id_site' => $site['id_site'], "name" => $site['name'], "url" => $site['url'], "status" => $status); if ($sendMail) { $lastLog = $mdlLogs->getLastLogSite($site['id_site']); if ((int) $status !== (int) $lastLog[0]['status'] && $mm) { $message = "<p>Статус сайта изменился, новый статус" . "{$status}, старый {$lastLog[0]['status']}</p>"; $mm = false; $mdlLogs->sendEmail($message); } } } } return $urlsStatus; }