getName() . '.php';
if(file_exists($viewFile))
{
if(self::$new_article_mode){
$id = $_GET['id']; // ici l'id est le nom du block news_block parent
$title = '';
$preview = '';
// lettre au début de l'id: t = title, p = preview, i = article, d = date
$id_title = $id;
$id_title[0] = 't';
$id_preview = $id;
$id_preview[0] = 'p';
$id_content = 'i' . $id;
$id_content[0] = 'i';
$id_date = $id;
$id_date[0] = 'd';
}
else{
$id = (string)$node->getId();
// id (timestamp)
if(!empty($node->getAttributes()))
{
extract($node->getAttributes());
}
// html, date
$title = $node->getArticle()->getTitle();
$preview = $node->getArticle()->getPreview();
// lettre au début de l'id: t = title, p = preview, i = article, d = date
$id_title = 't' . $id;
$id_preview = 'p' . $id;
$id_content = 'i' . $id;
$id_date = 'd' . $id;
}
$content = '';
// page article unique
if(Director::$page_path->getLast()->getEndOfPath() === 'article'){
$content = $node->getArticle()->getContent();
$from_to_button = '
';
}
else{
$from_to_button = '
';
}
$date_object = $node->getArticle()->getDateTime(); // class DateTime
$date = 'le ' . str_replace(':', 'h', $date_object->format('d-m-Y à H:i'));
// partage
$share_link = new URL(['page' => 'article', 'id' => $id]);
$share_js = 'onclick="copyInClipBoard(\'' . $share_link . '\')"';
if(isset($_GET['id']) && $_GET['id'][0] === 'n'){
$class = 'class="share hidden"';
}
else{
$class = 'class="share"';
}
$share_button = '
' . "\n";
// modifier un article
$title_buttons = '';
$preview_buttons = '';
$article_buttons = '';
$date_buttons = '';
$admin_buttons = '';
if($_SESSION['admin'])
{
if(Director::$page_path->getLast()->getEndOfPath() === 'article'){
$title_js = 'onclick="openEditor(\'' . $id_title . '\')"';
$modify_title = '' . "\n";
$close_js_title = 'onclick="closeEditor(\'' . $id_title . '\')"';
$close_editor_title = '';
$submit_js_title = 'onclick="submitArticle(\'' . $id_title . '\')"';
$submit_title = '';
$title_buttons = '' . $modify_title . $close_editor_title . $submit_title . '
';
$preview_js = 'onclick="openEditor(\'' . $id_preview . '\')"';
$modify_preview = '' . "\n";
$close_js_preview = 'onclick="closeEditor(\'' . $id_preview . '\')"';
$close_editor_preview = '';
$submit_js_preview = 'onclick="submitArticle(\'' . $id_preview . '\')"';
$submit_preview = '';
$preview_buttons = '' . $modify_preview . $close_editor_preview . $submit_preview . '
';
$article_js = 'onclick="openEditor(\'' . $id_content . '\')"';
$modify_article = '' . "\n";
$close_js_article = 'onclick="closeEditor(\'' . $id_content . '\')"';
$close_editor_article = '';
$submit_js_article = 'onclick="submitArticle(\'' . $id_content . '\')"';
$submit_article = '';
$article_buttons = '' . $modify_article . $close_editor_article . $submit_article . '
';
$date_js = 'onclick="changeDate(\'' . $id_date . '\', \'article\');';
$modify_date = '' . "\n";
$close_js_date = 'onclick="closeInput(\'' . $id_date . '\')"';
$close_editor_date = '';
$submit_js_date = 'onclick="submitDate(\'' . $id_date . '\')"';
$submit_date = '';
$date_buttons = '' . $modify_date . $close_editor_date . $submit_date . '
';
// mode nouvel article
if(self::$new_article_mode){
$delete_article = '';
// valider la création d'un nouvel article
$submit_js = 'onclick="submitArticle(\'' . $_GET['id'] . '\')"';
$submit_article = '' . "\n";
}
// mode article existant
else{
$url = new URL(['action' => 'delete_article', 'id' => $_GET['id'], 'from' => $_GET['from'] ?? '']);
$delete_article = '' . "\n";
$submit_article = '';
}
$admin_buttons = $delete_article . $from_to_button . $submit_article;
}
// autre page
else{
$modify_article = '' . "\n";
$up_js = 'onclick="switchPositions(\'' . $id . '\', \'up\')"';
$up_button = '
' . "\n";
$down_js = 'onclick="switchPositions(\'' . $id . '\', \'down\')"';
$down_button = '
' . "\n";
$delete_js = 'onclick="deleteArticle(\'' . $id . '\')"';
$delete_article = '
' . "\n";
$close_editor = '';
$submit_article = '';
$submit_article = '';
$admin_buttons = $from_to_button . $modify_article . $up_button . $down_button . $delete_article . $close_editor . $submit_article;
}
}
else{
$admin_buttons = $from_to_button;
}
ob_start();
require($viewFile);
$this->html .= ob_get_clean();
}
}
}