[Devel] r333 - trunk

svn at agendadulibre.org svn at agendadulibre.org
Ven 9 Mai 14:15:26 CEST 2008


Author: thomas
Date: Fri May  9 14:11:55 2008
New Revision: 333

Log:
Édition des évènements déjà validés. Désormais, lorsqu'un modérateur
est connecté, un lien « Éditer cet évènement » s'affiche sur la page
de chaque évènement, permettant de l'éditer.



Modified:
   trunk/calendar.css
   trunk/editevent.php
   trunk/showevent.php

Modified: trunk/calendar.css
==============================================================================
--- trunk/calendar.css	(original)
+++ trunk/calendar.css	Fri May  9 14:11:55 2008
@@ -445,4 +445,5 @@
           width: 70%;
           padding: 1em;
           margin: auto;
+          margin-bottom: 10px;
 }
\ No newline at end of file

Modified: trunk/editevent.php
==============================================================================
--- trunk/editevent.php	(original)
+++ trunk/editevent.php	Fri May  9 14:11:55 2008
@@ -30,7 +30,7 @@
 {
   global $moderatorlist;
 
-  $sql = "SELECT * FROM events WHERE id=" . $db->quote_smart($id);
+  $sql = "select * from events where id=" . $db->quote_smart($id);
   $ret = $db->query($sql);
   if ($ret == FALSE)
     {
@@ -74,16 +74,31 @@
 
   $diff = arr_diff (split ("\n", $oldevent_str), split ("\n", $newevent_str), 1);
 
-  calendar_mail ($moderatorlist, "",
-		 "Édition de l'évènement '" . $title . "'",
-		 "Bonjour,\n\n" .
-		 "L'évènement '" . stripslashes($title) . "' a été modifié par " . $user->get_login() . ".\n".
-		 "Modifications apportées:\n\n" .
-		 $diff . "\n\n".
-		 "Bonne journée\n\n".
-		 "-- L'équipe de modération");
+  if ($oldevent->moderated)
+    {
+      calendar_mail ($moderatorlist, "",
+		     "Édition de l'évènement validé '" . $title . "'",
+		     "Bonjour,\n\n" .
+		     wordwrap("L'évènement validé '" . stripslashes($title) . "' a été modifié par " . $user->get_login() . ".\n") .
+		     "Modifications apportées:\n\n" .
+		     $diff . "\n\n".
+		     "Bonne journée\n\n".
+		     "-- L'équipe de modération");
 
-  return 0;
+      return "showevent.php?id=" . $oldevent->id;
+    }
+  else
+    {
+      calendar_mail ($moderatorlist, "",
+		     "Édition de l'évènement '" . $title . "'",
+		     "Bonjour,\n\n" .
+		     wordwrap("L'évènement '" . stripslashes($title) . "' a été modifié par " . $user->get_login() . ".\n") .
+		     "Modifications apportées:\n\n" .
+		     $diff . "\n\n".
+		     "Bonne journée\n\n".
+		     "-- L'équipe de modération");
+      return "moderation.php";
+    }
 }
 
 $db = new db();
@@ -93,7 +108,7 @@
 
 if ($_POST['__event_save'])
 {
-  $ret = save_event ($db, $user, $id,
+  $returnaddr = save_event ($db, $user, $id,
 		     $_POST['__event_title'],
 		     mktime($_POST['__event_start_hour'],
 			    $_POST['__event_start_minute'],
@@ -115,7 +130,8 @@
 		     $_POST['__event_contact'],
 		     $_POST['__event_submitter'],
 		     $_POST['__event_tags']);
-  header("Location: moderation.php");
+
+  header("Location: " . $returnaddr);
 }
 
 put_header("Édition d'un évènement");
@@ -171,6 +187,13 @@
 echo "<a href=\"moderation.php\">Modération</a>&nbsp;&gt;&gt;&gt&nbsp;Prévisualisation de l'évènement";
 echo "</p>";
 
+if ($event->moderated)
+{
+  echo '<div class="moderationbox">';
+  echo '<p style="font-weight: bold;">Attention, cet évènement est déjà modéré. Toute modification sera immédiatement visible sur le site.</p>';
+  echo '</div>';
+}
+
 echo '<div class="moderationbox">';
 echo format_event ($db, $title, $start, $end, $description, $city,
 		   $region, $locality, $url, $contact, $submitter,

Modified: trunk/showevent.php
==============================================================================
--- trunk/showevent.php	(original)
+++ trunk/showevent.php	Fri May  9 14:11:55 2008
@@ -22,85 +22,98 @@
 
 include("bd.inc.php");
 include("funcs.inc.php");
+include("session.inc.php");
 
 $db = new db();
+$session = new session();
 
 put_header("Informations sur un évènement");
 
-$event = fetch_event ($db, get_safe_integer('id', 0));
+$event_id = get_safe_integer('id', 0);
+$event = fetch_event ($db, $event_id);
 
-if ($event)
+if (! $event)
 {
-  echo "<div id=\"lug-list\"><h1>Groupes d'utilisateurs de la région</h1>";
+  echo "<p class=\"error\">Pas d'évènement avec cet identifiant.</p>";
+  put_footer();
+  exit;
+}
 
-  $lugs = $db->query ("select distinct region, name, url from lugs where region = '" .
-		      $event->region . "'");
+echo "<div id=\"lug-list\"><h1>Groupes d'utilisateurs de la région</h1>";
 
-  if (mysql_num_rows ($lugs) == 0)
-    {
-      echo "Pas de groupes d'utilisateur.<br/>";
-    }
-  else
-    {
-      echo " <ul>";
+$lugs = $db->query ("select distinct region, name, url from lugs where region = '" .
+		    $event->region . "'");
 
-      while ($lug = mysql_fetch_object ($lugs))
-	{
-	  echo "<li><a href=\"" . $lug->url . "\">" . $lug->name . "</a> (";
-	  $dpts = $db->query ("select distinct department from lugs where name = '" . $lug->name . "'");
-	  $i = 1;
-	  while ($dpt = mysql_fetch_object ($dpts))
-	    {
-	      echo $dpt->department;
-	      if ($i != mysql_num_rows($dpts))
-		echo ", ";
-	      $i++;
-	    }
-	  echo ")</li>";
-	}
-      echo " </ul>";
-    }
+if (mysql_num_rows ($lugs) == 0)
+{
+  echo "Pas de groupes d'utilisateur.<br/>";
+}
+else
+{
+  echo " <ul>";
 
-  if (in_array("libre-en-fete-2007", split(" ", $event->tags)))
+  while ($lug = mysql_fetch_object ($lugs))
     {
-      echo "<hr/>";
-      echo "<h1>Libre en Fête 2007</h1>";
-      echo "<p>";
-      echo "<a href=\"http://www.libre-en-fete.net\">";
-      echo "<img src=\"lef-2007.png\" width=\"100\" style=\"float: right; margin-left: 5px; border: 0;\"/>";
-      echo "</a>";
-      echo "Cet évènement s'inscrit dans le cadre de la sixième édition du <a href=\"http://2007.libre-en-fete.net\">Libre en Fête 2007</a>.";
-      echo "</p>";
+      echo "<li><a href=\"" . $lug->url . "\">" . $lug->name . "</a> (";
+      $dpts = $db->query ("select distinct department from lugs where name = '" . $lug->name . "'");
+      $i = 1;
+      while ($dpt = mysql_fetch_object ($dpts))
+	{
+	  echo $dpt->department;
+	  if ($i != mysql_num_rows($dpts))
+	    echo ", ";
+	  $i++;
+	}
+      echo ")</li>";
     }
+  echo " </ul>";
+}
 
-  if (in_array("libre-en-fete-2008", split(" ", $event->tags)))
-    {
-      echo "<hr/>";
-      echo "<h1>Libre en Fête 2008</h1>";
-      echo "<p>";
-      echo "<a href=\"http://www.libre-en-fete.net\">";
-      echo "<img src=\"lef-2007.png\" width=\"100\" style=\"float: right; margin-left: 5px; border: 0;\"/>";
-      echo "</a>";
-      echo "Cet évènement s'inscrit dans le cadre de la septième édition du <a href=\"http://www.libre-en-fete.net\">Libre en Fête</a>.";
-      echo "</p>";
-    }
+if (in_array("libre-en-fete-2007", split(" ", $event->tags)))
+{
+  echo "<hr/>";
+  echo "<h1>Libre en Fête 2007</h1>";
+  echo "<p>";
+  echo "<a href=\"http://www.libre-en-fete.net\">";
+  echo "<img src=\"lef-2007.png\" width=\"100\" style=\"float: right; margin-left: 5px; border: 0;\"/>";
+  echo "</a>";
+  echo "Cet évènement s'inscrit dans le cadre de la sixième édition du <a href=\"http://2007.libre-en-fete.net\">Libre en Fête 2007</a>.";
+  echo "</p>";
+}
 
-  echo "</div>";
+if (in_array("libre-en-fete-2008", split(" ", $event->tags)))
+{
+  echo "<hr/>";
+  echo "<h1>Libre en Fête 2008</h1>";
+  echo "<p>";
+  echo "<a href=\"http://www.libre-en-fete.net\">";
+  echo "<img src=\"lef-2007.png\" width=\"100\" style=\"float: right; margin-left: 5px; border: 0;\"/>";
+  echo "</a>";
+  echo "Cet évènement s'inscrit dans le cadre de la septième édition du <a href=\"http://www.libre-en-fete.net\">Libre en Fête</a>.";
+  echo "</p>";
+}
 
-  echo format_event ($db,
-		     $event->title,
-		     date_mysql2timestamp($event->start_time),
-		     date_mysql2timestamp($event->end_time),
-		     $event->description,
-		     $event->city,
-		     $event->region,
-		     $event->locality,
-		     $event->url,
-		     $event->contact,
-		     $event->submitter,
-		     $event->tags);
+if ($session->exists("agenda_libre_id"))
+{
+  echo "<h1>Actions</h1>";
+  echo "<a href=\"editevent.php?id=" . $event_id . "\">Éditer évènement</a>";
 }
 
+echo "</div>";
+
+echo format_event ($db,
+		   $event->title,
+		   date_mysql2timestamp($event->start_time),
+		   date_mysql2timestamp($event->end_time),
+		   $event->description,
+		   $event->city,
+		   $event->region,
+		   $event->locality,
+		   $event->url,
+		   $event->contact,
+		   $event->submitter,
+		   $event->tags);
+
 put_footer();
 
 ?>
\ No newline at end of file


Plus d'informations sur la liste de diffusion Devel