Example #1
0
 /**
  * Creates a new model.
  * If creation is successful, the browser will be redirected to the 'view' page.
  */
 public function actionCreate()
 {
     $model = new Page();
     if (isset($_POST['Page'])) {
         $model->attributes = $_POST['Page'];
         if (isset($_POST['tags'])) {
             $model->setTags($_POST['tags']);
         }
         if ($model->save()) {
             $this->redirectModel($model);
         }
     } else {
         if (isset($_GET['key'])) {
             $model->key = $_GET['key'];
         }
     }
     $this->render('create', array('model' => $model));
 }
Example #2
0
 private function _add()
 {
     $data = $_POST['page'];
     Flash::set('post_data', (object) $data);
     if (empty($data['title'])) {
         // Rebuilding original page
         $part = $_POST['part'];
         if (!empty($part)) {
             $tmp = false;
             foreach ($part as $key => $val) {
                 $tmp[$key] = (object) $val;
             }
             $part = $tmp;
         }
         $page = $_POST['page'];
         if (!empty($page) && !array_key_exists('is_protected', $page)) {
             $page = array_merge($page, array('is_protected' => 0));
         }
         $tags = $_POST['page_tag'];
         //Flash::setNow('page', (object) $page);
         //Flash::setNow('page_parts', (object) $part);
         //Flash::setNow('page_tag', $tags);
         Flash::setNow('error', __('You have to specify a title!'));
         //redirect(get_url('page/add'));
         // display things ...
         $this->setLayout('backend');
         $this->display('page/edit', array('action' => 'add', 'page' => (object) $page, 'tags' => $tags, 'filters' => Filter::findAll(), 'behaviors' => Behavior::findAll(), 'page_parts' => (object) $part, 'layouts' => Record::findAllFrom('Layout')));
     }
     /**
      * Make sure the title doesn't contain HTML
      *
      * @todo Replace this by HTML Purifier?
      */
     if (Setting::get('allow_html_title') == 'off') {
         use_helper('Kses');
         $data['title'] = kses(trim($data['title']), array());
     }
     $page = new Page($data);
     // save page data
     if ($page->save()) {
         // get data from user
         $data_parts = $_POST['part'];
         Flash::set('post_parts_data', (object) $data_parts);
         foreach ($data_parts as $data) {
             $data['page_id'] = $page->id;
             $data['name'] = trim($data['name']);
             $page_part = new PagePart($data);
             $page_part->save();
         }
         // save tags
         $page->setTags($_POST['page_tag']['tags']);
         Flash::set('success', __('Page has been saved!'));
     } else {
         Flash::set('error', __('Page has not been saved!'));
         redirect(get_url('page/add'));
     }
     // save and quit or save and continue editing ?
     if (isset($_POST['commit'])) {
         redirect(get_url('page'));
     } else {
         redirect(get_url('page/edit/' . $page->id));
     }
 }
Example #3
0
         $bddpage->setComments($commentsserializa);
     }
     //tags
     foreach ($page->getElementsByTagName('div') as $divs) {
         if ($divs->getAttribute('class') == 'taglist') {
             foreach ($divs->getElementsByTagName('a') as $a) {
                 $tags[] = $a->textContent;
             }
         }
     }
     if (!empty($tags)) {
         $tagsserialize = '';
         foreach ($tags as $tag) {
             $tagsserialize = $tagsserialize . $tag . '|';
         }
         $bddpage->setTags($tagsserialize);
     }
     $pageManager->add($bddpage);
     //vue de transition
     ob_start();
     //print_r($tags);
     require_once 'view/pipe/pipeexecnext.php';
     $content = ob_get_contents();
     ob_end_clean();
     require_once 'view/layout/layout.php';
 } else {
     ob_start();
     require_once 'view/pipe/pipeexecnext.php';
     echo '404';
     $content = ob_get_contents();
     ob_end_clean();