コード例 #1
0
ファイル: Form.php プロジェクト: web-feet/coasterframework
 /**
  * Save form data
  * @param array $formData
  * @return FormSubmission
  */
 public function submissionSaveData(array $formData)
 {
     // remove empty values
     $formData = array_filter($formData);
     // get array of files to upload
     $files = [];
     foreach ($formData as $field => $value) {
         if (Request::hasFile($field)) {
             $files[$field] = Request::file($field);
             unset($formData[$field]);
         }
     }
     // save form submission
     $form_submission = new FormSubmission();
     $form_submission->form_block_id = $this->_block->id;
     $form_submission->content = serialize($formData);
     $form_submission->sent = 0;
     $form_submission->from_page_id = PageBuilder::pageId();
     $form_submission->uploadFiles($files);
     $form_submission->save();
     return $form_submission;
 }
コード例 #2
0
 /**
  * Display pages selected with view
  * Also reverse lookup option, find pages with the current page selected
  * @param string $content
  * @param array $options
  * @return string
  */
 public function display($content, $options = [])
 {
     $pages = [];
     $page_ids = [];
     if (isset($options['reverse'])) {
         // get page_ids on which current page is selected in this block
         $currentPageId = PageBuilder::pageId(true);
         if ($currentPageId) {
             $same_blocks = PageBlock::where('block_id', '=', $this->_block->id)->get();
             foreach ($same_blocks as $same_block) {
                 $block_page_ids = @unserialize($same_block->content);
                 if (!empty($block_page_ids)) {
                     foreach ($block_page_ids as $k => $block_page_id) {
                         $block_page_id = Path::unParsePageId($block_page_id);
                         if ($currentPageId == $block_page_id) {
                             $page_ids[] = $same_block->page_id;
                             break;
                         }
                     }
                 }
             }
         }
     } elseif (!empty($content)) {
         $page_ids = unserialize($content);
     }
     if (!empty($page_ids)) {
         foreach ($page_ids as $page_id) {
             $parsedPageId = Path::unParsePageId($page_id, false);
             $pages[$page_id] = new PageDetails($parsedPageId[0], !empty($parsedPageId[1]) ? $parsedPageId[1] : 0);
         }
     }
     $template = !empty($options['view']) ? $options['view'] : $this->_block->name;
     $selectPageViews = 'themes.' . PageBuilder::getData('theme') . '.blocks.selectpages.';
     if (View::exists($selectPageViews . $template)) {
         return View::make($selectPageViews . $template, array('pages' => $pages))->render();
     } else {
         return 'Select pages template not found';
     }
 }