File indexing completed on 2024-12-22 05:33:26
0001 <?php 0002 /** 0003 * ocs-webserver 0004 * 0005 * Copyright 2016 by pling GmbH. 0006 * 0007 * This file is part of ocs-webserver. 0008 * 0009 * This program is free software: you can redistribute it and/or modify 0010 * it under the terms of the GNU Affero General Public License as 0011 * published by the Free Software Foundation, either version 3 of the 0012 * License, or (at your option) any later version. 0013 * 0014 * This program is distributed in the hope that it will be useful, 0015 * but WITHOUT ANY WARRANTY; without even the implied warranty of 0016 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 0017 * GNU Affero General Public License for more details. 0018 * 0019 * You should have received a copy of the GNU Affero General Public License 0020 * along with this program. If not, see <http://www.gnu.org/licenses/>. 0021 **/ 0022 0023 /* 0024 * To change this template, choose Tools | Templates 0025 * and open the template in the editor. 0026 */ 0027 0028 class Backend_ContentController extends Local_Controller_Action_Backend 0029 { 0030 0031 private $_contentTable; 0032 0033 public function init() 0034 { 0035 $this->_contentTable = new Default_Model_DbTable_Content(); 0036 parent::init(); 0037 } 0038 0039 public function indexAction() 0040 { 0041 $selCon = $this->_contentTable->select()->setIntegrityCheck(false); 0042 0043 $selCon->from($this->_contentTable)->where('is_deleted=0'); 0044 0045 $paginator = Zend_Paginator::factory($selCon); 0046 $paginator->setCurrentPageNumber($this->getParam('page')); 0047 0048 $this->view->paginator = $paginator; 0049 } 0050 0051 public function addAction() 0052 { 0053 if ($this->_request->isPost()) { 0054 // is Post-Request - das Formular 0055 $form = $this->getForm(); 0056 if ($form->isValid($_POST)) { 0057 //alles ok 0058 $values = $form->getValues(); 0059 0060 $insertValues = array( 0061 'title' => $values['title_intern'], 0062 'url_name' => $values['url_name'], 0063 'content' => $values['content'], 0064 'created_at' => new Zend_Db_Expr('Now()'), 0065 'changed_at' => new Zend_Db_Expr('Now()') 0066 ); 0067 0068 $this->_contentTable->insert($insertValues); 0069 0070 $this->view->saveTitle = "Content gespeichert"; 0071 } else { 0072 //fehler 0073 $this->view->form = $form; 0074 } 0075 } else { 0076 // normaler Aufruf (GET) - kein Formular 0077 $this->view->form = $this->getForm(); 0078 } 0079 } 0080 0081 public function getForm($valTitleIntern = "", $valContent = "", $valUrlName = "") 0082 { 0083 0084 $form = new Zend_Form(); 0085 $form->setMethod('POST'); 0086 0087 $title = $form->createElement('text', 'title_intern'); 0088 $title->setLabel('Interner Titel: '); 0089 $title->setValue($valTitleIntern); 0090 $title->setRequired(true); 0091 0092 $urlName = $form->createElement('text', 'url_name'); 0093 $urlName->setLabel('URL Name: '); 0094 $urlName->setValue($valUrlName); 0095 $urlName->setRequired(true); 0096 0097 $content = $form->createElement('textarea', 'content'); 0098 $content->setLabel('Content: '); 0099 $content->setValue($valContent); 0100 $content->setRequired(true); 0101 0102 $form->addElement($title)->addElement($urlName)->addElement($content) 0103 ->addElement('submit', 'save', array('label' => 'Speichern')) 0104 ; 0105 0106 return $form; 0107 } 0108 0109 public function editAction() 0110 { 0111 if ($this->_request->isPost()) { 0112 // is Post-Request - das Formular 0113 $form = $this->getForm(); 0114 if ($form->isValid($_POST)) { 0115 //alles ok 0116 $values = $form->getValues(); 0117 0118 $updateValues = array( 0119 'title' => $values['title_intern'], 0120 'url_name' => $values['url_name'], 0121 'content' => $values['content'], 0122 'changed_at' => new Zend_Db_Expr('Now()') 0123 ); 0124 0125 $id = $this->_request->getParam('id'); 0126 0127 $this->_contentTable->update($updateValues, "content_id=" . $id); 0128 0129 $this->view->saveTitle = "Content gespeichert"; 0130 } else { 0131 //fehler 0132 $this->view->form = $form; 0133 } 0134 } else { 0135 // normaler Aufruf (GET) - kein Formular 0136 $id = $this->_request->getParam('id'); 0137 0138 $editItem = $this->_contentTable->find($id); 0139 $editItem = $editItem[0]; 0140 $this->view->form = 0141 $this->getForm(stripslashes($editItem->title), stripslashes($editItem->content), stripslashes($editItem->url_name)); 0142 } 0143 } 0144 0145 public function setstatusAction() 0146 { 0147 $this->_helper->layout->disableLayout(); 0148 0149 $id = $this->getParam('id'); 0150 $status = $this->getParam("status"); 0151 0152 $this->_contentTable->setStatus($status, $id); 0153 0154 $this->_helper->json(true); 0155 } 0156 0157 public function deleteAction() 0158 { 0159 $this->_helper->layout->disableLayout(); 0160 0161 $id = $this->getParam('id'); 0162 0163 $this->_contentTable->setDelete($id); 0164 0165 $this->_helper->json(true); 0166 } 0167 0168 }