Example #1
0
 public static function getDomainId()
 {
     if (!self::$domain_id) {
         $domain_id = waRequest::get('domain_id');
         $domains = self::getDomains(true);
         if (is_numeric($domain_id)) {
             self::$domain_id = (int) $domain_id;
         } else {
             foreach ($domains as $d_id => $d) {
                 if ($d['name'] == $domain_id) {
                     self::$domain_id = $d_id;
                     break;
                 }
             }
         }
         if (!self::$domain_id) {
             self::$domain_id = wa()->getUser()->getSettings('site', 'last_domain_id');
             if (!isset($domains[self::$domain_id])) {
                 self::$domain_id = null;
             }
         }
         if (!self::$domain_id) {
             self::$domain_id = current(array_keys($domains));
         }
         if (self::$domain_id && !isset($domains[self::$domain_id])) {
             throw new waException('Domain not found', 404);
         }
     }
     return self::$domain_id;
 }