summaryrefslogtreecommitdiffstats
path: root/apps/admin/modules/mailbox/actions
diff options
context:
space:
mode:
Diffstat (limited to 'apps/admin/modules/mailbox/actions')
-rw-r--r--apps/admin/modules/mailbox/actions/actions.class.php56
1 files changed, 56 insertions, 0 deletions
diff --git a/apps/admin/modules/mailbox/actions/actions.class.php b/apps/admin/modules/mailbox/actions/actions.class.php
new file mode 100644
index 0000000..566c69f
--- /dev/null
+++ b/apps/admin/modules/mailbox/actions/actions.class.php
@@ -0,0 +1,56 @@
+<?php
+
+/**
+ * mailbox actions.
+ *
+ * @package mailadmin
+ * @subpackage mailbox
+ * @author Your name here
+ * @version SVN: $Id: actions.class.php 2288 2006-10-02 15:22:13Z fabien $
+ */
+class mailboxActions extends automailboxActions
+{
+ public function executeList()
+ {
+ // pageination
+ if($this->hasRequestParameter("max_per_page"))
+ $this->getUser()->setResultsPerPage($this->getRequestParameter("max_per_page"));
+
+ return parent::executeList();
+ }
+
+ public function executeCreate()
+ {
+ $this->setTemplate("edit");
+ $result = $this->executeEdit();
+
+ if($this->getRequest()->getMethod() == sfRequest::GET)
+ {
+ if(!$this->hasRequestParameter("id"))
+ {
+ $this->updateMailboxFromRequest();
+ }
+
+ // reset is needed as updateMailboxFromRequest() deactivates
+ $this->mailbox->setActive(true);
+ }
+ return $result;
+ }
+
+ public function handleErrorCreate()
+ {
+ $this->setTemplate("edit");
+ return $this->handleErrorEdit();
+ }
+
+ public function executeCreateAddress()
+ {
+ $mailbox = MailboxPeer::retrieveByPk($this->getRequestParameter('id'));
+ $this->redirect("address/create?address[mailbox_id]=".$this->getRequestParameter('id')."&address[domain_id]=".$mailbox->getDomainId());
+ }
+
+ public function executeViewAddresses()
+ {
+ $this->redirect("address/list?filter=filter&filters[mailbox_id]=".$this->getRequestParameter('id'));
+ }
+}