X-Git-Url: http://git.polytechnique.org/?a=blobdiff_plain;f=classes%2Fplatalglobals.php.in;h=774a809a9a5570edab7d40f8d622af6ea7f41739;hb=f6e35ff3fefafe908e1675690340ab93265192a0;hp=409b68c92356a2ffe69b951aa7ac02be02db44b4;hpb=1610f13adfdd3cadd5fba359973b8e04afc1e527;p=platal.git diff --git a/classes/platalglobals.php.in b/classes/platalglobals.php.in index 409b68c..774a809 100644 --- a/classes/platalglobals.php.in +++ b/classes/platalglobals.php.in @@ -1,6 +1,6 @@ core->sitename = 'Polytechnique.net'; + } + } + + public function init() + { $this->bootstrap(array('NbIns'), array($this, 'updateNbIns')); $this->bootstrap(array('NbValid'), array($this, 'updateNbValid')); } - public function asso($key=null) + public function asso($key = null) { + static $fetched = false; static $aid = null; - if (is_null($aid)) { + if (isset($GLOBALS['IS_XNET_SITE']) && !$fetched) { $gp = Get::v('n'); if ($p = strpos($gp, '/')) { $gp = substr($gp, 0, $p); } - if ($gp) { - $res = XDB::query('SELECT a.*, d.nom AS domnom, - FIND_IN_SET(\'wiki_desc\', a.flags) AS wiki_desc, - FIND_IN_SET(\'notif_unsub\', a.flags) AS notif_unsub - FROM groupex.asso AS a - LEFT JOIN groupex.dom AS d ON d.id = a.dom - WHERE diminutif = {?}', $gp); - if (!($aid = $res->fetchOneAssoc())) { - $aid = array(); - } - } else { - $aid = array(); - } + $aid = Group::get($gp); + $fetched = true; } if (empty($key)) { return $aid; - } elseif ( isset($aid[$key]) ) { - return $aid[$key]; + } elseif (isset($aid->$key) ) { + return $aid->$key; } else { return null; } } - public function updateNbIns() { $res = XDB::query("SELECT COUNT(*) - FROM auth_user_md5 - WHERE perms IN ('admin','user') AND deces=0"); + FROM accounts + WHERE state = 'active'"); $cnt = $res->fetchOneCell(); $this->changeDynamicConfig(array('NbIns' => $cnt)); }