/** * Called before an action is dispatched by Zend_Controller_Dispatcher. * * This callback allows for proxy or filter behavior. By altering the * request and resetting its dispatched flag (via * {@link Zend_Controller_Request_Abstract::setDispatched() setDispatched(false)}), * the current action may be skipped. * * @param Zend_Controller_Request_Abstract $request * @return void */ public function preDispatch(Zend_Controller_Request_Abstract $request) { $oAuth = Zend_Auth::getInstance(); $oAcl = $this->getAcl(); // Default role $sRole = 'all'; if ($oAuth->hasIdentity()) { $oIdentity = $oAuth->getIdentity(); $sRole = isset($oIdentity->sRole) ? $oIdentity->sRole : 'identify'; } $sModule = $request->module; $sController = $request->controller; $sAction = $request->action; $sResource = $sController . ':' . $sAction; if ($oAcl->has($sResource)) { if (!$oAcl->isAllowed('all', $sResource)) { // Access is not allowed if (!$oAcl->isAllowed($sRole, $sResource)) { //$flashMessenger = new Zend_Controller_Action_Helper_FlashMessenger(); //$flashMessenger->addMessage('Acesso negado'); $request->setModuleName('default'); $request->setControllerName('index'); $request->setActionName('index'); } } } else { $flashMessenger = new Zend_Controller_Action_Helper_FlashMessenger(); $flashMessenger->addMessage('Acesso negado'); $request->setModuleName('default'); $request->setControllerName('index'); $request->setActionName('index'); } }
public function indexAction() { $toolbar = new Statistics_Form_Toolbar(); $options = $this->_helper->Options->getOptions($toolbar, $this->_user['clientid']); $params = $this->_helper->Params->getParams($toolbar, $options); $charts = new Statistics_Model_Charts(); $charts->createCharts(13, 500, 300, $this->view->translate('STATISTICS_UNCATEGORIZED'), $params, $options); $quotesDb = new Sales_Model_DbTable_Quote(); $quotes = $quotesDb->fetchAll($quotesDb->select()->where('quoteid = ?', 0)->order('id desc')->limit(5)); $this->view->quotes = $quotes; $salesordersDb = new Sales_Model_DbTable_Salesorder(); $salesorders = $salesordersDb->fetchAll($salesordersDb->select()->where('salesorderid = ?', 0)->order('id desc')->limit(5)); $this->view->salesorders = $salesorders; $invoicesDb = new Sales_Model_DbTable_Invoice(); $invoices = $invoicesDb->fetchAll($invoicesDb->select()->where('invoiceid = ?', 0)->order('id desc')->limit(5)); $this->view->invoices = $invoices; $quoterequestsDb = new Purchases_Model_DbTable_Quoterequest(); $quoterequests = $quoterequestsDb->fetchAll($quoterequestsDb->select()->where('quoterequestid = ?', 0)->order('id desc')->limit(5)); $this->view->quoterequests = $quoterequests; $purchaseordersDb = new Purchases_Model_DbTable_Purchaseorder(); $purchaseorders = $purchaseordersDb->fetchAll($purchaseordersDb->select()->where('purchaseorderid = ?', 0)->order('id desc')->limit(5)); $this->view->purchaseorders = $purchaseorders; $this->view->options = $options; $this->view->toolbar = new Application_Form_Toolbar(); $this->view->messages = $this->_flashMessenger->getMessages(); }
public function checkAuth() { if (!$this->isPublic() && !Zend_Auth::getInstance()->hasIdentity()) { $this->_flash->addMessage('You must be logged in'); $this->_redirector->gotoSimple('login', 'account'); } }
/** * Uklada stavove zpravy * * @param string $message Zprava * @param const $status Status * @param bool $nextRequest Zobrazit hned, nebo az pri dalsim requestu */ protected function _flash($message, $status, $nextRequest = true) { if ($nextRequest == false) { $this->view->flash = array('message' => $message, 'status' => $status); } else { $this->_flashMessenger = $this->_helper->getHelper('FlashMessenger'); $this->_flashMessenger->addMessage(array('message' => $message, 'status' => $status)); } }
public function testClearMessages() { $this->helper->addMessage('foo'); $this->helper->addMessage('bar'); $this->assertTrue($this->helper->hasMessages()); $this->assertEquals(2, count($this->helper)); $this->helper->clearMessages(); $this->assertFalse($this->helper->hasMessages()); $this->assertEquals(0, count($this->helper)); }
public function authenticateAction() { try { $user = Pocs_User::login($this->getRequest()->getParam('un'), $this->getRequest()->getParam('pw'), $this->_getAuth(), $this->_getAcl()); } catch (Exception $e) { $this->_flashMessenger->addMessage($e->getMessage()); $this->_helper->redirector('index', 'login'); } $this->_flashMessenger->addMessage(Zend_Debug::dump($user, 'Authenticated User', false)); //TODO: Redirect somewhere useful.. $this->_helper->redirector('index', 'login'); }
public function searchAction() { $this->_helper->viewRenderer->setRender('index'); $this->_helper->getHelper('layout')->disableLayout(); $lenght = $this->_getParam('lenght', 25); $toolbar = new Statistics_Form_Toolbar(); $options = $this->_helper->Options->getOptions($toolbar, $this->_user['clientid']); $params = $this->_helper->Params->getParams($toolbar, $options); $chart = new Statistics_Model_Charts(); $chart->createCharts($lenght, 1000, 400, $this->view->translate("STATISTICS_UNCATEGORIZED"), $params, $options); $this->view->lenght = $lenght; $this->view->options = $options; $this->view->toolbar = $toolbar; $this->view->messages = $this->_flashMessenger->getMessages(); }
/** * Agrega un mensaje * * @param string $message Mensaje a mostrar en pantalla * @param string $level Nivel del mensaje * * @return void */ public function addMessage($message, $level = self::INFO) { $msg = new stdClass(); $msg->message = $message; $msg->level = $level; parent::addMessage($msg); }
/** * addMessage() - Add a message to flash message * * @param string $message * @param string $namespace * @return LoSo_Zend_Controller_Action_Helper_FlashMessenger Provides a fluent interface */ public function addMessage($message, $namespace = null) { if (!empty($namespace)) { $this->setNamespace($namespace); } return parent::addMessage($message); }
/** * Events after the controller dispatching */ public function postDispatch() { $infoProfiler = ''; //------------------------- $request = $this->getRequest(); if ($this->_breadcrumbs) { $this->view->breadcrumbs = $this->_breadcrumbs; $this->view->title = $this->_breadcrumbs->getTitle(); } //Передадим признак Ajax запроса $this->view->isAjaxRequest = $this->_isAjaxRequest; //Передадим сообщения в шаблоны $this->view->messages = $this->_flashMessenger->getMessages(); // Запомним время выполения цикла диспетчеризации $params = $request->getParams(); foreach ($params as $key => $value) { if (!is_string($value)) { continue; } if ($infoProfiler) { $infoProfiler .= "{$key} = {$value}<br>"; } else { $infoProfiler .= $this->Translate("Время выполнения запроса") . ":<br />{$key} = {$value}<br />"; } } $infoProfiler .= "<br />" . $this->Translate("Равно") . " = "; Default_Plugin_SysBox::profilerTime2Registry($this->_startTimeDispatch, $infoProfiler); }
public function testDirectProxiesToAddMessage() { $this->markTestSkipped(); $this->helper->direct('foo'); $this->assertTrue($this->helper->hasMessages()); $this->assertEquals(1, count($this->helper)); }
public function verifyEmailAction() { $user_id = (int) $this->getRequest()->getParam('id'); $guid = (string) $this->getRequest()->getParam('guid'); if (!empty($user_id) && !empty($guid)) { $model = new Model_User(); $model = $model->find($user_id); if ($model->getEnabled()) { $this->_flashMessenger->addMessage("Your account has already been activated, you can now Login."); $this->_redirect('/user/login/'); return; } if ($guid == hash('sha1', $model->getSalt() . $model->getId() . $model->getPassword())) { $model->setEnabled(1); $model->setEmailVerified(1); $model->save(); $this->user = $model; $this->_flashMessenger->addMessage("Thanks for activating your account, you can now Login."); $this->_redirect('/user/login/'); return; } else { $this->_redirect('/user/register/'); return; } } else { $this->_redirect('/'); } }
/** * addMessage() - Add a message to flash message * * @param string $message * @return Zend_Controller_Action_Helper_FlashMessenger Provides a fluent interface */ public function addMessage($message, $type = self::MSG_SUCCESS) { $msg = new stdClass(); $msg->type = $type; $msg->message = $message; return parent::addMessage($msg); }
public function addAction() { $form = new Front_Form_Contact(); if ($this->_request->isPost()) { $data = $this->_request->getPost(); if ($form->isValid($data)) { $dataFiltrees = $form->getValues(); $contact = new Application_Model_Contact(); $contact->setPrenom($dataFiltrees['prenom'])->setNom($dataFiltrees['nom'])->setEmail($dataFiltrees['email'])->setTelephone($dataFiltrees['telephone']); $this->mapper->insert($contact); $this->_flashMessenger->addMessage('Le contact ' . $contact->getPrenom() . ' a bien été créé'); $this->_redirector->gotoRouteAndExit(['controller' => 'contact'], null, true); } } $this->view->contactForm = $form; }
/** * View feed information * * @return void */ public function viewAction() { //get flash messages $this->view->messages = $this->_flashMessenger->getMessages(); $id = $this->getRequest()->getParam('id'); //get feedinfo $feeds = new Feeds(); $this->view->feed = $feeds->getBySlug($id); if (!$this->view->feed) { throw new Zend_Exception('Feed doesn\'t exist'); } $this->view->feed->views++; $this->view->feed->save(); //get posts $limit = 5; $page = $this->getRequest()->getParam('page') ? $this->getRequest()->getParam('page') : 1; $posts = new Posts(); $this->view->posts = $posts->getByFeedId($this->view->feed->id, $page, $limit); $total = $posts->getByFeedId($this->view->feed->id, $page, 0, true)->total; $this->view->paginator = Zend_Paginator::factory($total); $this->view->paginator->setCurrentPageNumber($page); $this->view->paginator->setItemCountPerPage($limit); $this->view->keywords = implode('', array('ifphp', 'news aggragator', 'support,' . $this->view->feed->title)); $this->view->description = 'ifPHP, The PHP news Aggragator: ' . $this->view->feed->description; }
public function deleteAction() { $this->_helper->viewRenderer->setNoRender(); $this->_helper->getHelper('layout')->disableLayout(); if ($this->getRequest()->isPost()) { $id = $this->_getParam('id', 0); $contactDb = new Contacts_Model_DbTable_Contact(); $contactDb->deleteContact($id); $phoneDb = new Contacts_Model_DbTable_Phone(); $phones = $phoneDb->getPhone($id); foreach ($phones as $phone) { $phoneDb->deletePhone($phone['id']); } $emailDb = new Contacts_Model_DbTable_Email(); $emails = $emailDb->getEmail($id); foreach ($emails as $email) { $emailDb->deleteEmail($email['id']); } $internetDb = new Contacts_Model_DbTable_Internet(); $internets = $internetDb->getInternet($id); foreach ($internets as $internet) { $internetDb->deleteInternet($internet['id']); } } $this->_flashMessenger->addMessage('MESSAGES_SUCCESFULLY_DELETED'); }
/** * The curent flash messenger messages * * @return array */ protected function getMessages() { if (!$this->_messenger instanceof \MUtil_Controller_Action_Helper_FlashMessenger) { $this->_messenger = new \MUtil_Controller_Action_Helper_FlashMessenger(); } return $this->_messenger->getMessagesOnly(); }
/** * Add a message with a status * @param string|array $message The message to add. You can group Messages in one status by passing them as an Array * @param string $status The status to add to the message, one of: success, info, warning or danger * @param string $namespace The messages namespace */ public function addMessage($message, $status = null, $namespace = null) { if (!$status) { $status = $this->_defaultStatus; } $message = array($message, $status); parent::addMessage($message, $namespace); return $this; }
/** * __construct() - Instance constructor, needed to get iterators, etc * * @param string $namespace * @return void */ public function __construct() { if (!self::$_session instanceof Zend_Session_Namespace) { self::$_session = new Zend_Session_Namespace($this->getName()); foreach (self::$_session as $namespace => $messages) { self::$_messages[$namespace] = $messages; unset(self::$_session->{$namespace}); } } }
/** * getCurrentMessages() - get messages that have been added to the current * namespace within this request * * @return array */ public function getCurrentMessages($type = null) { if ($type === null) { return parent::getCurrentMessages(); } if (isset(self::$_session->{$this->_namespace}[$type])) { return self::$_session->{$this->_namespace}[$type]; } return array(); }
/** * Checks the parameters that are required * * @param array $requiredParams * @return boolean */ public function checkRequiredParams(array $requiredParams) { $return = true; foreach ($requiredParams as $param) { if (!$this->_getParam($param)) { $this->_flashMessenger->addMessage('Unable to required field ' . $param); $return = false; } } return $return; }
public function deleteAction() { $this->_helper->viewRenderer->setNoRender(); $this->_helper->getHelper('layout')->disableLayout(); if ($this->getRequest()->isPost()) { $id = $this->_getParam('id', 0); $clientDb = new Admin_Model_DbTable_Client(); $clientDb->deleteClient($id); } $this->_flashMessenger->addMessage('MESSAGES_SUCCESFULLY_DELETED'); }
public function deleteAction() { $this->_helper->viewRenderer->setNoRender(); $this->_helper->getHelper('layout')->disableLayout(); if ($this->getRequest()->isPost()) { $id = $this->_getParam('id', 0); $categoryDb = new Admin_Model_DbTable_Category(); $category = $categoryDb->getCategory($id); $categoryDb->deleteCategory($id); $this->setOrdering($category['clientid'], $category['type'], $category['parentid']); } $this->_flashMessenger->addMessage('MESSAGES_SUCCESFULLY_DELETED'); }
public function editAction() { header('Content-type: application/json'); $this->_helper->viewRenderer->setNoRender(); $this->_helper->getHelper('layout')->disableLayout(); $request = $this->getRequest(); $id = $this->_getParam('id', 0); $activeTab = $request->getCookie('tab', null); $configDb = new Admin_Model_DbTable_Config(); $config = $configDb->getConfig($id); if ($this->isLocked($config['locked'], $config['lockedtime'])) { if ($request->isPost()) { header('Content-type: application/json'); $this->_helper->viewRenderer->setNoRender(); $this->_helper->getHelper('layout')->disableLayout(); echo Zend_Json::encode(array('message' => $this->view->translate('MESSAGES_LOCKED'))); } else { $this->_flashMessenger->addMessage('MESSAGES_LOCKED'); $this->_helper->redirector('index'); } } else { $configDb->lock($id, $this->_user['id'], $this->_date); $form = new Admin_Form_Config(); if ($request->isPost()) { $data = $request->getPost(); $element = key($data); if (isset($form->{$element}) && $form->isValidPartial($data)) { $data['modified'] = $this->_date; $data['modifiedby'] = $this->_user['id']; $configDb = new Admin_Model_DbTable_Config(); $configDb->updateConfig($id, $data); echo Zend_Json::encode($configDb->getConfig($id)); } else { echo Zend_Json::encode(array('message' => $this->view->translate('MESSAGES_FORM_IS_INVALID'))); } } } $this->view->messages = $this->_flashMessenger->getMessages(); }
/** * (non-PHPdoc) * @see Zend_Controller_Action::init() */ public function init() { parent::init(); // Load the module, controller and action names $this->view->module_name = $this->_moduleName = ucfirst($this->getRequest()->getModuleName()); $this->view->controller_name = $this->_controllerName = ucfirst($this->getRequest()->getControllerName()); $this->view->action_name = $this->_actionName = ucfirst($this->getRequest()->getActionName()); // Load the translation name $this->view->translation_name = $this->_translationName = $this->_moduleName . $this->_controllerName . $this->_actionName; // Load the log $this->_log = $this->getInvokeArg('bootstrap')->log; // Load the flashmessenger $this->_flashMessenger = $this->_helper->getHelper('FlashMessenger'); $this->view->messages = $this->_flashMessenger->getMessages(); // Load the user $auth = Zend_Auth::getInstance(); if ($auth->hasIdentity()) { $this->_user = $auth->getIdentity(); if ($this->_user->isConnected()) { $this->_user->connect(); } } }
/** * Action - message * message display * * @return void */ public function messageAction() { $params = $this->_getAllParams(); if (isset($params['message'])) { $this->view->class_message = $params['class_message']; $this->view->message = $params['message']; } if ($this->_flashMessenger->hasMessages()) { $this->view->class_message = 'warning'; $this->view->message = $this->_flashMessenger->getMessages(); } //Добавим путь к действию $this->_breadcrumbs->addStep('Ошибка'); }
protected function search($params, $categories) { $quotesDb = new Sales_Model_DbTable_Quote(); $columns = array('q.title', 'q.quoteid', 'q.contactid', 'q.billingname1', 'q.billingname2', 'q.billingdepartment', 'q.billingstreet', 'q.billingpostcode', 'q.billingcity', 'q.shippingname1', 'q.shippingname2', 'q.shippingdepartment', 'q.shippingstreet', 'q.shippingpostcode', 'q.shippingcity'); $query = ''; $schema = 'q'; if ($params['keyword']) { $query = $this->_helper->Query->getQueryKeyword($query, $params['keyword'], $columns); } if ($params['catid']) { $query = $this->_helper->Query->getQueryCategory($query, $params['catid'], $categories, 'c'); } if ($params['states']) { $query = $this->_helper->Query->getQueryStates($query, $params['states'], $schema); } if ($params['daterange']) { $query = $this->_helper->Query->getQueryDaterange($query, $params['from'], $params['to'], $schema); } if ($params['country']) { $query = $this->_helper->Query->getQueryCountry($query, $params['country'], $schema); } if ($params['catid']) { $quotes = $quotesDb->fetchAll($quotesDb->select()->setIntegrityCheck(false)->from(array($schema => 'quote'))->join(array('c' => 'contact'), $schema . '.contactid = c.id', array('catid'))->group($schema . '.id')->where($query ? $query : 1)->order($params['order'] . ' ' . $params['sort'])->limit($params['limit'])); if (!count($quotes) && $params['keyword']) { $this->_flashMessenger->addMessage('MESSAGES_SEARCH_RETURNED_NO_RESULTS'); $query = $this->_helper->Query->getQueryKeyword('', $params['keyword'], $columns); $quotes = $quotesDb->fetchAll($quotesDb->select()->setIntegrityCheck(false)->from(array($schema => 'quote'))->join(array('c' => 'contact'), $schema . '.contactid = c.id', array('catid'))->group($schema . '.id')->where($query ? $query : 1)->order($params['order'] . ' ' . $params['sort'])->limit($params['limit'])); } } else { $quotes = $quotesDb->fetchAll($quotesDb->select()->setIntegrityCheck(false)->from(array($schema => 'quote'))->group($schema . '.id')->where($query ? $query : 1)->order($params['order'] . ' ' . $params['sort'])->limit($params['limit'])); if (!count($quotes) && $params['keyword']) { $this->_flashMessenger->addMessage('MESSAGES_SEARCH_RETURNED_NO_RESULTS'); $query = $this->_helper->Query->getQueryKeyword('', $params['keyword'], $columns); $quotes = $quotesDb->fetchAll($quotesDb->select()->setIntegrityCheck(false)->from(array($schema => 'quote'))->group($schema . '.id')->where($query ? $query : 1)->order($params['order'] . ' ' . $params['sort'])->limit($params['limit'])); } } $quotes->subtotal = 0; $quotes->total = 0; foreach ($quotes as $quote) { $quotes->subtotal += $quote->subtotal; $quotes->total += $quote->total; $quote->subtotal = $this->_currency->toCurrency($quote->subtotal); $quote->taxes = $this->_currency->toCurrency($quote->taxes); $quote->total = $this->_currency->toCurrency($quote->total); } $quotes->subtotal = $this->_currency->toCurrency($quotes->subtotal); $quotes->total = $this->_currency->toCurrency($quotes->total); return $quotes; }
/** * Create subscription page * * If selected free or trial plan - changes immediately * If selected paid plan user allow select payment method (PayPAl or another payment system) and pay subscription */ public function createAction() { $planId = $this->_getParam('id'); if ($this->_request->isPost() && $planId) { //Get user $identity = Zend_Auth::getInstance()->getIdentity(); $userId = $identity->id; //Get plan $subscriptionPlansTable = new Subscriptions_Model_SubscriptionPlans_Table(); $subscriptionPlan = $subscriptionPlansTable->getById($planId); //Not free subscription if ($subscriptionPlan->price > 0) { //Create order $orderManager = new Payments_Model_Order_Manager(); $order = $orderManager->createOrder($userId, $subscriptionPlan->price); $this->view->orderId = $order->id; $this->view->subscriptionPlan = $subscriptionPlan; $subscriptionManger = new Subscriptions_Model_Subscription_Manager(); //Create paid subscription $subscriptionManger->createPaidSubscription($userId, $subscriptionPlan->id, $order->id); //'type'-orderId-userId-planId $this->view->paypalCustom = Subscriptions_Model_Subscription::ORDER_TYPE_SUBSCRIPTION . '-' . $order->id; } else { //Free subscription try { //Not allow renewal Trial subscription if ($subscriptionPlan->type === Subscriptions_Model_SubscriptionPlan::PLAN_TYPE_TRIAL) { $subscriptionTable = new Subscriptions_Model_Subscription_Table(); $select = $subscriptionTable->select()->from(array('subscriptions'))->where('userId =?', $userId)->where('subscriptionPlanId = ?', $subscriptionPlan->id); if ($subscriptionTable->fetchRow($select)) { //Found old trial plan throw new Zend_Controller_Action_Exception('You can not change to this plan'); } } $subscriptionManger = new Subscriptions_Model_Subscription_Manager(); //Create subscription $subscriptionManger->createFreeSubscription($userId, $planId); //Redirect to Thank you page $this->redirect('/subscriptions/index/complete'); } catch (Zend_Controller_Action_Exception $ex) { $this->_flashMessenger->addMessage($ex->getMessage()); $this->redirect('/subscriptions'); } } } else { $this->redirect('/subscriptions'); } }
/** * Agrega un mensaje * * @param string $message Mensaje a mostrar en pantalla * @param string $level Nivel del mensaje * * @return void */ public function addMessage($message, $level = self::INFO, $type = 'FLASH') { $msg = new stdClass(); $msg->message = $message; $msg->level = $level; if ($type == 'TEMP') { $tempFMessages = array(); if (Zend_Registry::isRegistered('Temp_FMessages')) { $tempFMessages = Zend_Registry::get('Temp_FMessages'); } $tempFMessages[] = $msg; Zend_Registry::set('Temp_FMessages', $tempFMessages); } else { parent::addMessage($msg); } }
public function deleteAction() { $model = $this->getModel(); $id = $this->_getParam('id'); $this->_preDelete(array('id' => $id)); $result = $model->find($id); if ($result->count() !== 1) { return $this->_redirect($this->_helper->url('index')); } $result->current()->delete(); if ($this->_getFlashMessage('delete')) { $this->_flashMessenger->addMessage($this->_getFlashMessage('delete')); } $this->_postDelete(); return $this->_redirect($this->_helper->url('index')); }