From 232c852648976ecead9f4e29b847a152f07e637f Mon Sep 17 00:00:00 2001 From: x2000habouzit Date: Thu, 8 Jul 2004 09:20:55 +0000 Subject: [PATCH] on vire les trackers --> utilisation de code externe --- configs/menu.conf.php | 1 - etat_migration | 2 +- htdocs/trackers/admin.php | 72 -------------------- htdocs/trackers/answer.php | 38 ----------- htdocs/trackers/index.php | 18 ----- htdocs/trackers/post.php | 21 ------ htdocs/trackers/show.php | 33 ---------- htdocs/trackers/show_rq.php | 49 -------------- include/tracker.inc.php | 140 --------------------------------------- plugins/insert.mkStats.php | 22 +------ scripts/migration.sql | 8 +-- templates/admin/index.tpl | 6 +- templates/trackers/admin.tpl | 81 ----------------------- templates/trackers/answer.tpl | 46 ------------- templates/trackers/edit.tpl | 145 ----------------------------------------- templates/trackers/index.tpl | 22 ------- templates/trackers/post.tpl | 59 ----------------- templates/trackers/show.tpl | 70 -------------------- templates/trackers/show_rq.tpl | 103 ----------------------------- 19 files changed, 6 insertions(+), 930 deletions(-) delete mode 100644 htdocs/trackers/admin.php delete mode 100644 htdocs/trackers/answer.php delete mode 100644 htdocs/trackers/index.php delete mode 100644 htdocs/trackers/post.php delete mode 100644 htdocs/trackers/show.php delete mode 100644 htdocs/trackers/show_rq.php delete mode 100644 include/tracker.inc.php delete mode 100644 templates/trackers/admin.tpl delete mode 100644 templates/trackers/answer.tpl delete mode 100644 templates/trackers/edit.tpl delete mode 100644 templates/trackers/index.tpl delete mode 100644 templates/trackers/post.tpl delete mode 100644 templates/trackers/show.tpl delete mode 100644 templates/trackers/show_rq.tpl diff --git a/configs/menu.conf.php b/configs/menu.conf.php index ee2c90d..7afecee 100644 --- a/configs/menu.conf.php +++ b/configs/menu.conf.php @@ -40,7 +40,6 @@ if(logged()) { $menu['***'] = Array ( 'Marketing' => '###url###', 'Administration' => '###url###', - 'Trackers' => 'trackers/', 'Clear cache' => 'clear_all_cache.php' ); } diff --git a/etat_migration b/etat_migration index ece5682..b912fdb 100644 --- a/etat_migration +++ b/etat_migration @@ -200,7 +200,7 @@ x!! | trackers/tracker_delete.php | - x!! | trezo/trezo.inc.php | - ------+-[ trackers ]------------------------------+---------------- x!! | trackers/tracker_show.php | \ -x!! | trackers/tracker_show_rq.php | \_ récrit de 0 (ou presque) +x!! | trackers/tracker_show_rq.php | \_ obsolete x!! | trackers/index.php | / x!! | trackers/tracker_admin.php | / ------+-------------------------------------------+---------------- diff --git a/htdocs/trackers/admin.php b/htdocs/trackers/admin.php deleted file mode 100644 index 4dbff05..0000000 --- a/htdocs/trackers/admin.php +++ /dev/null @@ -1,72 +0,0 @@ -db->query("INSERT INTO trackers.mail_lists - SET short='{$_POST['short']}',texte='{$_POST['texte']}'"); - $mlid = mysql_insert_id(); - } else - $mlid = clean_request('mlid'); - $bits = new Flagset(); - if(!empty($_POST['nomail'])) - $bits->addFlag('no_mail'); - if(!empty($_POST['perso'])) - $bits->addFlag('perso'); - tracker_update($_POST['name'], $_POST['desc'], $_POST['perms'], - $mlid, $bits, $_POST['pris'], $_POST['trid']); - - $page->xorg_clear_cache('trackers/admin.tpl'); - $page->xorg_clear_cache('trackers/index.tpl'); - // TODO - break; - // édition des propriétés d'un tracker ou nouveau tracker - case 'edit': - new_admin_page('trackers/edit.tpl'); - $sql = "SELECT ml_id,short - FROM trackers.mail_lists - ORDER BY short"; - $page->mysql_assign($sql, 'ml_list'); - $tr_id = clean_request('trid'); - $page->assign('tracker',new Tracker($tr_id)); - $page->run(); - // suppression d'un tracker - case 'del': - new_admin_page('trackers/admin.tpl'); - $page->xorg_clear_cache('trackers/admin.tpl'); - $page->xorg_clear_cache('trackers/index.tpl'); - $tracker = new Tracker($_POST['trid']); - $tracker -> destroy(); - break; - // nettoyage BD - case 'clean': - new_admin_page('trackers/admin.tpl'); - tracker_clean_bd(); - } -} else - new_admin_page('trackers/admin.tpl'); - -if(!$page->xorg_is_cached()) { - // we know when a new tracker is added so we can trust cached version - $sql = "SELECT tr_id,tr.texte AS tr_name,description,ml.short,ml.texte AS ml_name - FROM trackers.trackers AS tr - LEFT JOIN trackers.mail_lists AS ml USING(ml_id) - WHERE tr.bits NOT LIKE '%perso%' - ORDER BY tr.texte"; - $page->mysql_assign($sql, 'trackers'); - - $sql = "SELECT tr_id,tr.texte AS tr_name,description,ml.short,ml.texte AS ml_name - FROM trackers.trackers AS tr - LEFT JOIN trackers.mail_lists AS ml USING(ml_id) - WHERE tr.bits LIKE '%perso%' - ORDER BY tr.texte"; - $page->mysql_assign($sql, 'persos'); -} - -$page->run(); -?> diff --git a/htdocs/trackers/answer.php b/htdocs/trackers/answer.php deleted file mode 100644 index ad7428b..0000000 --- a/htdocs/trackers/answer.php +++ /dev/null @@ -1,38 +0,0 @@ -post_perms_ok()) { - $sql = "INSERT INTO trackers.followups - SET user_id='{$_SESSION['uid']}', - texte='{$_POST['a_text']}', - rq_id='{$_GET['rq_id']}'"; - $globals->db->query($sql); - header("Location: show_rq.php?tr_id={$_GET['tr_id']}&rq_id={$_GET['rq_id']}"); - -} - -$res = $globals->db->query("SELECT date,summary,texte - FROM trackers.requests - WHERE tr_id='{$_GET['tr_id']}' AND rq_id='{$_GET['rq_id']}'"); - -if(empty($tracker->id) || !$tracker->post_perms_ok() || !mysql_num_rows($res)) - $page->failure(); - -$request = mysql_fetch_assoc($res); -mysql_free_result($res); - -$page->assign('request', $request); -$page->assign('tracker', $tracker); - -$sql = "SELECT *, username - FROM trackers.followups - LEFT JOIN auth_user_md5 USING(user_id) - WHERE rq_id='{$_GET['rq_id']}'"; -$page->mysql_assign($sql, 'fups'); - -$page->run(); -?> diff --git a/htdocs/trackers/index.php b/htdocs/trackers/index.php deleted file mode 100644 index 5a9832a..0000000 --- a/htdocs/trackers/index.php +++ /dev/null @@ -1,18 +0,0 @@ -xorg_is_cached()) { - // we know when a new tracker is added so we can trust cached version - $sql = "SELECT tr_id,tr.texte AS tr_name,description,ml.short,ml.texte AS ml_name - FROM trackers.trackers AS tr - LEFT JOIN trackers.mail_lists AS ml USING(ml_id) - WHERE tr.bits NOT LIKE '%perso%' AND tr.perms!='admin' - ORDER BY tr.texte"; - $page->mysql_assign($sql, 'trackers'); -} - -$page->run(); -?> diff --git a/htdocs/trackers/post.php b/htdocs/trackers/post.php deleted file mode 100644 index dd67498..0000000 --- a/htdocs/trackers/post.php +++ /dev/null @@ -1,21 +0,0 @@ -id) || !$tracker->post_perms_ok()) - $page->failure(); - -if(empty($_POST['text']) || empty($_POST['sujet'])) { - $page->assign('tracker', $tracker); - $page->mysql_assign('SELECT * FROM trackers.states', 'states'); -} else { - $rq_id = $tracker->post($_POST['sujet'], $_POST['text'], $_POST['prio'], $_POST['statut']); - header("Location: show_rq.php?tr_id={$_GET['tr_id']}&rq_id=$rq_id"); -} - -$page->run(); -?> diff --git a/htdocs/trackers/show.php b/htdocs/trackers/show.php deleted file mode 100644 index fa5ac09..0000000 --- a/htdocs/trackers/show.php +++ /dev/null @@ -1,33 +0,0 @@ -id) || !$tracker->read_perms_ok()) - $page->failure(); - -if(!empty($_POST['id']) && $tracker->post_perms_ok()) - request_delete($_GET['tr_id'], $_POST['id']); - -$page->assign('tracker', $tracker); - -$sql = "SELECT r.date,r.summary,r.pri,r.rq_id, a.username - FROM trackers.requests AS r - LEFT JOIN trackers.states AS s USING(st_id) - LEFT JOIN auth_user_md5 AS a ON(r.admin_id=a.user_id) - WHERE tr_id = {$tracker->id} AND s.texte != 'fermé' - ORDER BY pri DESC, r.date ASC"; -$page->mysql_assign($sql, 'requests'); - -$sql = "SELECT r.date,r.summary,r.pri,r.rq_id, a.username - FROM trackers.requests AS r - LEFT JOIN trackers.states AS s USING(st_id) - LEFT JOIN auth_user_md5 AS a ON(r.admin_id=a.user_id) - WHERE tr_id = {$tracker->id} AND s.texte = 'fermé' - ORDER BY pri DESC, r.date ASC"; -$page->mysql_assign($sql, 'close'); - -$page->run(); -?> diff --git a/htdocs/trackers/show_rq.php b/htdocs/trackers/show_rq.php deleted file mode 100644 index f4dadd9..0000000 --- a/htdocs/trackers/show_rq.php +++ /dev/null @@ -1,49 +0,0 @@ -post_perms_ok()) { - $sql = "UPDATE trackers.requests - SET pri='{$_POST['n_pri']}',admin_id='{$_POST['n_admin']}',st_id='{$_POST['n_state']}' - WHERE tr_id='{$_GET['tr_id']}' AND rq_id='{$_GET['rq_id']}'"; - $globals->db->query($sql); -} - -$res = $globals->db->query("SELECT r.*, a.username, b.username AS admin, s.texte AS state - FROM trackers.requests AS r - LEFT JOIN trackers.states AS s USING(st_id) - LEFT JOIN auth_user_md5 AS a ON(r.user_id = a.user_id) - LEFT JOIN auth_user_md5 AS b ON(r.admin_id = b.user_id) - WHERE tr_id='{$_GET['tr_id']}' AND rq_id='{$_GET['rq_id']}'"); - -if(empty($tracker->id) || !$tracker->read_perms_ok() || !mysql_num_rows($res)) - $page->failure(); - -$request = mysql_fetch_assoc($res); -mysql_free_result($res); - -$page->assign('request', $request); -$page->assign('tracker', $tracker); - -$sql = "SELECT user_id,username - FROM auth_user_md5 - WHERE perms='admin' - ORDER BY username"; -$page->mysql_assign($sql, 'admins'); - -$sql = "SELECT st_id,texte - FROM trackers.states - ORDER BY texte"; -$page->mysql_assign($sql, 'states'); - -$sql = "SELECT *, username - FROM trackers.followups - LEFT JOIN auth_user_md5 USING(user_id) - WHERE rq_id='{$_GET['rq_id']}'"; -$page->mysql_assign($sql, 'fups'); - -$page->run(); -?> diff --git a/include/tracker.inc.php b/include/tracker.inc.php deleted file mode 100644 index c919548..0000000 --- a/include/tracker.inc.php +++ /dev/null @@ -1,140 +0,0 @@ -id = $tr_id; - - $req = $globals->db->query("SELECT t.texte,t.description,t.perms,t.bits, - t.pri1,t.pri2,t.pri3,t.pri4,t.pri5, - m.ml_id,m.short,m.texte - FROM trackers.trackers AS t - LEFT JOIN trackers.mail_lists AS m USING(ml_id) - WHERE tr_id='$tr_id'"); - if(!mysql_num_rows($req)) { - $this->id = 0; - return; - } - $this->pris = array (); - - list($this->name,$this->desc,$this->perms,$tr_bits, - $this->pris[1],$this->pris[2],$this->pris[3],$this->pris[4],$this->pris[5], - $this->ml_id,$this->ml_short, $this->ml_text) = mysql_fetch_row($req); - mysql_free_result($req); - - $this->bits = new flagset($tr_bits); - } - - /** pseudo destructeur - * détruit toutes les références au tracker et le tracker lui même dans les bases tr_*. - * notifie tracker@polytechnique.org - */ - function destroy() { - mysql_query("DELETE FROM trackers.trackers WHERE tr_id='{$this->id}'"); - mysql_query("DELETE FROM trackers.mails WHERE tr_id='{$this->id}'"); - mysql_query("DELETE trackers.followups - FROM trackers.followups AS f,trackers.requests AS r - WHERE r.rq_id=f.rq_id AND r.tr_id='{$this->id}'"); - } - - function post($sujet, $text, $prio, $status) { - mysql_query("INSERT INTO trackers.requests - SET tr_id='{$this->id}',user_id='{$_SESSION['uid']}', - admin_id='-1',st_id='$status',pri='$prio', - summary='$sujet',texte='$text',date=NOW()"); - $id = mysql_insert_id(); - # TODO : mail - return $id; - } - - function read_perms_ok() { - if(has_perms()) - return true; - if(logged() && $this->perms == 'auth') - return true; - if($this->perms=="public") - return true; - return false; - } - - function post_perms_ok() { - if(has_perms()) - return true; - if(identified() && $this->perms == 'auth') - return true; - if($this->perms=="public") - return true; - return false; - } -} - -function tracker_clean_bd() { - global $globals; - $req = $globals->db->query("SELECT ml.ml_id - FROM trackers.mail_lists AS ml - LEFT JOIN trackers.trackers AS tr USING(ml_id) - WHERE tr.tr_id is null"); - if(mysql_num_rows($req)) { - $ids = Array(); - while(list($id) = mysql_fetch_row($req)) $ids[] = $id; - $globals->db->query("DELETE FROM trackers.mail_lists - WHERE ml_id IN (".implode(",",$ids).") AND texte!='null@polytechnique.org'"); - } - mysql_free_result($req); -} - - -function tracker_update($name,$desc,$perms,$ml_id,$bits,$pris, $tr_id=0) { - global $globals; - if($tr_id>0) { - $globals->db->query("UPDATE trackers.trackers - SET perms='$perms',ml_id='$ml_id',texte='$name',description='$desc',bits='{$bits->value}', - pri1='{$pris[1]}',pri2='{$pris[2]}',pri3='{$pris[3]}',pri4='{$pris[4]}',pri5='{$pris[5]}' - WHERE tr_id='$tr_id'"); - return $tr_id; - } else { - $globals->db->query("INSERT INTO trackers.trackers - SET perms='$perms',ml_id='$ml_id',texte='$name',description='$desc',bits='{$bits->value}', - pri1='{$pris[1]}',pri2='{$pris[2]}',pri3='{$pris[3]}',pri4='{$pris[4]}',pri5='{$pris[5]}'"); - return mysql_insert_id(); - } -} - - -function request_delete($tr_id, $rq_id) { - mysql_query("DELETE FROM trackers.requests WHERE rq_id='$rq_id' AND tr_id='$tr_id'"); - if(mysql_affected_rows()) { - mysql_query("DELETE FROM trackers.followups WHERE rq_id='$rq_id' AND tr_id='$tr_id'"); -# TODO mail - } -} - -?> diff --git a/plugins/insert.mkStats.php b/plugins/insert.mkStats.php index 9f0cc34..7a2e5de 100644 --- a/plugins/insert.mkStats.php +++ b/plugins/insert.mkStats.php @@ -1,12 +1,4 @@ - Valid - Bugs - Todo + Valid $stats_req - - - {$nbtrk[0]} / {$nbtrk[1]} - - - - - {$nbtrk[2]} / {$nbtrk[3]} - - EOF; diff --git a/scripts/migration.sql b/scripts/migration.sql index a9173c2..48b6859 100644 --- a/scripts/migration.sql +++ b/scripts/migration.sql @@ -19,10 +19,4 @@ ALTER TABLE `diogenes_logsessions` ADD INDEX ( `start` ); ALTER TABLE `diogenes_logevents` ADD INDEX ( `session` ); -- optim trackers -USE trackers; -DROP TABLE cat_abo; -DROP TABLE categories; -ALTER TABLE requests DROP COLUMN cat_id; -ALTER TABLE followups DROP COLUMN fu_id; -ALTER TABLE requests ADD INDEX (tr_id); -ALTER TABLE followups ADD INDEX (rq_id); +drop trackers; diff --git a/templates/admin/index.tpl b/templates/admin/index.tpl index 518a443..f711c70 100644 --- a/templates/admin/index.tpl +++ b/templates/admin/index.tpl @@ -1,4 +1,4 @@ -{* $Id: index.tpl,v 1.1 2004-02-04 19:47:47 x2000habouzit Exp $ *} +{* $Id: index.tpl,v 1.2 2004-07-08 09:20:57 x2000habouzit Exp $ *}
Administration Polytechnique.org
@@ -85,9 +85,9 @@ Développement Trackers : - BugList + TRACKERS   |   - TodoList + TICKETS diff --git a/templates/trackers/admin.tpl b/templates/trackers/admin.tpl deleted file mode 100644 index 6f43d12..0000000 --- a/templates/trackers/admin.tpl +++ /dev/null @@ -1,81 +0,0 @@ -{* $Id: admin.tpl,v 1.4 2004-02-23 18:04:33 x2000habouzit Exp $ *} - -{literal} - -{/literal} - -
- - -
- -

- [Nettoyer la table des mailing-lists] - [Ajouter un tracker] -

- -
- Liste des trackers -
- - - - - - - - -{foreach item=t from=$trackers} - - - - - -{/foreach} -
TrackerDescriptionGéré parAction
{$t.tr_name}{$t.description}{$t.short} - edit - del -
- -
- -
- Liste des trackers persos -
- - - - - - - - -{foreach item=t from=$persos} - - - - - -{/foreach} -
TrackerDescriptionGéré parAction
{$t.tr_name}{$t.description}{$t.short} - edit - del -
- -{* vim:set et sw=2 sts=2 sws=2: *} diff --git a/templates/trackers/answer.tpl b/templates/trackers/answer.tpl deleted file mode 100644 index c9e6b89..0000000 --- a/templates/trackers/answer.tpl +++ /dev/null @@ -1,46 +0,0 @@ -{* $Id: answer.tpl,v 1.1 2004-04-26 14:45:53 x2000habouzit Exp $ *} - -{dynamic} - -

- [Liste des trackers] - [Revenir au tracker] -[Revenir à la requete] -

- -
- {$request.summary} (posté le {$request.date|date_format:"%d %b %Y"}) -
- - - - -
Texte posté
{$request.texte|escape|nl2br}
- -
- -
- Répondre -
- -
- - - - - - - - - - -
texte de la réponse
- -
- -
-
- -{/dynamic} - -{* vim:set et sw=2 sts=2 sws=2: *} diff --git a/templates/trackers/edit.tpl b/templates/trackers/edit.tpl deleted file mode 100644 index 22dd6b9..0000000 --- a/templates/trackers/edit.tpl +++ /dev/null @@ -1,145 +0,0 @@ -{* $Id: edit.tpl,v 1.2 2004-02-23 17:06:59 x2000habouzit Exp $ *} - -
- Modification des propriétés du tracker -
- -{dynamic} - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Description
Nom du tracker - - -
Description - - -
propriétés
- - Tracker non notifiant
- Tracker Perso -
-
- bits && $tracker->bits->hasflag("no_mail")) || $smarty.post.no_mail}checked="checked"{/if} /> - cocher pour avoir un tracker silencieux -
- bits && $tracker->bits->hasflag("perso")) || $smarty.post.perso}checked="checked"{/if} /> - cocher pour avoir un tracker perso -
- Droits - - -
Mailing List - - -
priorités
Priorité 5 - -
Priorité 4 - -
Priorité 3 - -
Priorité 2 - -
Priorité 1 - -
Création d'une ML (laisser vide pour ne pas l'utiliser)
Nom court - - -
Adresse (avec le @) - -
- - - -
-
- -{/dynamic} - -{* vim:set et sw=2 sts=2 sws=2: *} diff --git a/templates/trackers/index.tpl b/templates/trackers/index.tpl deleted file mode 100644 index 7bdbf38..0000000 --- a/templates/trackers/index.tpl +++ /dev/null @@ -1,22 +0,0 @@ -{* $Id: index.tpl,v 1.1 2004-02-22 21:04:23 x2000habouzit Exp $ *} - -
- Liste des trackers publics -
- - - - - - - -{foreach item=t from=$trackers} - - - - - -{/foreach} -
TrackerDescriptionGéré par
{$t.tr_name}{$t.description}{$t.short}
- -{* vim:set et sw=2 sts=2 sws=2: *} diff --git a/templates/trackers/post.tpl b/templates/trackers/post.tpl deleted file mode 100644 index 6511887..0000000 --- a/templates/trackers/post.tpl +++ /dev/null @@ -1,59 +0,0 @@ -{* $Id: post.tpl,v 1.1 2004-02-23 18:43:41 x2000habouzit Exp $ *} - -{dynamic} - -

- [Liste des trackers] - [Retourner au tracker] -

- -
- Poster dans {$tracker->name} -
- -
- - - - - - - - - - - - - - - - - - - -
- Priorité - - -
- Statut - - -
Sujet
- -
-
- -{/dynamic} - -{* vim:set et sw=2 sts=2 sws=2: *} diff --git a/templates/trackers/show.tpl b/templates/trackers/show.tpl deleted file mode 100644 index 9c3876f..0000000 --- a/templates/trackers/show.tpl +++ /dev/null @@ -1,70 +0,0 @@ -{* $Id: show.tpl,v 1.7 2004-04-26 14:45:53 x2000habouzit Exp $ *} - -{literal} - -{/literal} - -
- -
- -{dynamic} - -

- [Liste des trackers] - [Poster dans ce tracker] -

- -
- Tracker {$tracker->name} -
- - - - - - -{foreach item=rq from=$requests} - - - - - -{/foreach} - -{foreach item=rq from=$close} - - - - - -{/foreach} -
DateSujetAssigné à
{$rq.date|date_format:"%d %b %Y"}{$rq.summary}{if $rq.username}{$rq.username}{else}-{/if}
{$rq.date|date_format:"%d %b %Y"}{$rq.summary}delete
-{/dynamic} - -
-
- Couleurs des priorités -
- - - - - - - - -
12345
- -{* vim:set et sw=2 sts=2 sws=2: *} diff --git a/templates/trackers/show_rq.tpl b/templates/trackers/show_rq.tpl deleted file mode 100644 index 7b57e46..0000000 --- a/templates/trackers/show_rq.tpl +++ /dev/null @@ -1,103 +0,0 @@ -{* $Id: show_rq.tpl,v 1.3 2004-04-26 14:24:08 x2000habouzit Exp $ *} - -{dynamic} - -

- [Liste des trackers] - [Revenir au tracker] -

- -
- {$request.summary} (posté le {$request.date|date_format:"%d %b %Y"}) -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - -
prioritéSoumis parAssigné à Etat actuel
- {$tracker->pris[$request.pri]} - - {if $request.username} - {$request.username} - {else}-{/if} - - {if $request.admin} - {$request.admin} - {else}-{/if} - - {$request.state} -
Texte posté
{$request.texte|escape|nl2br}
Changer des propriétés
- - - {if $request.username} - {$request.username} - {else}-{/if} - - - - -
- -
-
- -
- -
- Réponses -
-

- [Répondre] -

-{if $fups} - - {foreach item=fup from=$fups} - - - {/foreach} -
{$fup.username}   le {$fup.date|date_format:"%d %b %Y"}
{$fup.texte|escape|nl2br}
-

- [Répondre] -

-{/if} -{/dynamic} - -{* vim:set et sw=2 sts=2 sws=2: *} -- 2.1.4