X-Git-Url: http://git.polytechnique.org/?a=blobdiff_plain;f=modules%2Fadmin.php;h=e16538ebfc2d2033ed22a0732fb75fb10d540235;hb=3422f7193e38e67054d2ecda2f4a68b64bd310ef;hp=afe3aa3ab4022ae7e6685905686b7171d6d0e271;hpb=981fce7bcfafd9b1b33a51ec39388ff0f87e0bcf;p=platal.git diff --git a/modules/admin.php b/modules/admin.php index afe3aa3..e16538e 100644 --- a/modules/admin.php +++ b/modules/admin.php @@ -26,6 +26,7 @@ class AdminModule extends PLModule return array( 'phpinfo' => $this->make_hook('phpinfo', AUTH_MDP, 'admin'), 'get_rights' => $this->make_hook('get_rights', AUTH_COOKIE, 'admin'), + 'set_skin' => $this->make_hook('set_skin', AUTH_COOKIE, 'admin'), 'admin' => $this->make_hook('default', AUTH_MDP, 'admin'), 'admin/dead-but-active' => $this->make_hook('dead_but_active', AUTH_MDP, 'admin'), 'admin/deaths' => $this->make_hook('deaths', AUTH_MDP, 'admin'), @@ -83,6 +84,17 @@ class AdminModule extends PLModule } } + function handler_set_skin(&$page) + { + S::assert_xsrf_token(); + S::set('skin', Post::s('change_skin')); + if (!empty($_SERVER['HTTP_REFERER'])) { + http_redirect($_SERVER['HTTP_REFERER']); + } else { + pl_redirect('/'); + } + } + function handler_default(&$page) { $page->changeTpl('admin/index.tpl'); @@ -303,8 +315,13 @@ class AdminModule extends PLModule } else { $loguser = $action == 'user' ? $arg : Env::v('loguser'); - $user = User::get($loguser); - $loguid = $user->id(); + + if ($loguser) { + $user = User::get($loguser); + $loguid = $user->id(); + } else { + $loguid = null; + } if ($loguid) { $year = Env::i('year'); @@ -369,7 +386,7 @@ class AdminModule extends PLModule } $page->assign_by_ref('sessions', $sessions); } else { - $page->assign('msg_nofilters', "Sélectionner une annuée et/ou un utilisateur"); + $page->assign('msg_nofilters', "Sélectionner une année et/ou un utilisateur"); } } @@ -674,6 +691,7 @@ class AdminModule extends PLModule $page->addJsLink('jquery.ui.core.js'); + $page->addJsLink('jquery.ui.widget.js'); $page->addJsLink('jquery.ui.tabs.js'); $page->addJsLink('password.js'); @@ -739,7 +757,7 @@ class AdminModule extends PLModule return false; } - array_map('trim', $infos); + $infos = array_map('trim', $infos); $hrid = self::getHrid($infos[1], $infos[0], $promo); $res1 = XDB::query('SELECT COUNT(*) FROM accounts @@ -770,7 +788,9 @@ class AdminModule extends PLModule private static function formatBirthDate($birthDate) { - return date("Y-m-d", strtotime($birthDate)); + // strtotime believes dd/mm/yyyy to be an US date (i.e mm/dd/yyyy), and + // dd-mm-yyyy to be a normal date (i.e dd-mm-yyyy)... + return date("Y-m-d", strtotime(str_replace('/', '-', $birthDate))); } function handler_add_accounts(&$page, $action = null, $promo = null) @@ -859,7 +879,7 @@ class AdminModule extends PLModule XDB::execute('INSERT INTO account_profiles (uid, pid, perms) VALUES ({?}, {?}, {?})', $uid, $pid, 'owner'); - Profile::rebuildSearchTokens($pid); + Profile::rebuildSearchTokens($pid, false); } } } @@ -1195,7 +1215,7 @@ class AdminModule extends PLModule S::assert_xsrf_token(); $firstname = Post::t('firstname'); $lastname = strtoupper(Post::t('lastname')); - $sex = Post::b('sex') ? User::GENDER_FEMALE : User::GENDER_MALE; + $sex = Post::s('sex'); $email = Post::t('email'); $type = Post::s('type'); $login = PlUser::makeHrid($firstname, $lastname, $type); @@ -1462,7 +1482,7 @@ class AdminModule extends PLModule $selectedJob = Env::has('selectedJob'); Phone::deletePhones(0, Phone::LINK_COMPANY, $id); - Address::delete(null, Address::LINK_COMPANY, $id); + Address::deleteAddresses(null, Address::LINK_COMPANY, $id); if (Env::has('change')) { XDB::execute('UPDATE profile_job SET jobid = {?}