X-Git-Url: http://git.polytechnique.org/?a=blobdiff_plain;f=include%2Fvalidations%2Faliases.inc.php;h=7ad6d0c60dcd6dcbbb88e3c57d5d8792e013988a;hb=5ddeb07cc787dd1dc3630a31f1528f5cc7c4d9b9;hp=42465b92083ee51d36f0e3b6c2a91160918d85b0;hpb=50a40a33a496131e817df875607ea5542d096a64;p=platal.git diff --git a/include/validations/aliases.inc.php b/include/validations/aliases.inc.php index 42465b9..7ad6d0c 100644 --- a/include/validations/aliases.inc.php +++ b/include/validations/aliases.inc.php @@ -1,6 +1,6 @@ raison = $_raison; $this->public = $_public; - $res = $globals->xdb->query(" + $res = XDB::query(" SELECT v.alias FROM virtual_redirect AS vr INNER JOIN virtual AS v ON (v.vid=vr.vid AND v.alias LIKE '%@{$globals->mail->alias_dom}') @@ -60,9 +60,9 @@ class AliasReq extends Validate // }}} // {{{ function get_request() - function get_request($uid) + static function get_request($uid) { - return parent::get_request($uid,'alias'); + return parent::get_typed_request($uid,'alias'); } // }}} @@ -92,21 +92,38 @@ class AliasReq extends Validate } // }}} + // {{{ function shorter_domain + + function shorter_domain() + { + global $globals; + + $mail = $globals->mail; + + if (empty($mail->domain2) || strlen($mail->domain2) > strlen($mail->domain)) { + return $mail->domain; + } else { + return $mail->domain2; + } + } + + // }}} // {{{ function commit() function commit () { - global $globals; - - $globals->xdb->execute("UPDATE auth_user_quick SET emails_alias_pub = {?} WHERE user_id = {?}", $this->public, $this->uid); + XDB::execute("UPDATE auth_user_quick SET emails_alias_pub = {?} WHERE user_id = {?}", + $this->public, $this->uid); if ($this->old) { - return $globals->xdb->execute('UPDATE virtual SET alias={?} WHERE alias={?}', $this->alias, $this->old); + return XDB::execute('UPDATE virtual SET alias={?} WHERE alias={?}', + $this->alias, $this->old); } else { - $globals->xdb->execute('INSERT INTO virtual SET alias={?},type="user"', $this->alias); - $vid = mysql_insert_id(); - $dom = $globals->mail->shorter_domain(); - return $globals->xdb->query('INSERT INTO virtual_redirect (vid,redirect) VALUES ({?}, {?})', $vid, $this->forlife.'@'.$dom); + XDB::execute('INSERT INTO virtual SET alias={?},type="user"', $this->alias); + $vid = XDB::insertId(); + $dom = $this->shorter_domain(); + return XDB::query('INSERT INTO virtual_redirect (vid,redirect) VALUES ({?}, {?})', + $vid, $this->forlife.'@'.$dom); } }