}
// }}}
+// {{{ function list_header_decode
+
+function _list_header_decode($charset, $c, $str) {
+ $s = ($c == 'Q' || $c == 'q') ? quoted_printable_decode($str) : base64_decode($str);
+ $s = iconv($charset, 'iso-8859-15', $s);
+ return str_replace('_', ' ', $s);
+}
+
+function list_header_decode($value) {
+ $val = preg_replace('/(=\?[^?]*\?[BQbq]\?[^?]*\?=) (=\?[^?]*\?[BQbq]\?[^?]*\?=)/', '\1\2', $value);
+ return preg_replace('/=\?([^?]*)\?([BQbq])\?([^?]*)\?=/e', '_list_header_decode("\1", "\2", "\3")', $val);
+}
+
+// }}}
// vim:set et sw=4 sts=4 sws=4 foldmethod=marker:
?>
'SELECT IF(u.nom <> "", u.nom, m.nom) AS nom,
IF(u.prenom <> "", u.prenom, m.prenom) AS prenom,
IF(m.email <> "", m.email, CONCAT(a.alias, "@polytechnique.org")) as email,
- FIND_IN_SET("femme", u.flags) AS sexe
+ IF(m.sexe IS NULL, FIND_IN_SET("femme", u.flags), m.sexe) AS sexe
FROM groupex.membres AS m
LEFT JOIN auth_user_md5 AS u ON (m.uid=u.user_id AND m.uid<50000)
LEFT JOIN aliases AS a ON (a.id=u.user_id and a.type="a_vie")
$tos[] = $person;
}
} else {
- $res = XDB::query('SELECT prenom, nom FROM groupex.membres WHERE email={?}', $mem[1]);
+ $res = XDB::query('SELECT prenom, nom, sexe FROM groupex.membres WHERE email={?}', $mem[1]);
if ($person = $res->fetchOneAssoc()) {
$person['email'] = $mem[1];
$tos[] = $person;
IF(m.origine='X',u.promo,'extérieur') AS promo,
IF(m.origine='X',u.promo,'') AS promo_o,
IF(m.origine='X',a.alias,m.email) AS email,
- IF(m.origine='X',FIND_IN_SET('femme', u.flags),0) AS femme,
+ IF(m.origine='X',FIND_IN_SET('femme', u.flags), m.sexe) AS femme,
m.perms='admin' AS admin,
m.origine='X' AS x,
m.uid
if (Post::has('change')) {
if ($user['origine'] != 'X') {
XDB::query('UPDATE groupex.membres
- SET prenom={?}, nom={?}, email={?}
- WHERE uid={?} AND asso_id={?}',
- Post::v('prenom'), Post::v('nom'),
- Post::v('email'), $user['uid'],
- $globals->asso('id'));
+ SET prenom={?}, nom={?}, email={?}, sexe={?}
+ WHERE uid={?} AND asso_id={?}',
+ Post::v('prenom'), Post::v('nom'),
+ Post::v('email'), Post::v('sexe'),
+ $user['uid'], $globals->asso('id'));
$user['nom'] = Post::v('nom');
$user['prenom'] = Post::v('prenom');
+ $user['sexe'] = Post::v('sexe');
$user['email'] = Post::v('email');
$user['email2'] = Post::v('email');
}
$perms = Post::i('is_admin');
if ($user['perms'] != $perms) {
XDB::query('UPDATE groupex.membres SET perms={?}
- WHERE uid={?} AND asso_id={?}',
- $perms ? 'admin' : 'membre',
- $user['uid'], $globals->asso('id'));
+ WHERE uid={?} AND asso_id={?}',
+ $perms ? 'admin' : 'membre',
+ $user['uid'], $globals->asso('id'));
$user['perms'] = $perms;
$page->trig('permissions modifiées');
}