X-Git-Url: http://git.polytechnique.org/?a=blobdiff_plain;ds=sidebyside;f=modules%2Fprofile%2Fmentor.inc.php;h=cbe6a234cff25e4dac01518ba55936bdbc81290c;hb=0c50ac76147e7c3bffa90501559bdef63bb689e3;hp=fbc06ecc63e88a1ba89943574cc900500f3f6915;hpb=ddb649901f5a88d695a7050f2a59da140842ec89;p=platal.git diff --git a/modules/profile/mentor.inc.php b/modules/profile/mentor.inc.php index fbc06ec..cbe6a23 100644 --- a/modules/profile/mentor.inc.php +++ b/modules/profile/mentor.inc.php @@ -1,6 +1,6 @@ 10) { global $page; - $page->trig("Le nombre de secteurs d'expertise est limité à 10"); + $page->trigError("Le nombre de secteurs d'expertise est limité à 10"); $success = false; } ksort($value); @@ -91,7 +91,7 @@ class ProfileCountry implements ProfileSetting $value = array(); } else if (count($value) > 10) { global $page; - $page->trig("Le nombre de secteurs d'expertise est limité à 10"); + $page->trigError("Le nombre de secteurs d'expertise est limité à 10"); $success = false; } ksort($value); @@ -124,33 +124,35 @@ class ProfileMentor extends ProfilePage $this->settings['countries'] = new ProfileCountry(); } - protected function fetchData() + protected function _fetchData() { - if (count($this->orig) > 0) { - $this->values = $this->orig; - return; - } $res = XDB::query("SELECT expertise FROM mentor WHERE uid = {?}", S::i('uid')); - $this->value['expertise'] = $res->fetchOneCell(); - parent::fetchData(); + $this->values['expertise'] = $res->fetchOneCell(); } - protected function saveData() + protected function _saveData() { - parent::saveData(); if ($this->changed['expertise']) { - XDB::execute("REPLACE INTO mentor (uid, expertise) - VALUES ({?}, {?})", - S::i('uid'), $this->values['expertise']); + $expertise = trim($this->values['expertise']); + if (empty($expertise)) { + XDB::execute("DELETE FROM mentor + WHERE uid = {?}", + S::i('uid')); + $this->values['expertise'] = null; + } else { + XDB::execute("REPLACE INTO mentor (uid, expertise) + VALUES ({?}, {?})", + S::i('uid'), $expertise); + $this->values['expertise'] = $expertise; + } } } - public function prepare(PlatalPage &$page, $id) + public function _prepare(PlatalPage &$page, $id) { - parent::prepare($page, $id); $page->assign('secteurs_sel', XDB::iterator("SELECT id, label FROM emploi_secteur")); }