



J’étais parti sur le format blog principalement pour le principe des dossiers dans lesquels étaient rangés les différents textes. Laisser des accès au Manager, par une voie ou une autre, est effectivement le mieux à faire (gestion des droits des utilisateurs), mais dans ce cas il y’a deux problèmes : pas d’inscription automatique (il faudra créer les comptes user manuellement) et création de page anarchique (mes utilisateurs pourront créer leurs pages dans n’importe quelle section).
C’est dommage de buter sur ce petit "détail" de la publication. Je m’accorde encore une journée pour réfléchir là-dessus, ensuite je reprends tout.
// format content
$content = $modx->stripTags($_POST[$rtcontent],$allowedTags);
$content = str_replace('[+user+]',$user,$content);
$content = str_replace('[+createdon+]',strftime('%d-%b-%Y %H:%M',$createdon),$content);
foreach($_POST as $n=>$v) {
if(!empty($badwords)) $v = preg_replace($badwords,'[Filtered]',$v); // remove badwords
$v = $modx->stripTags(htmlspecialchars($v));
$v = str_replace("\n",'<br />',$v);
$content = str_replace('[+'.$n.'+]',$v,$content);
}
$title = mysql_escape_string($modx->stripTags($_POST['pagetitle']));
$longtitle = mysql_escape_string($modx->stripTags($_POST['longtitle']));
$description = mysql_escape_string($modx->stripTags($_POST['description']));
$introtext = mysql_escape_string($modx->stripTags($_POST[$rtsummary],$allowedTags));
$pub_date = $_POST['pub_date'];
$unpub_date = $_POST['unpub_date'];
$published = 1;
// check published date
if($pub_date=="") {
$pub_date="0";
} else {
list($d, $m, $Y, $H, $M, $S) = sscanf($pub_date, "%2d-%2d-%4d %2d:%2d:%2d");
$pub_date = strtotime("$m/$d/$Y $H:$M:$S");
if($pub_date < $createdon) {
$published = 1;
} elseif($pub_date > $createdon) {
$published = 0;
}
}
// check unpublished date
if($unpub_date=="") {
$unpub_date="0";
} else {
list($d, $m, $Y, $H, $M, $S) = sscanf($unpub_date, "%2d-%2d-%4d %2d:%2d:%2d");
$unpub_date = strtotime("$m/$d/$Y $H:$M:$S");
if($unpub_date < $createdon) {
$published = 0;
}
}
// format content
$content = $modx->stripTags($_POST[$rtcontent],$allowedTags);
$content = str_replace('[+user+]',$user,$content);
$content = str_replace('[+createdon+]',strftime('%d-%b-%Y %H:%M',$createdon),$content);
foreach($_POST as $n=>$v) {
if(!empty($badwords)) $v = preg_replace($badwords,'[Filtered]',$v); // remove badwords
$v = $modx->stripTags(htmlspecialchars($v));
$v = str_replace("\n",'<br />',$v);
$content = str_replace('[+'.$n.'+]',$v,$content);
}
$title = mysql_escape_string($modx->stripTags($_POST['pagetitle']));
$longtitle = mysql_escape_string($modx->stripTags($_POST['longtitle']));
$description = mysql_escape_string($modx->stripTags($_POST['description']));
$introtext = mysql_escape_string($modx->stripTags($_POST[$rtsummary],$allowedTags));
$pub_date = $_POST['pub_date'];
// $unpub_date = $_POST['unpub_date'];
// Test de publication nulle
$published = 0;
// check published date
// if($pub_date=="") {
// $pub_date="0";
// } else {
// list($d, $m, $Y, $H, $M, $S) = sscanf($pub_date, "%2d-%2d-%4d %2d:%2d:%2d");
// $pub_date = strtotime("$m/$d/$Y $H:$M:$S");
//
// if($pub_date < $createdon) {
// $published = 1;
// } elseif($pub_date > $createdon) {
// $published = 0;
// }
// }
// check unpublished date
// if($unpub_date=="") {
// $unpub_date="0";
// } else {
// list($d, $m, $Y, $H, $M, $S) = sscanf($unpub_date, "%2d-%2d-%4d %2d:%2d:%2d");
// $unpub_date = strtotime("$m/$d/$Y $H:$M:$S");
// if($unpub_date < $createdon) {
// $published = 0;
// }
// }
Ceci dit, ce que je conseille à la fin est à mon avis plus sûr : utiliser FDM plutôt que NewsPublisher...Je vois que vous commencez à entrevoir la complexité de ma situation...J’étais parti sur le format blog principalement pour le principe des dossiers dans lesquels étaient rangés les différents textes.

Laisser des accès au Manager, par une voie ou une autre, est effectivement le mieux à faire (gestion des droits des utilisateurs), mais dans ce cas il y’a deux problèmes : pas d’inscription automatique (il faudra créer les comptes user manuellement) et création de page anarchique (mes utilisateurs pourront créer leurs pages dans n’importe quelle section).

Pour le second problème, d’une part il vaut mieux une arborescence foireuse non-publiée que des textes de mauvaise qualité publiés d’office, les admins et modos pourront "faire le ménage". D’autre part, je pense qu’il doit être possible de trouver des solutions pour adapter NewsPublisher à cette nouvelle situation (en gardant le principe des dossiers de type blog).

).


$_lang['dateFormat'] = "%d-%b-%y %H:%M";