suppression des requetes fermées
authorx2000habouzit <x2000habouzit>
Mon, 23 Feb 2004 19:09:38 +0000 (19:09 +0000)
committerx2000habouzit <x2000habouzit>
Mon, 23 Feb 2004 19:09:38 +0000 (19:09 +0000)
htdocs/trackers/show.php
include/tracker.inc.php
templates/trackers/show.tpl

index 19632c5..fa5ac09 100644 (file)
@@ -8,14 +8,26 @@ $tracker = new Tracker($_GET['tr_id']);
 if(empty($tracker->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}
+        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();   
 ?>
index 110ed0a..684b726 100644 (file)
@@ -128,4 +128,13 @@ function tracker_update($name,$desc,$perms,$ml_id,$bits,$pris, $tr_id=0) {
     }
 }
 
+
+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
+    }
+}
+
 ?>
index 57b79e9..e60a170 100644 (file)
@@ -1,4 +1,23 @@
-{* $Id: show.tpl,v 1.1 2004-02-23 18:04:33 x2000habouzit Exp $ *}
+{* $Id: show.tpl,v 1.2 2004-02-23 19:09:38 x2000habouzit Exp $ *}
+
+{literal}
+<script type="text/javascript">
+  <!--
+  function del( myid ) {
+    if( confirm ("You are about to delete this request !\nDo you still want to proceed ?") ) {
+      ops = document.getElementById('op');
+      ops.id.value = myid;
+      ops.submit();
+      return action('del', myid);
+    }
+  }
+  -->
+</script>
+{/literal}
+
+<form id="op" method="post" action="{$smarty.server.REQUEST_URI}">
+  <input type="hidden" id="id" name="id" value="" />
+</form>
 
 {dynamic}
 
     <td class="right">{if $rq.username}<a href="mailto:{$rq.username}@polytechnique.org">{$rq.username}</a>{else}-{/if}</td>
   </tr>
 {/foreach}
+<tr><th colspan="3"></th></tr>
+{foreach item=rq from=$close}
+  <tr class="pri{$rq.pri}">
+    <td>{$rq.date|date_format:"%m&nbsp;%Y"}</td>
+    <td><a href="show_rq.php?tr_id={$smarty.get.tr_id}&amp;rq_id={$rq.rq_id}">{$rq.summary}</a></td>
+    <td class="action"><a href="javascript:del({$rq.rq_id})">delete</a></td>
+  </tr>
+{/foreach}
 </table>
 {/dynamic}