Current File : /home/karenpetzb/application/modules/backoffice/controllers/BlogCategoryController.php |
<?php
class Backoffice_BlogCategoryController extends Modules_Backoffice_Controllers_MainController
{
public function init()
{
$this->view->title = "Administration";
$this->view->currentMenu = "BlogCategory";
}
function indexAction()
{
$this->_forward('/list');
}
function listAction()
{
try {
$this->view->titlePage = "Gestion des cat�gories du blog";
$blogCategory = new BlogCategory();
$this->view->listallblogcategories = $blogCategory->AllCategories(0);
} catch (Zend_Exception $e) {
$this->view->messageError = $e->getMessage();
$this->log($e->getMessage(),'err');
}
}
function delAction() {
$this->view->messageSuccess = "";
$this->view->messageError = "";
if($this->_request->getParam('id')) {
$id = (int)$this->_request->getParam('id');
if ($id > 0) {
try {
$category = new BlogCategory();
if ($category->fetchRow('id_parent = '.$id)) {
$this->view->messageError = 'Cette cat�gorie est parente';
} else {
$subject = new BlogSubject();
$select = $subject->fetchRow('id_category = '.$id);
if ($select) {
$this->view->messageError = 'Cette cat�gorie est utilis�e par le sujet : <b>'.$select->title."<b/>";
} else {
$category->delete('id = '.$id);
$this->view->messageSuccess = "La cat�gorie du blog a et� supprim�e";
$this->log("La cat�gorie du blog a et� supprim�e",'info');
}
}
}
catch (Zend_Exception $e) {
$this->view->messageError = $e->getMessage();
$this->log($e->getMessage(),'err');
}
}
}
$this->_forward('/list');
}
public function addAction()
{
$data = array (
'is_publish' => 0,
'is_close' => 0,
'title' => "",
'sub_title' => "",
'message' => ""
);
try {
$blogCategory = new BlogCategory();
$this->view->listallblogcategories = $blogCategory->AllCategories(0);
$this->view->titlePage = "Ajouter une cat�gorie";
$this->view->messageSuccess = "";
$this->view->messageError = "";
if ($this->_request->isPost()) {
//filtres pour changer les chaines
$filter = new Zend_Filter();
$filter ->addFilter(new Zend_Filter_StripTags())
->addFilter(new Zend_Filter_StringTrim());
//get the form params
$params = $this->_request->getPost();
//Refractor the params
$data = array (
'is_publish' => (int)$params['is_publish'],
'title' => $filter->filter($params['title']),
'message' => $params['message'],
'sub_title' => $params['sub_title'],
'is_close' => (int)$params['is_close'],
'date_updated' => date('Y-m-d H:i:s') ,
'id_parent' => (int)$params['idparent']
);
$validator = new Zend_Validate();
$validator -> addValidator(new Zend_Validate_NotEmpty());
if (
$validator->isValid($data['title']) &&
$data['id_parent'] > 0
) {
$blogCategory->insert($data);
$this->view->messageSuccess = "La cat�gorie a �t� ajout�e";
$data['title'] = "";
$data['sub_title'] = "";
$data['message'] = "";
} else {
foreach ($validator->getErrors() as $errorCode) {
$this->view->messageError .= $this->getErrorValidator($errorCode);
}
if ($data['id_parent'] == 0) {
$this->view->messageError .= "Choisissez une cat�gorie parente.";
}
}
}
}
catch (Zend_Exception $e) {
$this->log($e->getMessage(),'err');
}
$this->view->populateData = $data;
}
public function editAction()
{
$data = array (
'is_publish' => 0,
'is_close' => 0,
'title' => "",
'sub_title' => "",
'message' => ""
);
try {
$blogCategory = new BlogCategory();
$this->view->listallblogcategories = $blogCategory->AllCategories(0);
$this->view->titlePage = "Modifier une cat�gorie";
$this->view->messageSuccess = "";
$this->view->messageError = "";
//filtres pour changer les chaines
$filter = new Zend_Filter();
$filter ->addFilter(new Zend_Filter_StripTags())
->addFilter(new Zend_Filter_StringTrim());
if ($this->getRequest()->getParam('id')) {
$id = (int)$this->getRequest()->getParam('id');
if ($id>0) {
$this->view->populateData = $blogCategory->fetchRow('ID = '.$id);
}
}
if ($this->getRequest()->isPost()) {
//get the form params
$params = $this->_request->getPost();
//Refractor the params
$data = array (
'id' => (int)$params['id'],
'is_publish' => (int)$params['is_publish'],
'title' => $filter->filter($params['title']),
'message' => $params['message'],
'sub_title' => $params['sub_title'],
'is_close' => (int)$params['is_close'],
'date_updated' => date('Y-m-d H:i:s') ,
'id_parent' => (int)$params['idparent']
);
$this->view->populateData = $data;
$validator = new Zend_Validate();
$validator -> addValidator(new Zend_Validate_NotEmpty());
if (
$validator->isValid($data['title'])
) {
$id = (int)$params['id'];
if ( $id > 0) {
$blogCategory->update($data,'ID = '.$id);
$this->view->messageSuccess = "La cat�gorie a �t� modifi�e";
$this->view->populateData = $blogCategory->fetchRow('ID = '.$id);
}
} else {
foreach ($validator->getErrors() as $errorCode) {
$this->view->messageError .= $this->getErrorValidator($errorCode);
}
if ($data['id_parent'] == 0) {
$this->view->messageError .= "Choisissez une cat�gorie parente.";
}
}
}
}
catch (Zend_Exception $e) {
$this->view->populateData = $data;
$this->log($e->getMessage(),'err');
}
}
}
?>