Removes var_dump.
[platal.git] / modules / profile / groups.inc.php
index 7948519..f5e2941 100644 (file)
@@ -19,7 +19,7 @@
  *  59 Temple Place, Suite 330, Boston, MA  02111-1307  USA                *
  ***************************************************************************/
 
-class ProfileSection implements ProfileSetting
+class ProfileSettingSection implements ProfileSetting
 {
     public function value(ProfilePage &$page, $field, $value, &$success)
     {
@@ -41,19 +41,17 @@ class ProfileSection implements ProfileSetting
                        WHERE  pid = {?}",
                      $value, $page->pid());
     }
+
+    public function getText($value) {
+        $sectionsList = DirEnum::getOptions(DirEnum::SECTIONS);
+        return $sectionsList[$value];
+    }
 }
 
-class ProfileGroup implements ProfileSetting
+class ProfileSettingBinets implements ProfileSetting
 {
-    private $table;
-    private $user_field;
-    private $group_field;
-
-    public function __construct($table, $user, $group)
+    public function __construct()
     {
-        $this->table       = $table;
-        $this->user_field  = $user;
-        $this->group_field = $group;
     }
 
     public function value(ProfilePage &$page, $field, $value, &$success)
@@ -61,9 +59,9 @@ class ProfileGroup implements ProfileSetting
         if (is_null($value)) {
             $value = array();
             $res = XDB::iterRow("SELECT  g.id, g.text
-                                   FROM  {$this->table}_def AS g
-                             INNER JOIN  {$this->table}_ins AS i ON (i.{$this->group_field} = g.id)
-                                  WHERE  i.{$this->user_field} = {?}",
+                                   FROM  profile_binet_enum AS g
+                             INNER JOIN  profile_binets AS i ON (i.binet_id = g.id)
+                                  WHERE  i.pid = {?}",
                                 $page->pid());
             while (list($gid, $text) = $res->next()) {
                 $value[intval($gid)] = $text;
@@ -79,8 +77,8 @@ class ProfileGroup implements ProfileSetting
 
     public function save(ProfilePage &$page, $field, $value)
     {
-        XDB::execute("DELETE FROM  {$this->table}_ins
-                            WHERE  {$this->user_field} = {?}",
+        XDB::execute("DELETE FROM  profile_binets
+                            WHERE  pid = {?}",
                      $page->pid());
         if (!count($value)) {
             return;
@@ -89,20 +87,24 @@ class ProfileGroup implements ProfileSetting
         foreach ($value as $id=>$text) {
             $insert[] = XDB::format('({?}, {?})', $page->pid(), $id);
         }
-        XDB::execute("INSERT INTO  {$this->table}_ins ({$this->user_field}, {$this->group_field})
+        XDB::execute("INSERT INTO  profile_binets (pid, binet_id)
                            VALUES  " . implode(',', $insert));
     }
+
+    public function getText($value) {
+        return implode(', ', $value);
+    }
 }
 
-class ProfileGroups extends ProfilePage
+class ProfileSettingGroups extends ProfilePage
 {
     protected $pg_template = 'profile/groups.tpl';
 
     public function __construct(PlWizard &$wiz)
     {
         parent::__construct($wiz);
-        $this->settings['section']  = new ProfileSection();
-        $this->settings['binets']   = new ProfileGroup('binets', 'user_id', 'binet_id');
+        $this->settings['section']  = new ProfileSettingSection();
+        $this->settings['binets']   = new ProfileSettingBinets();
         $this->watched['section'] = $this->watched['binets'] = true;
     }
 
@@ -120,8 +122,7 @@ class ProfileGroups extends ProfilePage
                                                     WHERE  a.inscriptible != 0
                                                            AND (a.cat = 'GroupesX' OR a.cat = 'Institutions')
                                                  ORDER BY  a.cat, a.dom, a.nom"));
-        # XXX: FIXME: promo_sortie
-        $page->assign('old', (int)date('Y') >= S::i('promo_sortie'));
+        $page->assign('old', (int) date('Y') >= $this->profile->grad_year);
     }
 }