<?php
/***************************************************************************
- * Copyright (C) 2003-2010 Polytechnique.org *
+ * Copyright (C) 2003-2011 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
* 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)
+ public function value(ProfilePage $page, $field, $value, &$success)
{
$success = true;
if (is_null($value)) {
return intval($value);
}
- public function save(ProfilePage &$page, $field, $value)
+ public function save(ProfilePage $page, $field, $value)
{
XDB::execute("UPDATE profiles
SET section = {?}
WHERE pid = {?}",
- $value, $page->pid());
+ ($value == 0) ? null : $value, $page->pid());
+ }
+
+ public function getText($value) {
+ $sectionsList = DirEnum::getOptions(DirEnum::SECTIONS);
+ return $sectionsList[$value];
}
}
-class ProfileBinets implements ProfileSetting
+class ProfileSettingBinets implements ProfileSetting
{
public function __construct()
{
}
- public function value(ProfilePage &$page, $field, $value, &$success)
+ public function value(ProfilePage $page, $field, $value, &$success)
{
if (is_null($value)) {
$value = array();
return $value;
}
- public function save(ProfilePage &$page, $field, $value)
+ public function save(ProfilePage $page, $field, $value)
{
XDB::execute("DELETE FROM profile_binets
WHERE pid = {?}",
XDB::execute("INSERT INTO profile_binets (pid, binet_id)
VALUES " . implode(',', $insert));
}
+
+ public function getText($value) {
+ return implode(', ', $value);
+ }
}
-class ProfileGroups extends ProfilePage
+class ProfilePageGroups extends ProfilePage
{
protected $pg_template = 'profile/groups.tpl';
- public function __construct(PlWizard &$wiz)
+ public function __construct(PlWizard $wiz)
{
parent::__construct($wiz);
- $this->settings['section'] = new ProfileSection();
- $this->settings['binets'] = new ProfileBinets();
+ $this->settings['section'] = new ProfileSettingSection();
+ $this->settings['binets'] = new ProfileSettingBinets();
$this->watched['section'] = $this->watched['binets'] = true;
}
- public function _prepare(PlPage &$page, $id)
+ public function _prepare(PlPage $page, $id)
{
$page->assign('mygroups', XDB::iterator("SELECT a.nom, a.site, a.diminutif, a.unsub_url, a.pub, m.perms
FROM groups AS a
INNER JOIN group_members AS m ON (m.asso_id = a.id)
WHERE m.uid = {?} AND (a.cat = 'GroupesX' OR a.cat = 'Institutions')",
- $this->pid()));
+ $this->owner->id()));
$page->assign('listgroups', XDB::iterator("SELECT a.nom, a.diminutif, a.sub_url,
IF (a.cat = 'Institutions', a.cat, d.nom) AS dom
FROM groups AS a
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);
}
}