| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637 | 
							- <?php
 
- # ***** BEGIN LICENSE BLOCK *****
 
- # This file is part of DotClear.
 
- # Copyright (c) 2004 Olivier Meunier and contributors. All rights
 
- # reserved.
 
- #
 
- # DotClear 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.
 
- # 
 
- # DotClear is distributed in the hope that it will be useful,
 
- # but WITHOUT ANY WARRANTY; without even the implied warranty of
 
- # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 
- # GNU General Public License for more details.
 
- # 
 
- # You should have received a copy of the GNU General Public License
 
- # along with DotClear; if not, write to the Free Software
 
- # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 
- #
 
- # ***** END LICENSE BLOCK *****
 
- require dirname(__FILE__).'/inc/prepend.php';
 
- $auth->check(1);
 
- include dirname(__FILE__).'/inc/connexion.php';
 
- # Tableau des mois de l'année
 
- for ($i=1;$i<=12;$i++) {
 
- 	$m = sprintf('%02d',$i);
 
- 	$arry_dt_m[dt::str('%B',strtotime('2000-'.$m.'-01'))] = $m;
 
- }
 
- # Les catégories du blog
 
- $cat_id = (!empty($_GET['cat_id'])) ? $_GET['cat_id'] : '';
 
- $rsCat = $blog->getCat();
 
- while (!$rsCat->EOF())
 
- {
 
- 	$arry_cat[$rsCat->f('cat_libelle')] = $rsCat->f('cat_id');
 
- 	$rsCat->moveNext();
 
- }
 
- # Valeurs par défaut
 
- $err = '';
 
- $titre = '';
 
- $titre_url = '';
 
- $cat_id = $_SESSION['sess_user_pref_cat'];
 
- $dt_m = $dt_d = $dt_y = '';
 
- $chapo = $preview_chapo = '';
 
- $content = $preview_content = '';
 
- $notes = '';
 
- $is_editable = true;
 
- $format = $_SESSION['sess_user_format'];
 
- $etat = $_SESSION['sess_user_post_pub'];
 
- $open_comment = 1;
 
- $open_tb = 1;
 
- $lang = DC_LANG;
 
- $selected = 0;
 
- $return_link = 'index.php';
 
- $do_trackbacks = false;
 
- $objWiki = new wiki2xhtml();
 
- if (dc_encoding != 'UTF-8') {
 
- 	$objWiki->setOpt('active_fix_word_entities',1);
 
- }
 
- # Billet existant
 
- if (!empty($_REQUEST['post_id']))
 
- {
 
- 	$post = $blog->getPostById($_REQUEST['post_id']);
 
- 	if (!$post->isEmpty())
 
- 	{
 
- 		$post_id = $post->f('post_id');
 
- 		$titre = $post->f('post_titre');
 
- 		$titre_url = $post->f('post_titre_url');
 
- 		$cat_id = $post->f('cat_id');
 
- 		$format = $post->getFormat();
 
- 		$etat = (integer) $post->f('post_pub');
 
- 		$open_comment = (integer) $post->f('post_open_comment');
 
- 		$open_tb = (integer) $post->f('post_open_tb');
 
- 		$lang = $post->f('post_lang');
 
- 		$selected = $post->f('post_selected');
 
- 		$chapo = ($post->f('post_chapo_wiki') != '') ? $post->f('post_chapo_wiki') : $post->f('post_chapo');
 
- 		$preview_chapo = $post->f('post_chapo');
 
- 		$content = ($post->f('post_content_wiki') != '') ? $post->f('post_content_wiki') : $post->f('post_content');
 
- 		$notes = $post->f('post_notes');
 
- 		$preview_content = $post->f('post_content');
 
- 		$return_link = 'index.php?m='.$post->f('postyear').$post->f('postmonth').'#p'.$post_id;
 
- 		$post_ts = $post->getTS();
 
- 		$post_perm_url =  $post->getPermURL();
 
- 		$dt_y = date('Y',$post_ts);
 
- 		$dt_m = date('m',$post_ts);
 
- 		$dt_d = date('d',$post_ts);
 
- 		$dt_h = (string) date('H',$post_ts);
 
- 		$dt_i = (string) date('i',$post_ts);
 
- 		$dt_s = (string) date('s',$post_ts);
 
- 		
 
- 		$objWiki->setOpt('note_prefix','pnote-'.$post_id);
 
- 		
 
- 		$comments = $blog->getComments($post_id);
 
- 		
 
- 		# Le post n'est éditable que par un admin ou son rédacteur,
 
- 		# qu'on se le dise !
 
- 		if ($post->f('user_id') != $_SESSION['sess_user_id'] && $_SESSION['sess_user_level'] < 9) {
 
- 			$is_editable = false;
 
- 		}
 
- 		
 
- 		# Changement du status ou suppression d'un commentaire
 
- 		if (!empty($_GET['comment_id']))
 
- 		{
 
- 			if ($is_editable) {
 
- 				if (!empty($_GET['comment_del'])) {
 
- 					if ($blog->delComment($_GET['comment_id']) !== false) {
 
- 						header('Location: poster.php?post_id='.$post_id.'#comments');
 
- 						exit;
 
- 					} else {
 
- 						$err = $blog->error(1);
 
- 					}
 
- 				} else {				
 
- 					if ($blog->statusComment($_GET['comment_id']) !== false) {
 
- 						header('Location: poster.php?post_id='.$post_id.'#c'.$_GET['comment_id']);
 
- 						exit;
 
- 					} else {
 
- 						$err = $blog->error(1);
 
- 					}
 
- 				}
 
- 			} else {
 
- 				$err = '<ul><li>'.__('You are not allowed to edit a comment').'</li></ul>';
 
- 			}
 
- 		}
 
- 		
 
- 		# Ajout d'un commentaire
 
- 		if (!empty($_POST['add_comment']))
 
- 		{
 
-                if ($blog->addComment($post_id,$_POST['com_nom'],
 
- 			$_POST['com_email'],$_POST['com_web'],$_POST['com_content']) !== false) {
 
- 				header('Location: poster.php?post_id='.$post_id.'#comments');
 
- 				exit;
 
- 			} else {
 
- 				$err = $blog->error(1);
 
- 			}
 
- 		}
 
- 		
 
- 		# Changement du status d'un billet
 
- 		if (!empty($_GET['cancel']) && $is_editable)
 
- 		{
 
- 			if ($blog->statusPost($post_id) !== false) {
 
- 				header('Location: '.$return_link);
 
- 				exit;
 
- 			} else {
 
- 				$err = $blog->error(1);
 
- 			}
 
- 		}
 
- 		
 
- 		# Suppression d'un billet
 
- 		if (!empty($_POST['delete']) && $is_editable)
 
- 		{
 
- 			if ($blog->delPost($post_id) !== false) {
 
- 				$msg = __('Entry successfully removed');
 
- 				header('Location: index.php?msg='.urlencode($msg));
 
- 				exit;
 
- 			} else {
 
- 				$err = $blog->error(1);
 
- 			}
 
- 		}
 
- 	}
 
- }
 
- # Valeurs pour la prévisualisation, la création ou la modification d'un billet
 
- if (!empty($_POST['preview']) || !empty($_POST['publish']) || !empty($_POST['transform']))
 
- {
 
- 	$titre = $_POST['p_titre'];
 
- 	$titre_url = $_POST['p_titre_url'];
 
- 	$cat_id = $_POST['p_cat'];
 
- 	$format = $_POST['p_format'];
 
- 	$etat = $_POST['p_etat'];
 
- 	$open_comment = $_POST['p_open_comment'];
 
- 	$open_tb = $_POST['p_open_tb'];
 
- 	$lang = $_POST['p_lang'];
 
- 	$selected = $_POST['p_selected'];
 
- 	$content = $_POST['p_content'];
 
- 	$notes = $_POST['p_notes'];
 
- 	$chapo = $_POST['p_chapo'];
 
- 	$do_trackbacks = !empty($_POST['p_do_trackbacks']) ? true : false;
 
- 	
 
- 	if (!empty($post_id))
 
- 	{
 
- 		$dt_y = (string) sprintf('%04d',$_POST['p_dt_y']);
 
- 		$dt_m = (string) sprintf('%02d',$_POST['p_dt_m']);
 
- 		$dt_d = (string) sprintf('%02d',$_POST['p_dt_d']);
 
- 		$dt_h = (string) sprintf('%02d',$_POST['p_dt_h']);
 
- 		$dt_i = (string) sprintf('%02d',$_POST['p_dt_i']);
 
- 		$dt_s = (string) sprintf('%02d',$_POST['p_dt_s']);
 
- 		
 
- 		# Corrections jour & heure
 
- 		if ($dt_d > 31 || $dt_d < 1) { $dt_d = '01'; }
 
- 		if ($dt_h > 23 || $dt_h < 0) { $dt_h = '00'; }
 
- 		if ($dt_i > 59 || $dt_i < 0) { $dt_i = '00'; }
 
- 		if ($dt_s > 59 || $dt_s < 0) { $dt_s = '00'; }
 
- 		
 
- 		$new_date = strtotime($dt_y.'-'.$dt_m.'-'.$dt_d.' '.$dt_h.':'.$dt_i.':'.$dt_s);
 
- 	}
 
- 	
 
- 	if (strpos($lang,'fr') === 0) {
 
- 		$objWiki->setOpt('active_fr_syntax',1);
 
- 	}
 
- 	
 
- 	if (!empty($_POST['transform'])) {
 
- 		$format = 'html';
 
- 		$content = $objWiki->transform($content);
 
- 		$chapo = $objWiki->transform($chapo);
 
- 	}
 
- 	
 
- 	if ($format == 'wiki') {
 
- 		$preview_content = $objWiki->transform($content);
 
- 		$preview_chapo = $objWiki->transform($chapo);
 
- 	} else {
 
- 		$preview_content = $content;
 
- 		$preview_chapo = $chapo;
 
- 	}
 
- }
 
- # Insertion ou modification d'un billet
 
- if (!empty($_POST['publish']))
 
- {
 
- 	# Insertion
 
- 	if (empty($post_id))
 
- 	{
 
- 		if (($post_id = $blog->addPost($_SESSION['sess_user_id'],$titre,$titre_url,$chapo,$content,
 
- 		$notes,$cat_id,$format,$etat,$open_comment,$open_tb,$lang,$selected,
 
- 		$_SESSION['sess_user_delta'])) !== false) {
 
- 			if ($do_trackbacks) {
 
- 				$return_link = 'trackback.php?post_id='.$post_id.'&auto=1';
 
- 			} else {
 
- 				$return_link = 'poster.php?post_id='.$post_id;
 
- 			}
 
- 			header('Location: '.$return_link);
 
- 			exit;
 
- 		} else {
 
- 			$err = $blog->error(1);
 
- 		}
 
- 	}
 
- 	else
 
- 	{
 
- 		if ($is_editable) {
 
- 			if ($blog->updPost($post_id,$titre,$titre_url,$chapo,$content,$notes,$cat_id,
 
- 			$format,$etat,$open_comment,$open_tb,$new_date,$lang,$selected,
 
- 			$_SESSION['sess_user_delta']) !== false ) {
 
- 				if ($do_trackbacks) {
 
- 					$return_link = 'trackback.php?post_id='.$post_id.'&auto=1';
 
- 				} else {
 
- 					$return_link = 'poster.php?post_id='.$post_id;
 
- 				}
 
- 				header('Location: '.$return_link);
 
- 				exit;
 
- 			} else {
 
- 				$err = $blog->error(1);
 
- 			}
 
- 		}
 
- 	}
 
- }
 
- # Création du sous-menu
 
- $mySubMenu->addItem(__('Back to list of entries'),$return_link,'images/ico_retour.png',false);
 
- if (!empty($content) && !empty($post_id) && 
 
- empty($_POST['preview']) && empty($_POST['publish']) && $is_editable)
 
- {
 
- 	$mySubMenu->addItem(
 
- 	__('New entry'),array('poster.php','accesskey="n"'),
 
- 	'images/ico_edit.png',false);
 
- 	
 
- 	$mySubMenu->addItem(
 
- 		__('XHTML validation'),
 
- 		array('validpost.php?post_id='.$post_id,'onclick="popup(this.href); return false;"'),
 
- 		'images/ico_ok.png',false);
 
- 	
 
- 	$mySubMenu->addItem(
 
- 		__('Trackbacks'),
 
- 		'trackback.php?post_id='.$post_id,
 
- 		'images/ico_link.png',false);
 
- 	
 
- 	$mySubMenu->addItem(
 
- 		__('View entry'),$post_perm_url,
 
- 		'images/ico_goto.png',false);
 
- }
 
- openPage(__('Entry'),
 
- '<script type="text/javascript" src="js/form.js"></script>'."\n".
 
- '<script type="text/javascript">'."\n".
 
- "window.onload = function() {\n".
 
- " openCloseOptions('moreOptions','dc_options');\n".
 
- " getCurrentForms(); addFormsEvent();\n".
 
- " closePagePrompt = '".str_replace("'","\'",__('You have unsaved changes.'))."';\n".
 
- "}\n".
 
- "window.onbeforeunload = confirmCloseForms;\n".
 
- "</script>\n"
 
- );
 
- if ($err != '')
 
- {
 
- 	echo '<div class="erreur"><p><strong>'.__('Error(s)').' :</strong></p>'.
 
- 		$err.'</div>';
 
- }
 
- echo '<h2>'.__('Entry').'</h2>';
 
- /* Entry preview
 
- -------------------------------------------------------- */
 
- if (!empty($content) && dc_show_previews)
 
- {
 
- 	if (!empty($_POST['preview'])) {
 
- 		$preview_titre = htmlspecialchars($titre);
 
- 	} else {
 
- 		$preview_titre = $titre;
 
- 	}
 
- 	
 
- 	echo '<div class="cadre preview clear">'.
 
- 		'<h3>'.$titre.'</h3>'.
 
- 		((trim($preview_chapo) != '') ? $preview_chapo.'<hr class="thin" />' : '').
 
- 		$preview_content.'</div>';
 
- 	
 
- 	if (!empty($post_perm_url)) {
 
- 		echo '<p class="clear"><strong>'.
 
- 		__('Permanent link').'</strong> : '.
 
- 		util::getPageURL($post_perm_url).'</p>';
 
- 	}
 
- }
 
- if (!empty($_POST['preview'])) {
 
- 	$titre = htmlspecialchars($titre);
 
- }
 
- /* Valeurs pouvant être passées en URL par un bookmarklet
 
- -------------------------------------------------------- */
 
- if (!empty($_GET['dcb']))
 
- {
 
- 	$purl = !empty($_GET['purl']) ? $_GET['purl'] : '';
 
- 	$ptitle = !empty($_GET['ptitle']) ? $_GET['ptitle'] : '';
 
- 	$ptext = !empty($_GET['ptext']) ? $_GET['ptext'] : '';
 
- 	
 
- 	$titre = $ptitle;
 
- 	
 
- 	if ($format == 'wiki') {
 
- 		$content = '['.$ptitle.'|'.$purl."]\n\n".$ptext;
 
- 	} else {
 
- 		$content = '<a href="'.$purl.'">'.$ptitle."</a>\n\n<p>".$ptext.'</p>';
 
- 	}
 
- 	
 
- }
 
- /* Entry form
 
- -------------------------------------------------------- */
 
- if ($is_editable)
 
- {
 
- 	echo '<form action="poster.php" method="post" id="formPost">';
 
- 	
 
- 	echo '<table class="clear post-entry-info">';
 
- 	echo
 
- 	'<tr><td><label for="p_cat">'.
 
- 	__('Category').' '.helpLink('entry','category').'</label></td> '.
 
- 	'<td>'.form::combo('p_cat',$arry_cat,$cat_id,'','',1).'</td>';
 
- 	
 
- 	echo
 
- 	'<td><label for="p_format">'.
 
- 	__('Format').' '.helpLink('entry','format').'</label></td> '.
 
- 	'<td>'.form::combo('p_format',array('HTML'=>'html','Wiki'=>'wiki'),$format,'','',2).'</td>';
 
- 	
 
- 	echo
 
- 	'<td><label for="p_etat">'.
 
- 	__('Status').' '.helpLink('entry','status').'</label></td> '.
 
- 	'<td>'.form::combo('p_etat',array(__('Online')=>'1',__('Offline')=>'0'),$etat,'','',3).'</td></tr>';
 
- 	
 
- 	echo '</table>';
 
- 	
 
- 	echo
 
- 	'<p><label for="p_titre"><strong>'.__('Title').'</strong> '.
 
- 	helpLink('entry','title').'</label> '.
 
- 	form::field('p_titre',30,255,$titre,4,'class="max"').'</p>';
 
- 	
 
- 	echo
 
- 	'<p><label for="p_chapo">'.__('Abstract').' ('.__('optional').') '.
 
- 	helpLink('entry','abstract').'</label> '.
 
- 	form::textArea('p_chapo',60,4,htmlspecialchars($chapo),5,'class="max"').'</p>';
 
- 	
 
- 	echo
 
- 	'<p>'.
 
- 	'<label for="p_content"><strong>'.__('Entry').' '.helpLink('entry','entry').'</strong>'.
 
- 	' - '.helpLink('wiki2xhtml','',__('Wiki formatting rules')).'</label>'.
 
- 	'</p>'.
 
- 	
 
- 	'<p>'.form::textArea('p_content',60,$_SESSION['sess_user_edit_size'],
 
- 	htmlspecialchars($content),6,'class="max"').'</p>';
 
- 	
 
- 	# Toolbar
 
- 	echo
 
- 	'<script type="text/javascript" src="js/toolbar.js"></script>'.
 
- 	'<script type="text/javascript">'.
 
- 	"if (document.getElementById) {
 
- 		var tb = new dcToolBar(document.getElementById('p_content'),
 
- 		document.getElementById('p_format'),'images/');
 
- 		
 
- 		tb.btStrong('".str_replace("'","\'",__('Strong emphasis'))."');
 
- 		tb.btEm('".str_replace("'","\'",__('Emphasis'))."');
 
- 		tb.btIns('".str_replace("'","\'",__('Inserted'))."');
 
- 		tb.btDel('".str_replace("'","\'",__('Deleted'))."');
 
- 		tb.btQ('".str_replace("'","\'",__('Inline quote'))."');
 
- 		tb.btCode('".str_replace("'","\'",__('Code'))."');
 
- 		tb.addSpace(10);
 
- 		tb.btBr('".str_replace("'","\'",__('Line break'))."');
 
- 		tb.addSpace(10);
 
- 		tb.btBquote('".str_replace("'","\'",__('Blockquote'))."');
 
- 		tb.btPre('".str_replace("'","\'",__('Preformated text'))."');
 
- 		tb.btList('".str_replace("'","\'",__('Unordered list'))."','ul');
 
- 		tb.btList('".str_replace("'","\'",__('Ordered list'))."','ol');
 
- 		tb.addSpace(10);
 
- 		tb.btLink('".str_replace("'","\'",__('Link'))."',
 
- 			'".str_replace("'","\'",__('URL?'))."',
 
- 			'".str_replace("'","\'",__('Language?'))."',
 
- 			'".DC_LANG."');
 
- 		tb.btImgLink('".str_replace("'","\'",__('External image'))."',
 
- 			'".str_replace("'","\'",__('URL?'))."');
 
- 		tb.addSpace(10);
 
- 		tb.btImg('".str_replace("'","\'",__('Internal image'))."','images-popup.php');
 
- 		tb.draw('".str_replace("'","\'",__('You can use the following shortcuts to refine your layout.'))."');
 
- 	}
 
- 	</script>";
 
- 	# Fin toolbar
 
- 	
 
- 	echo
 
- 	'<h3 class="moreOptions">'.
 
- 	'<a href="#" onclick="openCloseOptions(\'moreOptions\',\'dc_options\',0); return false;">'.
 
- 	'<img src="images/plus.png" id="img_moreOptions" '.
 
- 	'alt="" /></a>'.
 
- 	' <a href="#" onclick="openCloseOptions(\'moreOptions\',\'dc_options\',0); return false;">'.
 
- 	__('More options').'</a></h3>';
 
- 	
 
- 	echo
 
- 	'<div id="moreOptions" class="moreOptions">'.
 
- 	'<p><label for="p_notes">'.__('Notepad').' '.helpLink('entry','notepad').'</label>'.
 
- 	form::textArea('p_notes',30,6,htmlspecialchars($notes),7,'class="max"').'</p>';
 
- 	
 
- 	echo
 
- 	'<p><label for="p_titre_url">'.__('URLed title').' '.
 
- 	helpLink('entry','title_url').
 
- 	' <a href="#" '.
 
- 	'onclick="document.forms[0].p_titre_url.value=str2url(document.forms[0].p_titre.value,\''.dc_encoding.'\'); return false;">'.
 
- 	__('Use').'</a></label> '.
 
- 	form::field('p_titre_url',30,255,htmlspecialchars($titre_url),8,'class="max"').'</p>';
 
- 	
 
- 	if (!empty($post_id))
 
- 	{
 
- 		echo
 
- 		'<p><label class="inline" for="p_dt_d">'.__('Date').'</label> '.
 
- 		form::field('p_dt_d',2,2,$dt_d,9).' '.
 
- 		form::combo('p_dt_m',$arry_dt_m,$dt_m,'','',10).' '.
 
- 		form::field('p_dt_y',4,4,$dt_y,11).' '.
 
- 		'<label class="inline" for="p_dt_h">'.__('Hour').'</label> '.
 
- 		form::field('p_dt_h',2,2,$dt_h,12).':'.
 
- 		form::field('p_dt_i',2,2,$dt_i,13).':'.
 
- 		form::field('p_dt_s',2,2,$dt_s,14).' '.
 
- 		"<a href=\"#\" onclick=\"setNow(); return false;\">".__('now').'</a> '.
 
- 		helpLink('entry','datetime').
 
- 		'</p>';
 
- 	}
 
- 	
 
- 	echo '<table class="clear post-entry-info">';
 
- 	
 
- 	echo
 
- 	'<tr><td><label for="p_lang">'.
 
- 	__('Language').' '.helpLink('entry','language').'</label></td> '.
 
- 	'<td>'.form::field('p_lang',5,5,$lang,15).'</td>';
 
- 	
 
- 	echo
 
- 	'<td><label for="p_selected">'.
 
- 	__('Selection').' '.helplink('entry','selected').'</label></td>'.
 
- 	'<td>'.form::combo('p_selected',array(__('yes')=>1,__('no')=>0),$selected,'','',16).'</td></tr>';
 
- 	
 
- 	echo
 
- 	'<tr><td><label for="p_open_comment">'.
 
- 	__('Comments').' '.helpLink('entry','comment').'</label></td> '.
 
- 	'<td>'.form::combo('p_open_comment',array(__('Open')=>'1',__('Closed')=>'0'),$open_comment,'','',17).'</td>';
 
- 	
 
- 	echo
 
- 	'<td><label for="p_open_tb">'.
 
- 	__('Trackbacks').' '.helpLink('entry','trackback').'</label></td>'.
 
- 	'<td>'.form::combo('p_open_tb',array(__('Open')=>'1',__('Closed')=>'0'),$open_tb,'','',18).'</td></tr>';
 
- 	echo '</table>';
 
- 	
 
- 	echo '</div>';
 
- 	
 
- 	$p_tb_checked = ($do_trackbacks) ? ' checked="checked"' : '';
 
- 	echo
 
- 	'<p><input type="checkbox" name="p_do_trackbacks" id="p_do_trackbacks" '.
 
- 	$p_tb_checked.' /> '.
 
- 	'<label class="inline" for="p_do_trackbacks">'.__('Ping URLs').'</label></p>';
 
- 	
 
- 	echo
 
- 	'<p>'.
 
- 	'<input name="preview" type="submit" class="submit" '.
 
- 	'value="'.__('preview').' [v]" accesskey="v" tabindex="20" />  '.
 
- 	'<input name="publish" type="submit" class="submit" '.
 
- 	'value="'.__('save').' [s]" accesskey="s" tabindex="21" />';
 
- 	
 
- 	if (!empty($post_id) && $format == 'wiki') {
 
- 		echo
 
- 		' <input name="transform" type="submit" class="submit" '.
 
- 		'value="'.__('convert into XHTML').'" tabindex="22" />';
 
- 	}
 
- 	
 
- 	if (!empty($post_id)) {
 
- 		echo
 
- 		' <input name="delete" type="submit" class="submit" tabindex="23" '.
 
- 		'value="'.__('delete').'" onclick="return '.
 
- 		'window.confirm(\''.__('Are you sure you want to delete this entry?').'\')" />'.
 
- 		form::hidden('post_id',$post_id);
 
- 	}
 
- 	
 
- 	echo '</p>';
 
- 	echo '</form>';
 
- }
 
- /* Comments
 
- -------------------------------------------------------- */
 
- if (!empty($post_id))
 
- {
 
- 	echo '<h2>'.__('Comments').'</h2>';
 
- 	
 
- 	if (isset($comments)) {
 
- 		$trackbacks = $comments->extractTrackbacks();
 
- 	}
 
- 	
 
- 	if (isset($trackbacks))
 
- 	{
 
- 		echo '<h3 id="trackbacks">'.__('Trackbacks list').'</h3>';
 
- 		if (!$trackbacks->isEmpty()) {
 
- 			showComments($trackbacks);
 
- 		} else {
 
- 			echo __('No trackback');
 
- 		}
 
- 	}
 
- 	
 
- 	if (isset($comments))
 
- 	{
 
- 		echo '<h3 id="comments">'.__('Comments list').'</h3>';
 
- 		if (!$comments->isEmpty()) {
 
- 			showComments($comments);
 
- 		} else {
 
- 			echo __('No comment');
 
- 		}
 
- 	}
 
- 	
 
- 	echo
 
- 	'<h3>'.__('Post a comment').'</h3>'.
 
- 	'<form action="poster.php" method="post">'.
 
- 	'<p class="field"><label class="float" for="com_nom"><strong>'.
 
- 	__('Name').' :</strong></label> '.
 
- 	form::field('com_nom',30,255,htmlspecialchars($_SESSION['sess_user_cn'])).
 
- 	'</p>';
 
- 	
 
- 	echo
 
- 	'<p class="field"><label class="float" for="com_email">'.
 
- 	__('Email').' ('.__('optional').') :</label> '.
 
- 	form::field('com_email',30,255,htmlspecialchars($_SESSION['sess_user_email'])).
 
- 	'</p>';
 
- 	
 
- 	echo
 
- 	'<p class="field"><label class="float" for="com_web">'.
 
- 	__('Site').' ('.__('optional').') :</label> '.
 
- 	form::field('com_web',30,255,'http://').'</p>';
 
- 	
 
- 	echo
 
- 	'<p class="field"><label for="com_content"><strong>'.
 
- 	__('Comment').' :</strong></label> '.
 
- 	form::textArea('com_content',40,10,'<p></p>','','class="max"').'</p>';
 
- 	
 
- 	echo
 
- 	'<p class="field"><input type="submit" class="submit" name="add_comment"
 
- 	value="'.__('save').'" />'.
 
- 	'<input type="hidden" name="post_id" value="'.$post_id.'" /></p>';
 
- 	
 
- 	echo '</form>';
 
- 	
 
- 	echo '<p><strong>'.__('Notice').'</strong> : '.__('This comment has to be in HTML format').'.</p>';
 
- }
 
- # Affichage de commentaires ou trackbacks
 
- function showComments(&$rs)
 
- {
 
- 	global $is_editable, $post_id;
 
- 	
 
- 	while(!$rs->EOF())
 
- 	{
 
- 		if ($rs->f('comment_pub')) {
 
- 			$com_style = '';
 
- 			$com_cancel = __('set offline');
 
- 		} else {
 
- 			$com_style = 'style="color:#999;"';
 
- 			$com_cancel = __('set online');
 
- 		}
 
- 		
 
- 		echo '<div class="ligne" '.$com_style.' id="c'.$rs->f('comment_id').'">';
 
- 		
 
- 		echo
 
- 		'<p>'.(($rs->f('comment_trackback')==1) ? '<strong>'.__('Trackback').'</strong><br />' : '').
 
- 		__('From').' : '.$rs->f('comment_auteur').'<br />'.
 
- 		dt::str(__('On %A %e %B %Y, %I:%M %p'),$rs->getTS()).'<br />'.
 
- 		__('Email').' : '.$rs->f('comment_email').'<br />'.
 
- 		__('Site').' : '.(($rs->f('comment_site')) ? 'http://'.$rs->f('comment_site') : '').'<br />'.
 
- 		'@IP : '.$rs->f('comment_ip').'</p>'.
 
- 		'<div>'.$rs->getContent().'</div>';
 
- 		
 
- 		if($is_editable)
 
- 		{
 
- 			echo
 
- 			'<p style="text-align:right">'.
 
- 			'<a href="poster.php?post_id='.$post_id.
 
- 			'&comment_id='.$rs->f('comment_id').'">'.$com_cancel.'</a>'.
 
- 			' - <a href="comment.php?comment_id='.$rs->f('comment_id').'">'.__('edit').'</a>'.
 
- 			' - <a href="poster.php?post_id='.$post_id.
 
- 			'&comment_id='.$rs->f('comment_id').'&comment_del=1" '.
 
- 			'onclick="return window.confirm(\''.__('Are you sure you want to delete this comment?').'\');">'.__('delete').'</a>'.
 
- 			'</p>';
 
- 		}
 
- 		
 
- 		echo '</div>';
 
- 		
 
- 		$rs->moveNext();
 
- 	}
 
- }
 
- closePage();
 
- ?>
 
 
  |