fe1b74208906f0d0d13e4a5eed38d64679f507ef
bernd Ein paar neue Klassen

bernd authored 16 years ago

class/domains.php   1) <?php
Bernd Wurst Added license tags for CC0,...

Bernd Wurst authored 12 years ago

class/domain.php    2) /*
class/domain.php    3) This file belongs to the Webinterface of schokokeks.org Hosting
class/domain.php    4) 
Bernd Wurst Copyright year update

Bernd Wurst authored 6 years ago

class/domain.php    5) Written 2008-2018 by schokokeks.org Hosting, namely
Bernd Wurst Added license tags for CC0,...

Bernd Wurst authored 12 years ago

class/domain.php    6)   Bernd Wurst <bernd@schokokeks.org>
class/domain.php    7)   Hanno Böck <hanno@schokokeks.org>
class/domain.php    8) 
class/domain.php    9) To the extent possible under law, the author(s) have dedicated all copyright and related and neighboring rights to this software to the public domain worldwide. This software is distributed without any warranty.
class/domain.php   10) 
class/domain.php   11) You should have received a copy of the CC0 Public Domain Dedication along with this software. If not, see 
class/domain.php   12) http://creativecommons.org/publicdomain/zero/1.0/
class/domain.php   13) 
class/domain.php   14) Nevertheless, in case you use a significant part of this code, we ask (but not require, see the license) that you keep the authors' names in place and return your changes to the public. We would be especially happy if you tell us what you're going to do with this code.
class/domain.php   15) */
bernd Ein paar neue Klassen

bernd authored 16 years ago

class/domains.php  16) 
class/domains.php  17) require_once('inc/base.php');
class/domains.php  18) require_once('inc/debug.php');
class/domains.php  19) 
class/domains.php  20) 
Bernd Wurst Alte Klassen entfernt

Bernd Wurst authored 6 years ago

class/domain.php   21) class Domain
bernd Ein paar neue Klassen

bernd authored 16 years ago

class/domains.php  22) {
Bernd Wurst Alte Klassen entfernt

Bernd Wurst authored 6 years ago

class/domain.php   23)     protected $data = array();
bernd Ein paar neue Klassen

bernd authored 16 years ago

class/domains.php  24)   function __construct($init = NULL)
class/domains.php  25)   {
class/domains.php  26)     $this->setup();
class/domains.php  27)     switch (gettype($init))
class/domains.php  28)     {
class/domains.php  29)       case 'string':
class/domains.php  30)         $this->loadByName($init);
class/domains.php  31)         break;
class/domains.php  32)       case 'integer':
class/domains.php  33)         $this->loadByID($init);
class/domains.php  34)         break;
class/domains.php  35)       case 'NULL':
class/domains.php  36)         break;
class/domains.php  37)     }
class/domains.php  38)   }
class/domains.php  39) 
Bernd Wurst Alte Klassen entfernt

Bernd Wurst authored 6 years ago

class/domain.php   40)   function __set($key, $value)
bernd Ein paar neue Klassen

bernd authored 16 years ago

class/domains.php  41)   {
Bernd Wurst Alte Klassen entfernt

Bernd Wurst authored 6 years ago

class/domain.php   42)     if (array_key_exists($key, $this->data)) {
class/domain.php   43)       $this->data[$key] = $value;
class/domain.php   44)     } elseif (isset($this->$key)) {
class/domain.php   45)       $this->$key = $value;
class/domain.php   46)     } else {
class/domain.php   47)       $this->data[$key] = $value;
class/domain.php   48)     }
class/domain.php   49)   }
class/domain.php   50) 
class/domain.php   51) 
class/domain.php   52)   function __get($key)
class/domain.php   53)   {
class/domain.php   54)     if (array_key_exists($key, $this->data))
class/domain.php   55)       return $this->data[$key];
class/domain.php   56)     elseif (isset($this->$key))
class/domain.php   57)       return $this->$key;
class/domain.php   58)     // else werfe fehler
class/domain.php   59)   }
class/domain.php   60) 
class/domain.php   61) 
class/domain.php   62)   function loadByID($id)
class/domain.php   63)   {
class/domain.php   64)       $res = db_query("SELECT * FROM kundendaten.domains WHERE id=?", array($id));
class/domain.php   65)       if ($res->rowCount() < 1)
class/domain.php   66)          return false;
class/domain.php   67)       $data = $res->fetch();
class/domain.php   68)       $this->parse($data);
class/domain.php   69)   }
class/domain.php   70) 
class/domain.php   71)    function loadByName($name)
class/domain.php   72)   {
class/domain.php   73)       $res = db_query("SELECT * FROM kundendaten.domains WHERE CONCAT_WS('.', domainname, tld)=?", array($name));
class/domain.php   74)       if ($res->rowCount() < 1)
class/domain.php   75)          return false;
class/domain.php   76)       $data = $res->fetch();
class/domain.php   77)       $this->parse($data);
bernd Ein paar neue Klassen

bernd authored 16 years ago

class/domains.php  78)   }
class/domains.php  79) 
bernd Mehr config-optionen und co...

bernd authored 14 years ago

class/domain.php   80)   function ensure_customerdomain()
class/domain.php   81)   {
class/domain.php   82)     if (! $this->is_customerdomain() )
Bernd Wurst Entferne den FQDN aus Fehle...

Bernd Wurst authored 7 years ago

class/domain.php   83)       system_failure('Diese Domain gehört nicht Ihrem Kundenaccount.');
bernd Mehr config-optionen und co...

bernd authored 14 years ago

class/domain.php   84)   }
class/domain.php   85) 
class/domain.php   86)   function ensure_userdomain()
class/domain.php   87)   {
class/domain.php   88)     if (! $this->is_userdomain() )
Bernd Wurst Entferne den FQDN aus Fehle...

Bernd Wurst authored 7 years ago

class/domain.php   89)       system_failure('Diese Domain gehört nicht Ihrem Benutzeraccount.');
bernd Mehr config-optionen und co...

bernd authored 14 years ago

class/domain.php   90)   }
class/domain.php   91) 
class/domain.php   92)   function is_customerdomain()
class/domain.php   93)   {
class/domain.php   94)     if (! isset($_SESSION['customerinfo']) )
class/domain.php   95)       return false;
class/domain.php   96)     $customerno = (int) $_SESSION['customerinfo']['customerno'];
class/domain.php   97)     return ($this->kunde == $customerno);
class/domain.php   98)   }
class/domain.php   99) 
class/domain.php  100)   function is_userdomain()
class/domain.php  101)   {
class/domain.php  102)     if (! isset($_SESSION['userinfo']) )
class/domain.php  103)       return false;
class/domain.php  104)     $uid = (int) $_SESSION['userinfo']['uid'];
class/domain.php  105)     return ($this->useraccount == $uid);
class/domain.php  106)   }
class/domain.php  107) 
Bernd Wurst Alte Klassen entfernt

Bernd Wurst authored 6 years ago

class/domain.php  108)   function setup()
class/domain.php  109)   {
class/domain.php  110)     $fields = array();
class/domain.php  111)     $res = db_query("DESCRIBE kundendaten.domains");
class/domain.php  112)     while ($f = $res->fetch(PDO::FETCH_OBJ))
class/domain.php  113)     {
class/domain.php  114)       $fields[$f->Field] = $f->Default;
class/domain.php  115)     }
class/domain.php  116)     $this->data = $fields;
class/domain.php  117)     $this->data['id'] = NULL;
class/domain.php  118)   }
class/domain.php  119) 
class/domain.php  120) 
class/domain.php  121) 
bernd Ein paar neue Klassen

bernd authored 16 years ago

class/domains.php 122)   function parse($data)
class/domains.php 123)   {
bernd some updates

bernd authored 15 years ago

class/domain.php  124)     DEBUG($data);
bernd Ein paar neue Klassen

bernd authored 16 years ago

class/domains.php 125)     foreach (array_keys($this->data) as $key)
class/domains.php 126)       if (array_key_exists($key, $data))
class/domains.php 127)         $this->data[$key] = $data[$key];
class/domains.php 128)     $this->data['fqdn'] = $data['domainname'].'.'.$data['tld'];
Bernd Wurst Punycode-Konvertierung find...

Bernd Wurst authored 6 years ago

class/domain.php  129)     $this->data['punycode'] = idn_to_ascii($this->data['fqdn'], 0, INTL_IDNA_VARIANT_UTS46);
class/domain.php  130)     $this->data['is_idn'] = ($this->data['fqdn'] != $this->data['punycode']);
bernd Ein paar neue Klassen

bernd authored 16 years ago

class/domains.php 131)     $this->data['reg_date'] = $data['registrierungsdatum'];
class/domains.php 132)     $this->data['cancel_date'] = $data['kuendigungsdatum'];
class/domains.php 133)   }
class/domains.php 134) 
class/domains.php 135) }
class/domains.php 136) 
class/domains.php 137) 
class/domains.php 138) 
class/domains.php 139) 
class/domains.php 140) 
class/domains.php 141) 
class/domains.php 142) 
class/domains.php 143) function get_domain_list($customerno, $uid = NULL)
class/domains.php 144) {
class/domains.php 145)   $customerno = (int) $customerno;
class/domains.php 146)   $query = "SELECT id FROM kundendaten.domains WHERE";
class/domains.php 147)   if ($uid !== NULL)
class/domains.php 148)   {
class/domains.php 149)     $uid = (int) $uid;
bernd Domains alphabetisch sortieren

bernd authored 16 years ago

class/domain.php  150)     $query .= " useraccount={$uid}";
bernd Ein paar neue Klassen

bernd authored 16 years ago

class/domains.php 151)   }
class/domains.php 152)   else
class/domains.php 153)   {
bernd Domains alphabetisch sortieren

bernd authored 16 years ago

class/domain.php  154)     $query .= " kunde={$customerno}";
bernd Ein paar neue Klassen

bernd authored 16 years ago

class/domains.php 155)   }
bernd Domains alphabetisch sortieren

bernd authored 16 years ago

class/domain.php  156)   $query .= " ORDER BY domainname,tld";
Bernd Wurst Einige Statements auf Prepa...

Bernd Wurst authored 10 years ago

class/domain.php  157)   $result = db_query($query, array()); // FIXME Übergebe leeren array um die Warnung zu unterdrücken
bernd Ein paar neue Klassen

bernd authored 16 years ago

class/domains.php 158)   $domains = array();
Bernd Wurst Umstellung auf PDO-Datenban...

Bernd Wurst authored 10 years ago

class/domain.php  159)   DEBUG('Result set is '.$result->rowCount()." rows.<br />\n");
class/domain.php  160)   if ($result->rowCount() > 0)
class/domain.php  161)     while ($domain = $result->fetch(PDO::FETCH_OBJ))
bernd neue Bilder, mehr SSL-Zerti...

bernd authored 14 years ago

class/domain.php  162)       array_push($domains, new Domain((int) $domain->id));
bernd Ein paar neue Klassen

bernd authored 16 years ago

class/domains.php 163)   DEBUG($domains);
class/domains.php 164) 	return $domains;	
class/domains.php 165) }
class/domains.php 166) 
class/domains.php 167) 
class/domains.php 168) 
class/domains.php 169) function get_jabberable_domains()
class/domains.php 170) {
class/domains.php 171)   require_role(ROLE_CUSTOMER);
class/domains.php 172)   $customerno = (int) $_SESSION['customerinfo']['customerno'];
class/domains.php 173) 
class/domains.php 174)   $domains = get_domain_list($customerno);
class/domains.php 175)   DEBUG($domains);
class/domains.php 176)   $result = array( new Domain() );
class/domains.php 177)   $result[0]->id = 0;
bernd Mehr config-optionen und co...

bernd authored 14 years ago

class/domain.php  178)   $result[0]->fqdn = config('masterdomain');