summaryrefslogtreecommitdiffstats
path: root/apps/admin/modules/domain/actions/actions.class.php
blob: bd1dba313e94772e84b2aaa1bdb973c0c3740fff (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
<?php

/**
 * domain actions.
 *
 * @package    mailadmin
 * @subpackage domain
 * @author     Your name here
 * @version    SVN: $Id: actions.class.php 2288 2006-10-02 15:22:13Z fabien $
 */
class domainActions extends autodomainActions
{
	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");
		return $this->executeEdit();
	}

	public function handleErrorCreate()
	{
		$this->setTemplate("edit");
		return $this->handleErrorEdit();
	}

	public function executeCreateMailbox()
	{
		$domain = DomainPeer::retrieveByPk($this->getRequestParameter('id'));
		$this->redirect("mailbox/create?mailbox[domain_id]=".$domain->getId()."&mailbox[name]=".sprintf("%s%d", $domain->getMailboxPrefix(), $domain->getMailboxCount()+1)."&mailbox[max_quota]=".$domain->getDefaultMailboxQuota() );
	}

	public function executeViewMailboxes()
	{
		$this->redirect("mailbox/list?filter=filter&filters[domain_id]=".$this->getRequestParameter('id'));
	}

	protected function updateDomainFromRequest()
	{
		parent::updateDomainFromRequest();
		
		if ($this->domain->getCreatorId() == NULL)
		{
			$this->domain->setCreatorId($this->getUser()->getId());
		}
	}
}