Exemplo n.º 1
0
 function historyRowsAction()
 {
     $q = new Am_Query($this->getDi()->emailSentTable);
     $q->leftJoin('?_admin', 'a', 't.admin_id=a.admin_id');
     $q->addField('a.login', 'admin_login');
     $q->setOrder('email_sent_id', 'DESC');
     // dirty hack
     $withWrap = (bool) $this->_request->get('_h_wrap');
     unset($_GET['_h_wrap']);
     $grid = new Am_Grid_Editable('_h', ___('E-Mails History'), $q, $this->_request, $this->view);
     $grid->setPermissionId(Am_Auth_Admin::PERM_EMAIL);
     if ($withWrap) {
         $grid->isAjax(false);
     }
     $grid->setCountPerPage(5);
     $grid->addField(new Am_Grid_Field_Date('tm_added', ___('Started')));
     $grid->addField('subject', ___('Subject'));
     $grid->addField('admin_login', ___('Sender'));
     $grid->addField('count_users', ___('Total'));
     $grid->addField('sent_users', ___('Sent'));
     $grid->addField('desc_users', ___('To'))->setAttrs(array('class' => 'break'));
     $grid->actionsClear();
     $grid->actionAdd(new Am_Grid_Action_Url('resend', ___('Resend'), REL_ROOT_URL . "/admin-email?resend_id=__ID__"))->setTarget('_top');
     $grid->actionAdd(new Am_Grid_Action_Url('continue', ___('Continue'), REL_ROOT_URL . "/admin-email/send?queue_id=__ID__"))->setTarget('_top')->setIsAvailableCallback(array($this, 'needContinueLink'));
     if ($this->getDi()->authAdmin->getUser()->isSuper()) {
         $grid->actionAdd(new Am_Grid_Action_Delete());
     }
     $grid->run($this->getResponse());
 }