Current File : /home/karenpetzb/application/modules/backoffice/controllers/FaqController.php
<?php

class Backoffice_FaqController extends Modules_Backoffice_Controllers_MainController
{

	function init()
	{
		$this->view->title = "Administration";
 
		$this->isConnectedWithRole('isFooter'); 
	}
	function indexAction()
	{
		$this->_forward('/list');

	}
	
	public function listAction() {
		$this->view->titlePage = "FAQ";
		
		$faqType = new FAQType();
		$this->view->faqtypes = $faqType->getTypesAll();

		$faq = new FAQ();
		$this->view->faq = $faq->getListsAll();
	}
	
	public function addfaqtypeAction() {
		$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());

			//valideurs pour les chaines
			$validator = new Zend_Validate();
			$validator -> addValidator(new Zend_Validate_NotEmpty())
			-> addValidator(new Zend_Validate_StringLength(3));


			//get the form params
			$params = $this->_request->getPost();

			$data = array (
			 		'NOM' => $filter->filter($params['faq_nom'])
			);

			if ($validator->isValid($data['NOM'])
			) {

				try {
					$faq_type = new FAQType();
					$faq_type->insert($data);

					$this->view->messageSuccess = "La cat�gorie a �t� ajout�e";

				} catch (Zend_Exception $e) {
					$this->view->messageError = "La cat�gorie existe d�ja";
					$this->log($e->getMessage(),'err');

					$this->_forward('/list');
				}
			} else {
				foreach ($validator->getErrors() as $errorCode) {
					$this->view->messageError .=  $this->getErrorValidator($errorCode);
				}
			}
		}
		$this->_forward('/list');
	}
	
	public function delfaqtypeAction() {
		$this->view->messageSuccess = "";
		$this->view->messageError = "";

		if($this->_request->getParam('id')) {
			$id = (int)$this->_request->getParam('id');
			if ($id > 0) {
				try {
					$faqtype = new FAQType();
					$faq = new FAQ();
					
					if ($faq->isTypeExist($id) == false) {
						$faqtype->delete("ID = ".$id);
						$this->view->messageSuccess = "La cat�gorie a �t� supprim�e";
					} else {
						$this->view->messageError = "La cat�gorie est utilis�e";
					}
				} catch (Zend_Exception $e) {
					$this->log($e->getMessage(),'err');
					$this->view->messageError = $e->getMessage();
				}
			}
		}
		$this->_forward('/list');
	}
	
	public function editfaqtypeAction() {
		$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());

			//valideurs pour les chaines
			$validator = new Zend_Validate();
			$validator -> addValidator(new Zend_Validate_NotEmpty())
			-> addValidator(new Zend_Validate_StringLength(3));


			//get the form params
			$params = $this->_request->getPost();

			$data = array (
			 		'NOM' => $filter->filter($params['faq_nom'])
			);

			if ($validator->isValid($data['NOM'])
			) {

				try {
					$faqType = new FAQType();
					$faqType->update($data, "ID = ".$params['faq_id']);

					$this->view->messageSuccess = "La cat�gorie a �t� modifi�e";

				} catch (Zend_Exception $e) {
					$this->log($e->getMessage(),'err');
					$this->view->messageError = "La cat�gorie n'a pas �t� modifi�e";

					$this->_forward('/list');
				}
			} else {
				foreach ($validator->getErrors() as $errorCode) {
					$this->view->messageError .=  $this->getErrorValidator($errorCode);
				}
			}
		}
		$this->_forward('/list');
	}
	public function activefaqtypeAction() {
		$this->view->messageSuccess = "";
		$this->view->messageError = "";

		if($this->_request->getParam('id')) {
			$id = (int)$this->_request->getParam('id');
			if ($id > 0) {
				try {
					$faqtype = new FAQType();
					$data = array (
					 		'isACTIVE' => 1
					);
					$faqtype->update($data, "ID = ".$id);
					$this->view->messageSuccess = "La cat�gorie est activ�e";
				} catch (Zend_Exception $e) {
					$this->view->messageError = $e->getMessage();
				}
			}
		}
		$this->_forward('/list');
	}
	public function unactivefaqtypeAction() {
		$this->view->messageSuccess = "";
		$this->view->messageError = "";

		if($this->_request->getParam('id')) {
			$id = (int)$this->_request->getParam('id');
			if ($id > 0) {
				try {
					$faqtype = new FAQType();
					$data = array (
					 		'isACTIVE' => 0
					);
					$faqtype->update($data, "ID = ".$id);
					$this->view->messageSuccess = "La cat�gorie est d�sactiv�e";
				} catch (Zend_Exception $e) {
					$this->log($e->getMessage(),'err');
					$this->view->messageError = $e->getMessage();
				}
			}
		}
		$this->_forward('/list');
	}
public function addfaqAction() {
		$this->view->messageSuccess = "";
		$this->view->messageError = "";

		if ($this->_request->isPost()) {

			//filtres pour changer les chaines
			$filter = new Zend_Filter();
			$filter	->addFilter(new Zend_Filter_StringTrim());

			//valideurs pour les chaines
			$validator = new Zend_Validate();
			$validator -> addValidator(new Zend_Validate_NotEmpty())
			-> addValidator(new Zend_Validate_StringLength(3));


			//get the form params
			$params = $this->_request->getPost();

			$data = array (
			 		'QUESTION' => $filter->filter($params['faq_question']),
			 		'REPONSE' => $filter->filter($params['faq_reponse']),
			 		'POSITION' => $filter->filter($params['faq_position']),
			 		'TYPE' => $filter->filter($params['faq_type'])
			);

			if ($validator->isValid($data['QUESTION']) &&
			$validator->isValid($data['REPONSE'])) {

				try {
					$faq = new FAQ();
					$faq->insert($data);

					$this->view->messageSuccess = "La question a �t� ajout�e";

				} catch (Zend_Exception $e) {
					$this->view->messageError = "La question existe d�ja";

					$this->log($e->getMessage(),'err');
					$this->_forward('/list');
				}
			} else {
				foreach ($validator->getErrors() as $errorCode) {
					$this->view->messageError .=  $this->getErrorValidator($errorCode);
				}
			}
		}
		$this->_forward('/list');
	}
	
	public function delfaqAction() {
		$this->view->messageSuccess = "";
		$this->view->messageError = "";

		if($this->_request->getParam('id')) {
			$id = (int)$this->_request->getParam('id');
			if ($id > 0) {
				try {
					$faq = new FAQ();
					$faq->delete("ID = ".$id);
					$this->view->messageSuccess = "La question a �t� supprim�e";
					
				} catch (Zend_Exception $e) {
					$this->log($e->getMessage(),'err');
					$this->view->messageError = $e->getMessage();
				}
			}
		}
		$this->_forward('/list');
	}
	
	public function editfaqAction() {
		$this->view->messageSuccess = "";
		$this->view->messageError = "";

		if ($this->_request->isPost()) {

			//filtres pour changer les chaines
			$filter = new Zend_Filter();
			$filter->addFilter(new Zend_Filter_StringTrim());

			//valideurs pour les chaines
			$validator = new Zend_Validate();
			$validator -> addValidator(new Zend_Validate_NotEmpty())
			-> addValidator(new Zend_Validate_StringLength(3));


			//get the form params
			$params = $this->_request->getPost();

			$data = array (
			 		'QUESTION' => $filter->filter($params['faq_question']),
			 		'REPONSE' => $filter->filter($params['faq_reponse']),
			 		'POSITION' => $filter->filter((int)$params['faq_position']),
			 		'TYPE' => $filter->filter($params['faq_type'])
			);

			if ($validator->isValid($data['QUESTION']) &&
			$validator->isValid($data['REPONSE'])) {

				try {
					$faq = new FAQ();
					$faq->update($data, "ID = ".$params['faq_id']);

					$this->view->messageSuccess = "La question a �t� modifi�e";

				} catch (Zend_Exception $e) {
					$this->log($e->getMessage(),'err');
					$this->view->messageError = "La question n'a pas �t� modifi�e";

					$this->_forward('/list');
				}
			} else {
				foreach ($validator->getErrors() as $errorCode) {
					$this->view->messageError .=  $this->getErrorValidator($errorCode);
				}
			}
		}
		$this->_forward('/list');
	}
	public function activefaqAction() {
		$this->view->messageSuccess = "";
		$this->view->messageError = "";

		if($this->_request->getParam('id')) {
			$id = (int)$this->_request->getParam('id');
			if ($id > 0) {
				try {
					$faq = new FAQ();
					$data = array (
					 		'isACTIVE' => 1
					);
					$faq->update($data, "ID = ".$id);
					$this->view->messageSuccess = "La question est activ�e";
				} catch (Zend_Exception $e) {
					$this->log($e->getMessage(),'err');
					$this->view->messageError = $e->getMessage();
				}
			}
		}
		$this->_forward('/list');
	}
	public function unactivefaqAction() {
		$this->view->messageSuccess = "";
		$this->view->messageError = "";

		if($this->_request->getParam('id')) {
			$id = (int)$this->_request->getParam('id');
			if ($id > 0) {
				try {
					$faq = new FAQ();
					$data = array (
					 		'isACTIVE' => 0
					);
					$faq->update($data, "ID = ".$id);
					$this->view->messageSuccess = "La question est d�sactiv�e";
				} catch (Zend_Exception $e) {
					$this->log($e->getMessage(),'err');
					$this->view->messageError = $e->getMessage();
				}
			}
		}
		$this->_forward('/list');
	}
}
?>