Current File : /home/karenpetzb/application/modules/backoffice/controllers/BlogCommentController.php
<?php
class Backoffice_BlogCommentController extends Modules_Backoffice_Controllers_MainController
{

	public function init()
	{
		$this->view->title = "Administration";
  
		$this->view->currentMenu = "BlogComment";
	} 
    
    public function indexAction()
	{
		$this->_forward('/search');
    }
    public function searchAction()
	{
        $this->view->titlePage = "Rechercher un commentaire";  
        $data = array (  
                 'message' => "",
                 'is_publish' => 0,
                 'is_close' => 0, 
                 'id_subject' => 0
        ); 
         try {
            $this->view->listSearchs = array();
		    $blogSubject = new BlogSubject();
            $this->view->listSubjects = $blogSubject->AllSubjects();
		    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();

                $idSubject = 0;
                if (isset($params['id_subject'])) {
                    $idSubject = (int)$params['id_subject'];
                }
		        //Refractor the params
		        $data = array (  
			 	        'message' => $filter->filter($params['message']),
			 	        'is_publish' => (int)$params['is_publish'],
			 	        'is_close' => (int)$params['is_close'],
			 	        'id_subject' => $idSubject
		        ); 
					
		        $blogComment = new BlogComment();
				$this->view->listSearchs = $blogComment->search($data); 
            }
        }
        catch (Zend_Exception $e) {
			$this->log($e->getMessage(),'err');
		} 
		$this->view->populateData = $data; 
    }
    
    

	public function addAction()
	{
        $this->view->titlePage = "Ajouter un commentaire";
        $this->view->messageSuccess = "";
        $this->view->messageError = "";

        $data = array (  
                 'is_publish' =>  1,  
                 'message' => "",
                 'pseudo' => "Administrateur", 
                 'id_subject' => 0
        );  
		try {
		    $blogSubject = new BlogSubject();
            $this->view->listSubjects = $blogSubject->AllSubjects();
		    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());


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

                $id_subject =0;
                if (isset($params['id_subject'])) {
                    $id_subject = (int)$params['id_subject'];
                } 
             
			    $data = array (  
			 		    'id_subject' => $id_subject,
			 	        'is_publish' =>  (int)$params['is_publish'], 
			 		    'pseudo' => $filter->filter($params['pseudo']),
			 		    'message' => $params['message'], 
			 		    'date_updated' => date('Y-m-d H:i:s') 
			    );
			    if (
			    $validator->isValid($data['message']) &&
			    $validator->isValid($data['pseudo']) && 
                $id_subject > 0
			    ) {
		                $blogComment = new BlogComment();
					    $blogComment->insert($data);
					    $this->view->messageSuccess = "Le commentaire a �t� ajout�";

			    } else {
				    foreach ($validator->getErrors() as $errorCode) {
					    $this->view->messageError .=  $this->getErrorValidator($errorCode);
				    }
                    if ($id_subject == 0) {
					    $this->view->messageError .= "Choisissez un sujet.";
                    }
			    } 
            } 
		}
        catch (Zend_Exception $e) { 
			$this->log($e->getMessage(),'err');
		}
		$this->view->populateData = $data;
	}
    
	public function editAction()
	{
        $this->view->titlePage = "Modifier un commentaire";
        $this->view->messageSuccess = "";
        $this->view->messageError = "";
		try {
			
		    //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());

		    $blogComment = new BlogComment();
		    if ($this->getRequest()->getParam('id')) {
			    $id = (int)$this->getRequest()->getParam('id');
			    if ($id>0) {
				    $this->view->populateData = $blogComment->fetchRow('ID = '.$id);
			    }
		    }
        
		    $blogSubject = new BlogSubject();
            $this->view->listSubjects = $blogSubject->AllSubjects();

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

			    //get the form params
			    $params = $this->_request->getPost();
             
                $id_subject =0;
                if ((int)$params['id_subject'] > 0) {
                    $id_subject = (int)$params['id_subject'];
                } 
            
			    //Refractor the params 
			    $data = array (  
			 		    'id_subject' => $id_subject,
			 	        'is_publish' =>  (int)$params['is_publish'], 
			 		    'pseudo' => $filter->filter($params['pseudo']),
			 		    'message' => $params['message'], 
			 		    'date_updated' => date('Y-m-d H:i:s') 
			    );
            
			    if (
			    $validator->isValid($data['message']) &&
			    $validator->isValid($data['pseudo']) && 
                $id_subject > 0
			    ) {
					    $id = (int)$params['id'];
					    if ( $id > 0) {
							
						    $blogComment->update($data,'ID = '.$id); 
						    $this->view->messageSuccess = "Le commentaire a �t� modifi�";
					    }
                        $this->view->populateData = $blogComment->fetchRow('ID = '.$id);
			    } else {
				    foreach ($validator->getErrors() as $errorCode) {
					    $this->view->messageError .=  $this->getErrorValidator($errorCode);
				    }
                    $this->view->populateData = $data;
                    if ($id_subject == 0) {
					    $this->view->messageError .= "Choisissez un sujet.";
                    }
			    }
            }
		}
        catch (Zend_Exception $e) {
			$this->view->populateData = $data;
			$this->log($e->getMessage(),'err');
		}
	}
 
}
?>