<?php
/***************************************************************************
                          news.php -  management news library
                             -------------------
    begin                : Septembre  UTC 2001
    copyright            : (C) 2002 by NADAL Jean-Baptiste
    email                : jbnadal@ifrance.com
 ***************************************************************************
 *
 *  Management of the news box in the first page.
 *
 ***************************************************************************
 *                                                                         *
 *   This program is free software; you can redistribute it and/or modify  *
 *   it under the terms of the GNU General Public License as published by  *
 *   the Free Software Foundation; either version 2 of the License, or     *
 *   (at your option) any later version.                                   *
 *                                                                         *
 ***************************************************************************
 * $Id: news.php,v 1.4 2002/12/15 20:23:15 jb Exp $
 ***************************************************************************/

if (file_exists ("conf.php"))
   require ("conf.php");
else
   require ("./Scripts/conf.php");

class News
{
   // ===============================
   // Constructeur de la classe de statistique
   function News ()
   {
   }

   function afficheAjout ()
   {
      global $racine, $page_index;

      echo "<center> Selectionner la nouvelle :<br>
              <form action=$racine/$page_index?page=AdmNews 
                    method=post>
              <script language=\"javascript\">
                              var datelo =DonneDate();
                              document.write(\"<input type=hidden name=".
          "datecourante value=\"+datelo+\" />\");
                </script>
                <select name=numNews>
                        <option value = 1 selected> MaJ de l'éditorial
                        <option value = 2  > MaJ de l'Historique
                        <option value = 3  > MaJ de l'Agenda
                        <option value = 4  > MaJ du Repertoire
                        <option value = 5  > MaJ du Fonctionnement
                        <option value = 6  > MaJ des Contacts
                        <option value = 7  > MaJ du Recrutement
                        <option value = 8  > MaJ du livre d'Or
                        <option value = 9  > MaJ de l'Album Photo
                        <option value = 10 > MaJ de la video
                        <option value = 11 > MaJ de la Section Membre
                        <option value = 12 > MaJ des partitions
                        <option value = 13 > MaJ des articles de presse
                        
        </select><br><br>
        ou entrez directement le texte : <br>
        <input type=text name=newsTxt size=32 value=\"\" /><br /> <br/>
        <input type=submit name=envoi value=\"Ajouter une news\" />
        </form></center><br><br>\n";
   }

   function GetTxtNews ($elem)
   {
      switch ($elem) {
         case 1:
            $szNiews = "Mise à jour de l'éditorial";
            break;
         case 2:
            $szNiews = "Mise à jour de l'Historique";
            break;
         case 3:
            $szNiews = "Mise à jour de l'Agenda";
            break;
         case 4:
            $szNiews = "Mise à jour du Repertoire";
            break;
         case 5:
            $szNiews = "Mise à jour du Fonctionnement";
            break;
         case 6:
            $szNiews = "Mise à jour des Contacts";
            break;
         case 7:
            $szNiews = "Mise à jour du Recrutement";
            break;
         case 8:
            $szNiews = "Mise à jour du livre d'Or";
            break;
         case 9:
            $szNiews = "Mise à jour de l'Album Photo";
            break;
         case 10:
            $szNiews = "Mise à jour de la video";
            break;
         case 11:
            $szNiews = "Mise à jour de Section Membre";
            break;
         case 12:
            $szNiews = "Mise à jour des partitions ";
            break;
         case 13:
            $szNiews = "Mise à jour des articles de presse ";
            break;
         default:
            $szNiews = "BUG";
      }
      return $szNiews;
   }

   function Ajoute ($numNews, $datelo, $newsTxt)
   {
      global $sql_bdd, $table_news;
      
      if ($datelo == "")
         $datelo = date ("d /m /Y H:i");

      /*echo "numNews : $numNews,datelo : $datelo ,newsTxt : $newsTxt <br>";*/

      if ($numNews == "") {
         echo "<br><br><center><font size=6 color=red><b>BUG !!! ".
            "Ajout impossible la news est vide</b></font></center><br><br>\n";
         return -1;
      }
      else {
         // On se connecte sur la base
         $connect_db = jb_sql_connect (false);
         $resultat = mysql_db_query ($sql_bdd, "select * from $table_news",
                                     $connect_db);

         $i = 0;
         $nDejaVu = 0;
         $nNumDejaVu = 0;

         while ($row = mysql_fetch_row ($resultat)) {
            $T_resul [$i]["nouvelle"] = $row[1];
            $T_resul [$i]["date"] = $row[2];
            $T_resul [$i]["type"] = $row[3];
            /* On vérifie si un enregistrement a le meme type que la nouvelle
                news.*/
                                                       
            if (($row[3] == $numNews) && ($row[3] != 0) && 
                ($nDejaVu != 1) && ($newsTxt == "")){
               $nDejaVu = 1; 
               $nNumDejaVu = $i;
            }

            $i++;
         }

         // On en a plus besoin, donc on libère la mémoire
         mysql_free_result ($resultat);

         if ($nDejaVu == 1) {
            if ($nNumDejaVu == 2) {
               $T_resul [2]["nouvelle"] = $T_resul [1]["nouvelle"];
               $T_resul [2]["date"] = $T_resul [1]["date"];
               $T_resul [2]["type"] = $T_resul [1]["type"];
               
               $T_resul [1]["nouvelle"] = $T_resul [0]["nouvelle"];
               $T_resul [1]["date"] = $T_resul [0]["date"];
               $T_resul [1]["type"] = $T_resul [0]["type"];
            }
            else if ($nNumDejaVu == 1) {
               $T_resul [1]["nouvelle"] = $T_resul [0]["nouvelle"];
               $T_resul [1]["date"] = $T_resul [0]["date"];
               $T_resul [1]["type"] = $T_resul [0]["type"];
            }
         }
         else {
            $T_resul [2]["nouvelle"] = $T_resul [1]["nouvelle"];
            $T_resul [2]["date"] = $T_resul [1]["date"];
            $T_resul [2]["type"] = $T_resul [1]["type"];
            
            $T_resul [1]["nouvelle"] = $T_resul [0]["nouvelle"];
            $T_resul [1]["date"] = $T_resul [0]["date"];
            $T_resul [1]["type"] = $T_resul [0]["type"];
         }
         $T_resul [0]["date"] = $datelo;
         if ($newsTxt == "") {
            $T_resul [0]["nouvelle"] = $this->GetTxtNews ($numNews);
            $T_resul [0]["type"] = $numNews;
         }
         else {
            $T_resul [0]["nouvelle"] = $newsTxt;
            $T_resul [0]["type"] = 0;
         }

      }
    /* Une fois la rotation du tableau effectué, il ne reste plus qu'a 
       mettre a jour la base. */
      for ($i = 0; $i < 3; $i++) {
         /*$i=2;*/
         $query = "update $table_news  set nouvelle=\"".
            $T_resul [$i]["nouvelle"]."\", date=\"".$T_resul [$i]["date"].
            "\", type=\"".$T_resul [$i]["type"]."\" where id=".($i+1);
         /*echo "$query <br>";*/

         $resultat = mysql_db_query ($sql_bdd, $query, $connect_db);
         /*echo "nouvelle=".$T_resul [$i]["nouvelle"]."' ,date='".
            $T_resul [$i]["date"]."',type='".$T_resul [$i]["type"]."<br>";*/
     }
      
      MYSQL_CLOSE;
   }
   
} // fin de la classe News

?>
