<?php
/***************************************************************************
- * Copyright (C) 2003-2008 Polytechnique.org *
+ * Copyright (C) 2003-2011 Polytechnique.org *
* http://opensource.polytechnique.org/ *
* *
* This program is free software; you can redistribute it and/or modify *
// {{{ class OrangeReq
-class OrangeReq extends Validate
+class OrangeReq extends ProfileValidate
{
// {{{ properties
public $unique = true;
- public $promo;
- public $promo_sortie;
+ public $oldGradYear;
+ public $newGradYear;
+ public $entryYear;
- public $rules = "A priori accepter (la validation sert à repousser les
- petits malins). Refuse si tu connais la personne et que tu es sure
+ public $rules = "À priori accepter (la validation sert à repousser les
+ petits malins). Refuse si tu connais la personne et que tu es sûr
qu'elle n'est pas orange.";
// }}}
// {{{ constructor
- public function __construct($_uid, $_sortie)
+ public function __construct(User $_user, Profile $_profile, $_newGradYear)
{
- parent::__construct($_uid, true, 'orange');
- $this->promo_sortie = $_sortie;
- $res = XDB::query("SELECT promo FROM auth_user_md5 WHERE user_id = {?}", $_uid);
- $this->promo = $res->fetchOneCell();
+ parent::__construct($_user, $_profile, true, 'orange');
+ $this->newGradYear = $_newGradYear;
+ $res = XDB::query("SELECT entry_year, grad_year
+ FROM profile_education
+ WHERE pid = {?} AND FIND_IN_SET('primary', flags)",
+ $this->profile->id());
+ $years = $res->fetchOneRow();
+ $this->entryYear = $years[0];
+ $this->oldGradYear = $years[1];
}
// }}}
protected function _mail_body($isok)
{
if ($isok) {
- $res = " La demande de changement de promo de sortie que tu as demandée vient d'être effectuée.";
- return $res;
+ return " La demande de changement de promotion que tu as demandée vient d'être effectuée. "
+ . "Si tu le souhaites, tu peux maintenant modifier l'affichage de ta promotion sur le site sur la page suivante : "
+ . "https://www.polytechnique.org/profile/edit";
} else {
- return " La demande de changement de promo de sortie tu avais faite a été refusée.";
+ return " La demande de changement de promotion tu avais faite a été refusée.";
}
}
public function commit()
{
- XDB::execute("UPDATE auth_user_md5 set promo_sortie={?} WHERE user_id={?}",$this->promo_sortie ,$this->uid);
+ XDB::execute("UPDATE profile_education
+ SET grad_year = {?}
+ WHERE pid = {?} AND FIND_IN_SET('primary', flags)",
+ $this->newGradYear, $this->profile->id());
return true;
}