/** * Shows the actions for the selected trigger * */ public function detailsAction() { $this->view->acl = array('add' => $this->_helper->hasAccess('add'), 'copy' => $this->_helper->hasAccess('copy'), 'edit' => $this->_helper->hasAccess('edit'), 'delete' => $this->_helper->hasAccess('delete'), 'changeStatus' => $this->_helper->hasAccess('change-status')); $eventKey = $this->_getParam('eventKey', null); if (is_null($eventKey)) { throw new Ot_Exception_Input('msg-error-triggerIdNotFound'); } $register = new Ot_Trigger_EventRegister(); $thisTriggerEvent = $register->getTriggerEvent($eventKey); if (is_null($thisTriggerEvent)) { throw new Ot_Exception_Data('msg-error-noTrigger'); } $action = new Ot_Model_DbTable_TriggerAction(); $where = $action->getAdapter()->quoteInto('eventKey = ?', $thisTriggerEvent->getKey()); $actions = $action->fetchAll($where)->toArray(); $tpr = new Ot_Trigger_ActionTypeRegister(); $actionTypes = $tpr->getTriggerActionTypes(); if (count($actionTypes) == 0) { throw new Ot_Exception_Data('model-trigger-action:noHelpersDefined'); } $actionsWithActionTypes = array(); foreach ($actions as $a) { if (isset($actionTypes[$a['actionKey']])) { $a['actionType'] = $actionTypes[$a['actionKey']]; } $actionsWithActionTypes[] = $a; } $this->_helper->pageTitle('ot-trigger-details:title', $thisTriggerEvent->getName()); $this->view->assign(array('actions' => $actionsWithActionTypes, 'actionTypes' => $actionTypes, 'triggerEvent' => $thisTriggerEvent)); }
/** * Display a list of all users in the system. * */ public function indexAction() { $filterStatus = $this->_getParam('status', 'any'); $filterTrigger = $this->_getParam('trigger', 'any'); $filterSort = $this->_getParam('sort', 'queueDt'); $filterDirection = $this->_getParam('direction', 'asc'); $form = new Ot_Form_EmailqueueSearch(); $form->populate($_GET); $eq = new Ot_Model_DbTable_EmailQueue(); $select = new Zend_Db_Table_Select($eq); if ($filterStatus != '' && $filterStatus != 'any') { $select->where('status = ?', $filterStatus); } if ($filterTrigger != '' && $filterTrigger != 'any') { $select->where('attributeName = ?', 'triggerActionId'); $select->where('attributeId = ?', $filterTrigger); } $select->order($filterSort . ' ' . $filterDirection); $adapter = new Zend_Paginator_Adapter_DbSelect($select); $paginator = new Zend_Paginator($adapter); $paginator->setCurrentPageNumber($this->_getParam('page', 1)); $ta = new Ot_Model_DbTable_TriggerAction(); $actions = $ta->fetchAll(); $triggers = array(); foreach ($actions as $a) { $triggers[$a->triggerActionId] = $a; } $this->_helper->pageTitle('ot-emailqueue-index:title'); $this->view->assign(array('paginator' => $paginator, 'form' => $form, 'interface' => true, 'sort' => $filterSort, 'direction' => $filterDirection, 'triggers' => $triggers)); }
public function __construct($options = array()) { parent::__construct($options); $this->setAttrib('id', 'emailqueueSearchForm')->setDecorators(array('FormElements', array('HtmlTag', array('tag' => 'div', 'class' => 'well')), 'Form'))->setMethod(Zend_Form::METHOD_GET); $status = $this->createElement('select', 'status', array('label' => 'Sending Status:')); $status->addMultiOptions(array('any' => 'Any Status', 'waiting' => 'Waiting', 'sent' => 'Sent', 'error' => 'Error')); $trigger = $this->createElement('select', 'trigger', array('label' => 'From Trigger:')); $trigger->addMultiOption('any', 'Any Trigger'); $ta = new Ot_Model_DbTable_TriggerAction(); $actions = $ta->fetchAll(null, array('eventKey', 'name')); foreach ($actions as $a) { $trigger->addMultiOption($a->triggerActionId, $a->name); } $this->addElements(array($status, $trigger)); $this->setElementDecorators(array('ViewHelper', array(array('wrapperField' => 'HtmlTag'), array('tag' => 'div', 'class' => 'elm')), array('Errors', array('placement' => 'append')), array('Label', array('placement' => 'prepend')), array(array('wrapperAll' => 'HtmlTag'), array('tag' => 'div', 'class' => 'criteria')))); $sort = $this->createElement('hidden', 'sort'); $sort->setDecorators(array('ViewHelper')); $direction = $this->createElement('hidden', 'direction'); $direction->setDecorators(array('ViewHelper')); $submit = $this->createElement('submit', 'submitButton', array('label' => 'Filter Results')); $submit->setAttrib('class', 'btn btn-danger'); $submit->setDecorators(array(array('ViewHelper', array('helper' => 'formSubmit')), array(array('wrapperAll' => 'HtmlTag'), array('tag' => 'div', 'class' => 'submit')), array('HtmlTag', array('tag' => 'div', 'class' => 'clearfix')))); $this->addElements(array($submit, $sort, $direction)); return $this; }