X-Git-Url: http://git.polytechnique.org/?a=blobdiff_plain;f=include%2Fprofil%2Fget_deco.inc.php;h=ddca970e09ae2be03e0802001de4fc5c01cd2148;hb=d02b8359e75e7a29be2a5ac80c4a2dd4a44323dc;hp=59c4e19abbf5e20bc526a56235d534248ee8d3c4;hpb=cab0809050d58f8484608e91f7555ebd69dcb451;p=platal.git diff --git a/include/profil/get_deco.inc.php b/include/profil/get_deco.inc.php index 59c4e19..ddca970 100644 --- a/include/profil/get_deco.inc.php +++ b/include/profil/get_deco.inc.php @@ -19,23 +19,32 @@ * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA * ***************************************************************************/ +require_once('validations.inc.php'); + if (Env::has('medal_op')) { - if (Env::get('medal_op')=='retirer' && Env::getInt('medal_id')) { - XDB::execute("DELETE FROM profile_medals_sub WHERE uid = {?} AND mid = {?}", S::v('uid', -1), Env::getInt('medal_id', -1)); + if (Env::v('medal_op')=='retirer' && Env::i('medal_id')) { + XDB::execute("DELETE FROM profile_medals_sub WHERE uid = {?} AND mid = {?}", S::v('uid', -1), Env::i('medal_id', -1)); + } + + if (Env::v('medal_op')=='ajouter' && Env::i('medal_id')) { + $req = new MedalReq(S::v('uid',-1),Env::i('medal_id'), Env::i('grade_id')); + $req->submit(); + unset($_REQUEST['medal_op']); // pour ne pas avoir le message d'attente de validation } - if (Env::get('medal_op')=='ajouter' && Env::getInt('medal_id')) { - XDB::execute("INSERT INTO profile_medals_sub (uid,mid) VALUES ({?}, {?})", S::v('uid', -1), Env::getInt('medal_id')); + if (Env::v('medal_op')=='annuler' && Env::i('medal_id')) { + $req = Validate::get_typed_request(S::i('uid'), 'medal', Env::v('medal_id')); + $req->clean(); } } if (Post::has('grade')) { - foreach (Post::getMixed('grade') as $mid=>$gid) { + foreach (Post::v('grade') as $mid=>$gid) { XDB::execute('UPDATE profile_medals_sub SET gid={?} WHERE uid={?} AND mid={?}', $gid, S::v('uid'), $mid); } } $res = XDB::query( - "SELECT m.id, m.text AS medal, m.type, m.img, s.gid + "SELECT m.id, m.text AS medal, m.type, m.img, s.gid FROM profile_medals_sub AS s INNER JOIN profile_medals AS m ON ( s.mid = m.id ) WHERE s.uid = {?}", S::v('uid', -1)); @@ -45,8 +54,11 @@ $medals = $res->fetchAllAssoc(); $res = XDB::query("SELECT profile_medals_pub FROM auth_user_quick WHERE user_id = {?}", S::v('uid', -1)); $medals_pub = $res->fetchOneCell(); +$medals_valid = Validate::get_typed_requests(S::i('uid'), 'medal'); + if(Env::has('modifier') || Env::has('suivant')) { $medals_pub = Env::has('medals_pub')?'public':'private'; } + // vim:set et sws=4 sw=4 sts=4: ?>