toutpratique/controllers/front/PostCmsController.php
2015-12-14 16:07:18 +01:00

97 lines
2.7 KiB
PHP

<?php
require_once _PS_MODULE_DIR_.'cmsps/classes/CmsPsPost.php';
require_once _PS_MODULE_DIR_.'cmsps/classes/CmsPsCategory.php';
class PostCmsControllerCore extends FrontController
{
public $php_self = 'postcms';
public $postcms;
public function canonicalRedirection($canonical_url = '') {
parent::canonicalRedirection($this->context->link->getPostCmsLink($this->postcms->id));
}
public function init() {
$id_post_cms = Tools::getValue('id_post_cms', 0);
$this->postcms = new CmsPsPost($id_post_cms, $this->context->language->id);
if (!Validate::isLoadedObject($this->postcms)
|| !$this->postcms->active) {
header('HTTP/1.1 404 Not Found');
header('Status: 404 Not Found');
}
parent::init();
}
public function initContent() {
parent::initContent();
$id_lang = Context::getContext()->language->id;
$article = CmsPsPost::injectsData($this->postcms, TRUE);
$category = new CmsPsCategory($this->postcms->id_category, $id_lang);
// $bestsTips = $category->getArticles($id_lang, 4, 1, FALSE, 'note');
$relations = $this->postcms->loadPostCmsRelation(10);
$cart = Context::getContext()->cart;
$nb_product_in_cart = $cart->nbProducts();
$article = $this->formatArticle($article);
$all_articles = $category->getArticles($id_lang, 999999, 1, FALSE, 'note');
$this->context->smarty->assign(array(
'path' => Tools::getPath($this->postcms->id, '', FALSE, 'postcms'),
'category' => $category,
'relations' => $relations,
'nb_product_in_cart' => $nb_product_in_cart,
// 'bestsTips' => $bestsTips,
'all_articles' => $all_articles,
'post' => $article
));
$this->setTemplate(_PS_THEME_DIR_.'postcms.tpl');
}
public function formatArticle($article)
{
$article->content = str_replace(
array('h1', '</h1>',
'<p>---ATTENTION---</p>',
'<p>---TRUCS---</p>',
'<p>---TRUC---</p>',
'<p>---ASAVOIR---</p>',
'<p>---ANOTER---</p>',
'<p>---FIN---</p>',
'---ATTENTION---',
'---TRUCS---',
'---TRUC---',
'---ASAVOIR---',
'---ANOTER---',
'---FIN---',
'---VIDEO---',
'---AMAZON---',
),
array('h2', '</h2>',
'<div class="info warning"><h5>Attention</h5>',
'<div class="info truc"><h5>Trucs</h5>',
'<div class="info truc"><h5>Trucs</h5>',
'<div class="info asavoir"><h5>A savoir</h5>',
'<div class="info anoter"><h5>A noter</h5>',
'</div>',
'<div class="info warning"><h5>Attention</h5>',
'<div class="info truc"><h5>Trucs</h5>',
'<div class="info truc"><h5>Trucs</h5>',
'<div class="info asavoir"><h5>A savoir</h5>',
'<div class="info anoter"><h5>A noter</h5>',
'</div>',
'',
'',
),
$article->content);
return $article;
}
}