X-Git-Url: http://git.polytechnique.org/?a=blobdiff_plain;f=modules%2Fxnetgrp.php;h=9187c47d7e99d0bddb0a4bcf90ee0e46c0ece224;hb=53595c2a9d1df6993dd69217c4bd1a6a9d51bff7;hp=b4bc9f471e9b11e88cf5bfdbebd8037947f2ad97;hpb=f41e70e9a234a24a4da648a2860d518d4e9934c2;p=platal.git diff --git a/modules/xnetgrp.php b/modules/xnetgrp.php index b4bc9f4..9187c47 100644 --- a/modules/xnetgrp.php +++ b/modules/xnetgrp.php @@ -674,18 +674,27 @@ class XnetGrpModule extends PLModule } } else { // User is of type xnet. - list($firstname, $lastname) = explode('@', $email); - $hruid = User::makeHrid($firstname, $lastname, 'ext'); + list($mbox, $domain) = explode('@', strtolower($email)); + $hruid = User::makeHrid($mbox, $domain, 'ext'); // User might already have an account (in another group for example). $user = User::get($hruid); // If the user has no account yet, creates new account: build names from email address. if (empty($user)) { - $display_name = ucwords(strtolower(substr($hruid, strpos('.', $hruid)))); - $full_name = ucwords(strtolower(str_replace('.', ' ', substr($email, strpos('@', $email))))); - XDB::execute('INSERT INTO accounts (hruid, display_name, full_name, email, type) - VALUES ({?}, {?}, {?}, {?}, \'xnet\')', - $hruid, $display_name, $full_name, $email); + $parts = explode('.', $mbox); + if (count($parts) == 1) { + $display_name = $full_name = $directory_name = ucfirst($mbox); + } else { + $firstname = ucfirst($parts[0]); + $lastname = ucwords(implode(' ', array_slice($parts, 1))); + $display_name = $firstname; + $full_name = "$firstname $lastname"; + $directory_name = strtoupper($lastname) . " " . $firstname; + } + XDB::execute('INSERT INTO accounts (hruid, display_name, full_name, directory_name, + email, type) + VALUES ({?}, {?}, {?}, {?}, {?}, \'xnet\')', + $hruid, $display_name, $full_name, $directory_name, $email); $user = User::get($hruid); } } @@ -1139,7 +1148,6 @@ class XnetGrpModule extends PLModule $aid, $imgtype, $imgx, $imgy, $upload->getContents()); } if ($art['xorg']) { - require_once('validations.inc.php'); $article = new EvtReq("[{$globals->asso('nom')}] " . $art['titre'], $fulltext, $art['promo_min'], $art['promo_max'], $art['expiration'], "", S::user(), $upload); @@ -1149,7 +1157,6 @@ class XnetGrpModule extends PLModule $upload->rm(); } if ($art['nl']) { - require_once('validations.inc.php'); $article = new NLReq(S::user(), $globals->asso('nom') . " : " .$art['titre'], $art['texte'], $art['contact_html']); $article->submit();