X-Git-Url: http://git.polytechnique.org/?a=blobdiff_plain;f=modules%2Fxnetgrp.php;h=eda32c13ab1f18201b59ad571bf1dea77259d5c7;hb=833a6e86ea17d40444ae32cd6c92b9359f383e71;hp=3b43dd295748a4aee77c4a20d076d64487e935cd;hpb=5660032ac785d410f90e3f5b0d6948dc90b0cfea;p=platal.git diff --git a/modules/xnetgrp.php b/modules/xnetgrp.php index 3b43dd2..eda32c1 100644 --- a/modules/xnetgrp.php +++ b/modules/xnetgrp.php @@ -66,25 +66,25 @@ class XnetGrpModule extends PLModule if (S::logged()) { if (Env::has('read')) { - XDB::query('DELETE #groupex#.r.* - FROM #groupex#.announces_read AS r - INNER JOIN #groupex#.announces AS a ON a.id = r.announce_id + XDB::query('DELETE group_r.* + FROM group_announces_read AS r + INNER JOIN group_announces AS a ON a.id = r.announce_id WHERE peremption < CURRENT_DATE()'); - XDB::query('INSERT INTO #groupex#.announces_read + XDB::query('INSERT INTO group_announces_read VALUES ({?}, {?})', Env::i('read'), S::i('uid')); pl_redirect(""); } if (Env::has('unread')) { - XDB::query('DELETE FROM #groupex#.announces_read + XDB::query('DELETE FROM group_announces_read WHERE announce_id={?} AND user_id={?}', Env::i('unread'), S::i('uid')); pl_redirect("#art" . Env::i('unread')); } // XXX: Fix promo_min; promo_max $arts = XDB::iterator("SELECT a.*, FIND_IN_SET('photo', a.flags) AS photo - FROM #groupex#.announces AS a - LEFT JOIN #groupex#.announces_read AS r ON (r.user_id = {?} AND r.announce_id = a.id) + FROM group_announces AS a + LEFT JOIN group_announces_read AS r ON (r.user_id = {?} AND r.announce_id = a.id) WHERE asso_id = {?} AND peremption >= CURRENT_DATE() AND (promo_min = 0 OR promo_min <= {?}) AND (promo_max = 0 OR promo_max >= {?}) @@ -92,8 +92,8 @@ class XnetGrpModule extends PLModule ORDER BY a.peremption", S::i('uid'), $globals->asso('id'), S::i('promo'), S::i('promo')); $index = XDB::iterator("SELECT a.id, a.titre, r.user_id IS NULL AS nonlu - FROM #groupex#.announces AS a - LEFT JOIN #groupex#.announces_read AS r ON (a.id = r.announce_id AND r.user_id = {?}) + FROM group_announces AS a + LEFT JOIN group_announces_read AS r ON (a.id = r.announce_id AND r.user_id = {?}) WHERE asso_id = {?} AND peremption >= CURRENT_DATE() AND (promo_min = 0 OR promo_min <= {?}) AND (promo_max = 0 OR promo_max >= {?}) @@ -102,14 +102,14 @@ class XnetGrpModule extends PLModule $page->assign('article_index', $index); } else { $arts = XDB::iterator("SELECT a.*, FIND_IN_SET('photo', a.flags) AS photo - FROM #groupex#.announces AS a + FROM group_announces AS a WHERE asso_id = {?} AND peremption >= CURRENT_DATE() AND FIND_IN_SET('public', a.flags)", $globals->asso('id')); } if (may_update()) { $subs_valid = XDB::query("SELECT uid - FROM #groupex#.membres_sub_requests + FROM group_member_sub_requests WHERE asso_id = {?}", $globals->asso('id')); $page->assign('requests', $subs_valid->numRows()); @@ -129,15 +129,7 @@ class XnetGrpModule extends PLModule function handler_logo(&$page) { global $globals; - - $res = XDB::query("SELECT logo, logo_mime - FROM #groupex#.asso - WHERE id = {?}", - $globals->asso('id')); - list($logo, $logo_mime) = $res->fetchOneRow(); - - pl_cached_dynamic_content_headers(empty($logo) ? "image/jpeg" : $logo_mime); - exit; + $globals->asso()->getLogo()->send(); } function handler_site(&$page) @@ -177,7 +169,7 @@ class XnetGrpModule extends PLModule return; } XDB::execute( - "UPDATE #groupex#.asso + "UPDATE groups SET nom={?}, diminutif={?}, cat={?}, dom={?}, descr={?}, site={?}, mail={?}, resp={?}, forum={?}, mail_domain={?}, ax={?}, pub={?}, @@ -198,7 +190,7 @@ class XnetGrpModule extends PLModule } } else { XDB::execute( - "UPDATE #groupex#.asso + "UPDATE groups SET descr={?}, site={?}, mail={?}, resp={?}, forum={?}, pub= {?}, sub_url={?}, unsub_url={?},flags={?} @@ -216,7 +208,7 @@ class XnetGrpModule extends PLModule if (!$upload) { $page->trigError("Impossible de télécharger le logo."); } else { - XDB::execute('UPDATE #groupex#.asso + XDB::execute('UPDATE groups SET logo = {?}, logo_mime = {?} WHERE id = {?}', $upload->getContents(), $upload->contentType(), $globals->asso('id')); @@ -228,7 +220,7 @@ class XnetGrpModule extends PLModule } if (S::admin()) { - $dom = XDB::iterator('SELECT * FROM #groupex#.dom ORDER BY nom'); + $dom = XDB::iterator('SELECT * FROM group_dom ORDER BY nom'); $page->assign('dom', $dom); $page->assign('super', true); } @@ -296,7 +288,8 @@ class XnetGrpModule extends PLModule } else if ($action == 'geoloc' || $action == 'trombi') { $view = new UserSet(); $view->addMod('trombi', 'Trombinoscope'); - $view->addMod('geoloc', 'Planisphère', false, array('with_annu' => 'annuaire/search')); + // TODO: Reactivate when the new map is completed. + // $view->addMod('geoloc', 'Planisphère', false, array('with_annu' => 'annuaire/search')); $view->apply('annuaire', $page, $action, $subaction); if ($action == 'geoloc' && $subaction) { return; @@ -323,7 +316,7 @@ class XnetGrpModule extends PLModule } else { $uf = $globals->asso()->getMembers(null, $se); } - $users = $uf->getUsers(NB_PER_PAGE, $ofs * NB_PER_PAGE); + $users = $uf->getUsers(new PlLimit(NB_PER_PAGE, $ofs * NB_PER_PAGE)); $count = $uf->getTotalCount(); $page->assign('pages', floor(($count + NB_PER_PAGE - 1) / NB_PER_PAGE)); @@ -369,7 +362,7 @@ class XnetGrpModule extends PLModule private function removeSubscriptionRequest($uid) { global $globals; - XDB::execute("DELETE FROM #groupex#.membres_sub_requests + XDB::execute("DELETE FROM group_member_sub_requests WHERE asso_id = {?} AND uid = {?}", $globals->asso('id'), $uid); } @@ -378,7 +371,7 @@ class XnetGrpModule extends PLModule { global $globals; $this->removeSubscriptionRequest($user->id()); - XDB::execute("INSERT IGNORE INTO #groupex#.membres (asso_id, uid) + XDB::execute("INSERT IGNORE INTO group_members (asso_id, uid) VALUES ({?}, {?})", $globals->asso('id'), $user->id()); if (XDB::affectedRows() == 1) { @@ -419,13 +412,13 @@ class XnetGrpModule extends PLModule // Retrieves the subscription status, and the reason. $res = XDB::query("SELECT reason - FROM #groupex#.membres_sub_requests + FROM group_member_sub_requests WHERE asso_id = {?} AND uid = {?}", $globals->asso('id'), $user->id()); $reason = ($res->numRows() ? $res->fetchOneCell() : null); $res = XDB::query("SELECT COUNT(*) - FROM #groupex#.membres + FROM group_members WHERE asso_id = {?} AND uid = {?}", $globals->asso('id'), $user->id()); $already_member = ($res->fetchOneCell() > 0); @@ -463,7 +456,7 @@ class XnetGrpModule extends PLModule } $res = XDB::query("SELECT uid - FROM #groupex#.membres_sub_requests + FROM group_member_sub_requests WHERE uid = {?} AND asso_id = {?}", S::i('uid'), $globals->asso('id')); if ($res->numRows() != 0) { @@ -474,13 +467,13 @@ class XnetGrpModule extends PLModule if (Post::has('inscrire')) { S::assert_xsrf_token(); - XDB::execute("INSERT INTO #groupex#.membres_sub_requests (asso_id, uid, ts, reason) + XDB::execute("INSERT INTO group_member_sub_requests (asso_id, uid, ts, reason) VALUES ({?}, {?}, NOW(), {?})", $globals->asso('id'), S::i('uid'), Post::v('message')); $res = XDB::query('SELECT IF(m.email IS NULL, CONCAT(al.alias,"@polytechnique.org"), m.email) - FROM #groupex#.membres AS m + FROM group_members AS m INNER JOIN #x4dat#.aliases AS al ON (al.type = "a_vie" AND al.id = m.uid) WHERE perms="admin" AND m.asso_id = {?}', @@ -538,7 +531,7 @@ class XnetGrpModule extends PLModule } $it = XDB::iterator('SELECT s.uid, a.hruid, s.ts AS date - FROM #groupex#.membres_sub_requests AS s + FROM group_member_sub_requests AS s INNER JOIN #x4dat#.accounts AS a ON(s.uid = a.uid) WHERE s.asso_id = {?} ORDER BY s.ts', $globals->asso('id')); @@ -629,7 +622,7 @@ class XnetGrpModule extends PLModule if (!User::isForeignEmailAddress($email)) { $user = User::get($email); if ($user) { - XDB::execute("REPLACE INTO #groupex#.membres (uid, asso_id, origine) + XDB::execute("REPLACE INTO group_members (uid, asso_id, origine) VALUES ({?}, {?}, 'X')", $user->id(), $globals->asso('id')); pl_redirect("member/" . $user->login()); @@ -648,7 +641,7 @@ class XnetGrpModule extends PLModule $market->add(); } } - XDB::execute('REPLACE INTO #groupex#.membres (uid, asso_id, origine, email) + XDB::execute('REPLACE INTO group_members (uid, asso_id, origine, email) VALUES ({?}, {?}, "X", {?})', $uid, $globals->asso('id'), $email); $this->removeSubscriptionRequest($uid); @@ -656,9 +649,9 @@ class XnetGrpModule extends PLModule } $page->trigError("Utilisateur invalide"); } else { - $res = XDB::query('SELECT MAX(uid) + 1 FROM #groupex#.membres'); + $res = XDB::query('SELECT MAX(uid) + 1 FROM group_members'); $uid = max(intval($res->fetchOneCell()), 50001); - XDB::execute('REPLACE INTO #groupex#.membres (uid, asso_id, origine, email) + XDB::execute('REPLACE INTO group_members (uid, asso_id, origine, email) VALUES ({?}, {?}, "ext", {?})', $uid, $globals->asso('id'), $email); pl_redirect("member/$email"); @@ -693,7 +686,7 @@ class XnetGrpModule extends PLModule $cond->addChild(new UFC_Promo('=', UserFilter::GRADE_ING, Env::i('promo'))); } $uf = new UserFilter($cond); - $users = $uf->getUsers(30); + $users = $uf->getUsers(new PlLimit(30)); if ($uf->getTotalCount() > 30) { $page->assign('too_many', true); $users = array(); @@ -705,7 +698,7 @@ class XnetGrpModule extends PLModule function unsubscribe(PlUser &$user) { global $globals; - XDB::execute("DELETE FROM #groupex#.membres + XDB::execute("DELETE FROM group_members WHERE uid = {?} AND asso_id = {?}", $user->id(), $globals->asso('id')); @@ -827,17 +820,17 @@ class XnetGrpModule extends PLModule // Check if the user is already in the group global $globals; $res = XDB::query("SELECT uid, email - FROM #groupex#.membres + FROM group_members WHERE uid = {?} AND asso_id = {?}", $uid, $globals->asso('id')); if ($res->numRows()) { list($uid, $email) = $res->fetchOneRow(); - XDB::execute("DELETE FROM #groupex#.membres + XDB::execute("DELETE FROM group_members WHERE uid = {?}", $user['uid']); } else { $email = $user['email']; - XDB::execute("UPDATE #groupex#.membres + XDB::execute("UPDATE group_members SET uid = {?}, origine = 'X' WHERE uid = {?} AND asso_id = {?}", $uid, $user['uid'], $globals->asso('id')); @@ -901,7 +894,7 @@ class XnetGrpModule extends PLModule $user['prenom'] = (Post::v('origine') == 'ext') ? Post::v('prenom') : ''; $user['sexe'] = (Post::v('origine') == 'ext') ? Post::v('sexe') : 0; $user['origine'] = Post::v('origine'); - XDB::query('UPDATE #groupex#.membres + XDB::query('UPDATE group_members SET prenom = {?}, nom = {?}, email = {?}, sexe = {?}, origine = {?} WHERE uid = {?} AND asso_id = {?}', $user['prenom'], $user['nom'], Post::v('email'), @@ -915,7 +908,7 @@ class XnetGrpModule extends PLModule $perms = Post::i('is_admin'); $comm = Post::t('comm'); if ($user['perms'] != $perms || $user['comm'] != $comm) { - XDB::query('UPDATE #groupex#.membres + XDB::query('UPDATE group_members SET perms = {?}, comm = {?} WHERE uid = {?} AND asso_id = {?}', $perms ? 'admin' : 'membre', $comm, @@ -1013,7 +1006,7 @@ class XnetGrpModule extends PLModule function handler_photo_announce(&$page, $eid = null) { if ($eid) { - $res = XDB::query("SELECT * FROM #groupex#.announces_photo WHERE eid = {?}", $eid); + $res = XDB::query("SELECT * FROM group_announces_photo WHERE eid = {?}", $eid); if ($res->numRows()) { $photo = $res->fetchOneAssoc(); pl_cached_dynamic_content_headers("image/" . $photo['attachmime']); @@ -1090,7 +1083,7 @@ class XnetGrpModule extends PLModule } $art['photo'] = $upload->exists() || Post::i('photo'); if (Post::v('valid') == 'Pas d\'image' && !is_null($aid)) { - XDB::query("DELETE FROM #groupex#.announces_photo WHERE eid = {?}", $aid); + XDB::query("DELETE FROM group_announces_photo WHERE eid = {?}", $aid); $upload->rm(); Post::kill('valid'); $art['photo'] = false; @@ -1119,7 +1112,7 @@ class XnetGrpModule extends PLModule $post = $banana->post($globals->asso('forum'), null, $art['titre'], MiniWiki::wikiToText($fulltext, false, 0, 80)); }*/ - XDB::query("INSERT INTO #groupex#.announces + XDB::query("INSERT INTO group_announces (user_id, asso_id, create_date, titre, texte, contacts, peremption, promo_min, promo_max, flags, post_id) VALUES ({?}, {?}, NOW(), {?}, {?}, {?}, {?}, {?}, {?}, {?}, {?})", @@ -1128,7 +1121,7 @@ class XnetGrpModule extends PLModule $aid = XDB::insertId(); if ($art['photo']) { list($imgx, $imgy, $imgtype) = $upload->imageInfo(); - XDB::execute("INSERT INTO #groupex#.announces_photo + XDB::execute("INSERT INTO group_announces_photo SET eid = {?}, attachmime = {?}, x = {?}, y = {?}, attach = {?}", $aid, $imgtype, $imgx, $imgy, $upload->getContents()); } @@ -1150,7 +1143,7 @@ class XnetGrpModule extends PLModule $page->trigWarning("La parution dans la Lettre Mensuelle est en attente de validation."); } } else { - XDB::query("UPDATE #groupex#.announces + XDB::query("UPDATE group_announces SET titre={?}, texte={?}, contacts={?}, peremption={?}, promo_min={?}, promo_max={?}, flags={?} WHERE id={?} AND asso_id={?}", @@ -1159,7 +1152,7 @@ class XnetGrpModule extends PLModule $art['id'], $globals->asso('id')); if ($art['photo'] && $upload->exists()) { list($imgx, $imgy, $imgtype) = $upload->imageInfo(); - XDB::execute("REPLACE INTO #groupex#.announces_photo + XDB::execute("REPLACE INTO group_announces_photo SET eid = {?}, attachmime = {?}, x = {?}, y = {?}, attach = {?}", $aid, $imgtype, $imgx, $imgy, $upload->getContents()); $upload->rm(); @@ -1173,7 +1166,7 @@ class XnetGrpModule extends PLModule if (empty($art) && !is_null($aid)) { $res = XDB::query("SELECT a.*, FIND_IN_SET('public', a.flags) AS public, FIND_IN_SET('photo', a.flags) AS photo - FROM #groupex#.announces AS a + FROM group_announces AS a WHERE asso_id = {?} AND a.id = {?}", $globals->asso('id'), $aid); if ($res->numRows()) { @@ -1186,7 +1179,7 @@ class XnetGrpModule extends PLModule if (is_null($aid)) { $events = XDB::iterator("SELECT * - FROM #groupex#.evenements + FROM group_events WHERE asso_id = {?} AND archive = 0", $globals->asso('id')); if ($events->total()) { @@ -1206,12 +1199,12 @@ class XnetGrpModule extends PLModule if (Env::has('del')) { S::assert_xsrf_token(); - XDB::execute("DELETE FROM #groupex#.announces + XDB::execute("DELETE FROM group_announces WHERE id = {?} AND asso_id = {?}", Env::i('del'), $globals->asso('id')); } $res = XDB::iterator("SELECT a.id, a.titre, a.peremption, a.peremption < CURRENT_DATE() AS perime - FROM #groupex#.announces AS a + FROM group_announces AS a WHERE a.asso_id = {?} ORDER BY a.peremption DESC", $globals->asso('id'));