[Devel] r436 - branches/dui

svn at agendadulibre.org svn at agendadulibre.org
Mer 18 Mar 20:34:09 CET 2009


Author: ldayot
Date: Wed Mar 18 20:34:07 2009
New Revision: 436

Log:
Plusieurs corrections de coquilles suite au passage e la class event.
Possiiblite de forcer la soumission d'un evenement meme si la 
verification n'est pas positive, notamment pour l'injection depuis un 
autre agenda par le script de soumission.

Modified:
   branches/dui/cancelevent.php
   branches/dui/class.event.inc.php
   branches/dui/editevent.php
   branches/dui/rejectevent.php
   branches/dui/rss.php
   branches/dui/submit.php

Modified: branches/dui/cancelevent.php
==============================================================================
--- branches/dui/cancelevent.php	Mon Mar  2 16:20:17 2009	(r435)
+++ branches/dui/cancelevent.php	Wed Mar 18 20:34:07 2009	(r436)
@@ -57,7 +57,7 @@
 		 $oldevent->formatAscii() . "\n".
 		 "=======================================================\n\n" .
 		 "Bonne journée,\n\n".
-		 "-- L'équipe de modération");
+		 "-- L'équipe de modération";
   calendar_mail ($moderatorlist, "",
 		 "Annulation de l'évènement '" . stripslashes($oldevent->title) . "'",
 		 $mailBody);
@@ -140,7 +140,9 @@
   $posturl = "?id=" . $id . "&secret=" . $secret;
 
 echo '<div class="moderationbox">';
-echo '<p style="font-weight: bold;">Attention, cet &eacute;v&egrave;nement est d&eacute;j&agrave; mod&eacute;r&eacute;. Cette annulation le fera dispara&icirc;tre de '. $adl_title. '.</p>';
+if ($event->moderate)
+  echo '<p style="font-weight: bold;">Attention, cet &eacute;v&egrave;nement est d&eacute;j&agrave; mod&eacute;r&eacute;. '.
+    'Cette annulation le fera dispara&icirc;tre de '. $adl_title. '.</p>';
 echo '<form action="' . $posturl . '" method="post">';
 echo '<p style="text-align: center;">Confirmez-vous l\'annulation de cet &eacute;v&egrave;nement&nbsp;?</p>';
 echo '<input name="__event_cancelation_confirm" type="submit" value="Oui"/>&nbsp;';

Modified: branches/dui/class.event.inc.php
==============================================================================
--- branches/dui/class.event.inc.php	Mon Mar  2 16:20:17 2009	(r435)
+++ branches/dui/class.event.inc.php	Wed Mar 18 20:34:07 2009	(r436)
@@ -125,7 +125,7 @@
       "submitter=" .   $this->db->quote_smart ($this->submitter);
     if ($this->id==0)
       $sql .= ", moderated='0', ".
-        "secret='" . ($secret = md5(uniqid(rand(), true))) . "', ".
+        "secret='" . ($this->secret = md5(uniqid(rand(), true))) . "', ".
         "submission_time=NOW()";
     else
       $sql .= " WHERE id=" .    $this->db->quote_smart ($this->id);

Modified: branches/dui/editevent.php
==============================================================================
--- branches/dui/editevent.php	Mon Mar  2 16:20:17 2009	(r435)
+++ branches/dui/editevent.php	Wed Mar 18 20:34:07 2009	(r436)
@@ -31,7 +31,7 @@
 
 function alertModerators ($event, $modifier, $diff)
 {
-  global $moderatorlist;
+  global $moderatorlist, $user;
 
   if ($event->moderated)
   {
@@ -43,7 +43,6 @@
         $diff . "\n\n".
         "Bonne journée\n\n".
         "-- L'équipe de modération";
-      $return = "showevent.php?id=" . $event->id;
   }
   else
   {
@@ -52,17 +51,16 @@
          "L'évènement '" . stripslashes($event->title). 
             "' a été modifié par " . $modifier . ".\n".
          "Cet évènement est en attente de modération à l'adresse\n" .
-         calendar_absolute_url("moderate.php#" . $event->id) . "\n\n".
+         calendar_absolute_url("moderation.php#" . $event->id) . "\n\n".
          "Modifications apportées:\n\n" .
          $diff . "\n\n".
          "Bonne journée\n\n".
          "-- L'équipe de modération";
-     $return = "moderation.php";
   } // end if else
 
   calendar_mail($moderatorlist, "", $mail_title, $mail_body);
 
-  return $return;
+  return ($user ? "moderation.php" : "showevent.php?id=" . $event->id);
 }
 
 function updateEvent($user, $newEvent, $oldEvent)
@@ -109,7 +107,7 @@
 }
 
 // check secret, if not is user logon?
-if ($secret == FALSE)
+if ($secret == false)
 {
   $user = new user($db);
 }
@@ -184,9 +182,9 @@
 $posturl = "?id=" . $id. ($user ? "" : "&secret=" . $secret);
 
 if (isset($updatedEvent))
-  $updatedEvent->edit(true, true, $posturl);
+  $updatedEvent->edit($_preview=true, $_valid=true, $posturl);
 else
-  $event->edit(true, true, $posturl);
+  $event->edit($_preview=true, $_valid=true, $posturl);
 echo '</div>';
 
 put_footer();

Modified: branches/dui/rejectevent.php
==============================================================================
--- branches/dui/rejectevent.php	Mon Mar  2 16:20:17 2009	(r435)
+++ branches/dui/rejectevent.php	Wed Mar 18 20:34:07 2009	(r436)
@@ -49,8 +49,8 @@
     case "duplicate" : 
       $reason = wordwrap($GLOBALS["adl_double_message"]); break;
     case "custom" : 
-      $reason = wordwrap("Toutefois, votre &eacute;v&egrave;nement n'a".
-        " pour le moment pas retenu l'attention des mod&eacute;rateurs,".
+      $reason = wordwrap("Toutefois, votre évènement n'a".
+        " pour le moment pas retenu l'attention des modérateurs,".
         " pour la raison suivante : " . stripslashes($_POST['customtext']));
         break;
   }

Modified: branches/dui/rss.php
==============================================================================
--- branches/dui/rss.php	Mon Mar  2 16:20:17 2009	(r435)
+++ branches/dui/rss.php	Wed Mar 18 20:34:07 2009	(r436)
@@ -195,7 +195,8 @@
   $event = new event($db, $event_id->id);
   $start_day = onlyday_timestamp2humanreadable($event->start);
   $end_day   = onlyday_timestamp2humanreadable($event->end);
-  //list($longitude, $latitude) = get_city_coordinates($db, $event->city);
+  if (!$event->longitude || !$event->latitude)
+    list($event->longitude, $event->latitude) = get_city_coordinates($db, $event->city);
   
   echo "  <item rdf:about=\"" . 
     calendar_absolute_url("showevent.php?id=" . $event->id) . "\">\n";

Modified: branches/dui/submit.php
==============================================================================
--- branches/dui/submit.php	Mon Mar  2 16:20:17 2009	(r435)
+++ branches/dui/submit.php	Wed Mar 18 20:34:07 2009	(r436)
@@ -50,12 +50,21 @@
   return $return;
 }
 
+$_check_ok  = false;
+$_sent      = false;
+$_preview   = isset($_POST['__event_preview']);
 
 if (isset($_POST['__event_title'])) // if from form
 {
   $event->fromForm();
   $event->check();
-  if ($event->error==0)
+
+  $_check_ok = ($event->error==0 || $_POST['__event_force']);
+
+  if ($event->message>"")
+    error($event->message);
+
+  if ($_check_ok && $_POST['__event_save'])
   {
     if (! $event->submitter)
       $event->submitter = $event->contact;
@@ -68,6 +77,7 @@
       $event->notifySubmitter();
       echo "<p><b>Votre évènement a bien été ajouté à la liste des évènements en attente de modération. " .
            "Il apparaîtra en ligne dès qu'un modérateur l'aura validé.</b></p>";
+      $_sent = true;
     }
     else
     {
@@ -75,27 +85,25 @@
     }
     echo "<p><a href=\"index.php\">Retour à l'Agenda</a></p>";
 
-    if (! $event->error) $_sent = true;
-  }
+  } 
   $_preview = true;
 }
 
 /* Preview event */
-if (isset($_POST['__event_preview']) || isset($_preview))
+if ($_preview)
 {
   echo "<hr/>";
   echo $event->formatHTML();
   echo "<hr/>";
-  $_preview = true;
 }
 
-if (!isset($_sent) || $sent)
+if (! $_sent)
 {
   echo $adl_submit_summary;
   echo "<div id=\"advises\">\n$adl_submit_advises</div>\n";
   if (isset($_POST['__event_title'])) echo $_POST['__event_title'];
 
-  $event->edit(true, isset($ret) && $ret);
+  $event->edit(true, $_check_ok);
 }
 
 put_footer();


Plus d'informations sur la liste de diffusion Devel