| 
webmaster@0
 | 
     1 <?php | 
| 
webmaster@0
 | 
     2     setlocale(LC_ALL, "fr_FR.utf8@euro"); | 
| 
webmaster@0
 | 
     3     ini_set("display_errors", "off"); | 
| 
webmaster@0
 | 
     4      include("classes.php"); | 
| 
webmaster@0
 | 
     5      $id = $_GET['id']; | 
| 
webmaster@0
 | 
     6      $Data = new DataAccess; | 
| 
webmaster@0
 | 
     7      $Req = new Requete; | 
| 
webmaster@0
 | 
     8       | 
| 
webmaster@0
 | 
     9      $Auteur=$Req->get('Auteur'); | 
| 
webmaster@0
 | 
    10      $Adresse=$Req->get('Adresse'); | 
| 
webmaster@0
 | 
    11      $AdresseMail = $Req->get('AdresseMail'); | 
| 
webmaster@0
 | 
    12      $Comment=$Req->get('Comment'); | 
| 
webmaster@0
 | 
    13      $DateComment=gmdate("Y-m-d H:i:s", time() + 3600*2); | 
| 
webmaster@0
 | 
    14      if(!is_null($Auteur) && $Auteur!='Votre Nom' && $Auteur != $Adresse && !empty($Comment)) { | 
| 
webmaster@0
 | 
    15 	// Prévention d'un "cassage" par ajout d'un commentaire incorrectement formaté | 
| 
webmaster@0
 | 
    16 	$ip = $_SERVER['REMOTE_ADDR']; | 
| 
webmaster@0
 | 
    17 	$Auteur = str_replace(array('<', '>'), array('<', '>'), $Auteur); | 
| 
webmaster@0
 | 
    18 	/*if(!DOMDocument::loadXML('<comment>' . $Comment . '</comment>')) | 
| 
webmaster@0
 | 
    19 		$Comment = '<![CDATA[' . str_replace(']]>', ']]>',$Comment) . ']]>';*/ | 
| 
webmaster@0
 | 
    20 	if(DOMDocument::loadXML('<comment>' . $Comment . '</comment>')) { | 
| 
webmaster@0
 | 
    21 	$Data->debugQuery(" | 
| 
webmaster@0
 | 
    22 		INSERT INTO Commentaires(MessId, Auteur, Adresse, AdresseMail, Comment, DateComment, ip) | 
| 
webmaster@0
 | 
    23 		VALUES({$id}, '{$Auteur}', '{$Adresse}', '{$AdresseMail}', '{$Comment}', '{$DateComment}', '{$ip}') | 
| 
webmaster@0
 | 
    24 	"); | 
| 
webmaster@0
 | 
    25 	$Data->Query("UPDATE Mess SET NbCommentaires=NbCommentaires+1 WHERE num_mess={$id}"); | 
| 
webmaster@0
 | 
    26 	mail('webmaster+blogcomment@defr.org', 'Nouveau commentaire sur de ' . $Auteur, $Auteur . " vient de mettre en ligne le commentaire suivant:  \n" . wordwrap($Comment, 70)); | 
| 
webmaster@0
 | 
    27 	} | 
| 
webmaster@0
 | 
    28 	else { | 
| 
webmaster@0
 | 
    29 		$infos = 'Votre commentaire doit etre fait de XML valide pour apparaitre.'; | 
| 
webmaster@0
 | 
    30 	} | 
| 
webmaster@0
 | 
    31       } | 
| 
webmaster@0
 | 
    32  | 
| 
webmaster@0
 | 
    33      $Data->Query("SELECT * FROM Mess WHERE num_mess = {$id}"); | 
| 
webmaster@0
 | 
    34      $row = $Data->GetRow(); | 
| 
webmaster@0
 | 
    35       $mood = ''; | 
| 
webmaster@0
 | 
    36       $Mess=$Data->utf8_ensure(str_replace("<P>","<p>",str_replace("</P>","</p>", $row['Message']))); | 
| 
webmaster@0
 | 
    37       $dateFormatee = strftime("%A %d %B %Y, %Hh%M", strtotime($row['DatePost'])); | 
| 
webmaster@0
 | 
    38       $Titre = $Data->utf8_ensure($row['Titre']); | 
| 
webmaster@0
 | 
    39       $Titre_url = str_replace(" ", "_", strip_tags($Titre)); | 
| 
webmaster@0
 | 
    40       $Titre_url = str_replace("-", "_", $Titre_url); | 
| 
webmaster@0
 | 
    41       include("top.php"); | 
| 
webmaster@0
 | 
    42       if(!empty($row['Emot'])) { | 
| 
webmaster@0
 | 
    43 	$mood = "<img src='/blog/mood/{$row['Emot']}.png' alt='Mood : {$row['Emot']}' class='mood' />"; | 
| 
webmaster@0
 | 
    44 	$row['Emot'] = " " . $row['Emot']; | 
| 
webmaster@0
 | 
    45       } | 
| 
webmaster@0
 | 
    46       echo(" | 
| 
webmaster@0
 | 
    47        <div class='PostContent{$row['Emot']}'> | 
| 
webmaster@0
 | 
    48         <h2>{$Titre} | <span class='Date'>{$dateFormatee}</span></h2> | 
| 
webmaster@0
 | 
    49 	 {$mood} | 
| 
webmaster@0
 | 
    50 	 {$Mess}<br /> | 
| 
webmaster@0
 | 
    51 	 {$infos} | 
| 
webmaster@0
 | 
    52        </div>"); | 
| 
webmaster@0
 | 
    53       $Data->Query("SELECT * FROM Commentaires Where MessId={$id} ORDER BY num_comm"); | 
| 
webmaster@0
 | 
    54       $defaultGravatar = urlencode("http://defr.org/Misc/NoGravatar.png"); | 
| 
webmaster@0
 | 
    55       while(0 !== ($row = $Data->GetRow())) { | 
| 
webmaster@0
 | 
    56          $dateFormatee = strftime(" à %Hh%M le <span class='Date'>%A %d %B %Y</span>", strtotime($row['DateComment'])); | 
| 
webmaster@0
 | 
    57          $AdresseMail = $row['AdresseMail']; | 
| 
webmaster@0
 | 
    58 	 $grav_id = md5($AdresseMail); | 
| 
webmaster@0
 | 
    59 	 $Comment = nl2br($row['Comment']); | 
| 
webmaster@0
 | 
    60 	$Comment = str_replace(" & ", " & ", $Comment); | 
| 
webmaster@0
 | 
    61 	 if($row['num_comm'] == 172) $Comment = str_replace("</sup>", "</del>", $Comment); | 
| 
webmaster@0
 | 
    62 	 //if(stristr($Adresse, "@")) $Adresse = "mailto:" . $Adresse; | 
| 
webmaster@0
 | 
    63 	 $betterHref = (stristr($row['Adresse'], 'http://') != false)?"href='{$row['Adresse']}'":''; | 
| 
webmaster@0
 | 
    64 	      echo(" | 
| 
webmaster@0
 | 
    65 	<div class='PostContent'> | 
| 
webmaster@0
 | 
    66 	  <div class='Infos'> | 
| 
webmaster@0
 | 
    67 		  <img class='gravatar' src='http://www.gravatar.com/avatar.php?gravatar_id={$grav_id}&size=50&default=$defaultGravatar' alt='' /> | 
| 
webmaster@0
 | 
    68 		  <a {$betterHref} name='c{$row['num_comm']}'>{$row['Auteur']}</a> {$dateFormatee} | 
| 
webmaster@0
 | 
    69 	  </div> | 
| 
webmaster@0
 | 
    70 	  <div class='Comment'>{$Comment}</div> | 
| 
webmaster@0
 | 
    71 	  <br class='endComment' /> | 
| 
webmaster@0
 | 
    72 	</div>"); | 
| 
webmaster@0
 | 
    73       } | 
| 
webmaster@0
 | 
    74       echo(" | 
| 
webmaster@0
 | 
    75 	<div class='PostContent'> | 
| 
webmaster@0
 | 
    76 	  <a href='/blog/'>Revenir au blog</a> | 
| 
webmaster@0
 | 
    77 	</div> | 
| 
webmaster@0
 | 
    78 	<div class='PostContent'> | 
| 
webmaster@0
 | 
    79 	<form method='post' action='#'> | 
| 
webmaster@0
 | 
    80 	   <div id='FormCommentaire'> | 
| 
webmaster@0
 | 
    81 		Vous souhaitez ajouter un nouveau commentaire ? Faites donc, il vous suffit de remplir | 
| 
webmaster@0
 | 
    82 		le petit formulaire ci-dessous. | 
| 
webmaster@0
 | 
    83 		<input type='text' name='Auteur' value='Votre Nom' onfocus=\"if(this.value== this.getAttribute('value')) this.value='';\" /> | 
| 
webmaster@0
 | 
    84 		<input type='text' name='AdresseMail' value='Une adresse mail où vous joindre ? ( Non affichée publiquement )' onfocus=\"if(this.value == this.getAttribute('value')) this.value='';\"/> | 
| 
webmaster@0
 | 
    85 		<input type='text' name='Adresse' value='Un site web à vous ?' onfocus=\"if(this.value == this.getAttribute('value')) this.value='';\"/> | 
| 
webmaster@0
 | 
    86 		<textarea name='Comment' rows='10' cols='40' onfocus=\"if(this.value == 'Et z\'enfin, votre petit commentaire') this.value='';\">Et z'enfin, votre petit commentaire</textarea> | 
| 
webmaster@0
 | 
    87 		<input type='submit' value='Poster ce commentaire' /> | 
| 
webmaster@0
 | 
    88 	   </div> | 
| 
webmaster@0
 | 
    89 	</form> | 
| 
webmaster@0
 | 
    90        </div> | 
| 
webmaster@0
 | 
    91       "); | 
| 
webmaster@0
 | 
    92      include("foot.php"); | 
| 
webmaster@0
 | 
    93 ?> |