Esempio n. 1
0
 /**
  * Creates a new domain under this user.
  *
  * @param string $domainName Domain name to create
  * @param float|null $bandwidthLimit Bandwidth limit in MB, or NULL to share with account
  * @param float|null $diskLimit Disk limit in MB, or NULL to share with account
  * @param bool|null $ssl Whether SSL is to be enabled, or NULL to fallback to account default
  * @param bool|null $php Whether PHP is to be enabled, or NULL to fallback to account default
  * @param bool|null $cgi Whether CGI is to be enabled, or NULL to fallback to account default
  * @return Domain Newly created domain
  */
 public function createDomain($domainName, $bandwidthLimit = null, $diskLimit = null, $ssl = null, $php = null, $cgi = null)
 {
     $domain = Domain::create($this->getSelfManagedUser(), $domainName, $bandwidthLimit, $diskLimit, $ssl, $php, $cgi);
     $this->clearCache();
     return $domain;
 }
Esempio n. 2
0
 /**
  * @depends testDefaultDomain
  */
 public function testSubdomains(Domain $domain)
 {
     // Create 2 subdomains after asserting they are the first
     $this->assertEmpty($domain->getSubdomains());
     $sub1 = $domain->createSubdomain('sub1');
     $sub2 = $domain->createSubdomain('sub2');
     $this->assertCount(2, $subdomains = $domain->getSubdomains());
     // Check properties
     $this->assertEquals($sub1->getPrefix(), $subdomains['sub1']->getPrefix());
     $this->assertEquals($sub2->getDomainName(), strval($subdomains['sub2']));
     $this->assertEquals('sub1.' . TEST_USER_DOMAIN, $sub1->getDomainName());
     $this->assertEquals(TEST_USER_DOMAIN, $sub1->getBaseDomainName());
     // Check deletion
     $sub1->delete();
     $this->assertCount(1, $domain->getSubdomains());
     $subdomains['sub2']->delete(false);
     $this->assertEmpty($domain->getSubdomains());
 }
Esempio n. 3
0
 /**
  * Creates a new forwarder.
  *
  * @param Domain $domain
  * @param string $prefix
  * @param string|string[] $recipients
  * @return Forwarder
  */
 public static function create(Domain $domain, $prefix, $recipients)
 {
     $domain->invokePost('EMAIL_FORWARDERS', 'create', ['user' => $prefix, 'email' => is_array($recipients) ? implode(',', $recipients) : $recipients]);
     return new self($prefix, $domain, $recipients);
 }
Esempio n. 4
0
 /**
  * Creates a new mailbox.
  *
  * @param Domain $domain Domain to add the account to
  * @param string $prefix Prefix for the account
  * @param string $password Password for the account
  * @param int|null $quota Quota in megabytes, or zero/null for unlimited
  * @param int|null $sendLimit Send limit, or 0 for unlimited, or null for system default
  * @return Mailbox The created mailbox
  */
 public static function create(Domain $domain, $prefix, $password, $quota = null, $sendLimit = null)
 {
     $domain->invokePost('POP', 'create', ['user' => $prefix, 'passwd' => $password, 'passwd2' => $password, 'quota' => intval($quota) ?: 0, 'limit' => isset($sendLimit) ? intval($sendLimit) ?: 0 : null]);
     return new self($prefix, $domain);
 }
Esempio n. 5
0
 /**
  * Creates a new subdomain.
  *
  * @param Domain $domain Parent domain
  * @param string $prefix Prefix of the subdomain
  * @return Subdomain The newly created object
  */
 public static function create(Domain $domain, $prefix)
 {
     $domain->invokePost('SUBDOMAIN', 'create', ['subdomain' => $prefix]);
     return new self($prefix, $domain);
 }