Esempio n. 1
0
 public function edit($tpl = null)
 {
     // disable menu
     YRequest::setVar('hidemainmenu', 1);
     // get database
     $this->db = JFactory::getDBO();
     // get request vars
     $cid = YRequest::getArray('cid.0', '', 'int');
     $edit = $cid > 0;
     // get item
     if ($edit) {
         $this->submission = YTable::getInstance('submission')->get($cid);
     } else {
         $this->submission = new Submission();
         $this->submission->application_id = $this->application->id;
         $this->submission->access = 1;
     }
     // set toolbar items
     $this->joomla->set('JComponentTitle', $this->application->getToolbarTitle(JText::_('Submission') . ': ' . $this->submission->name . ' <small><small>[ ' . ($edit ? JText::_('Edit') : JText::_('New')) . ' ]</small></small>'));
     JToolBarHelper::save();
     JToolBarHelper::custom('saveandnew', 'saveandnew', 'saveandnew', 'Save & New', false);
     JToolBarHelper::apply();
     JToolBarHelper::cancel('cancel', $edit ? 'Close' : 'Cancel');
     ZooHelper::toolbarHelp();
     // published select
     $this->lists['select_published'] = JHTML::_('select.booleanlist', 'state', null, $this->submission->state);
     // tooltip select
     $this->lists['select_tooltip'] = JHTML::_('select.booleanlist', 'params[show_tooltip]', null, $this->submission->showTooltip());
     // type select
     $this->types = array();
     foreach ($this->application->getTypes() as $type) {
         // list types with submission layouts only
         if (count(ZooHelper::getLayouts($this->application, $type->id, 'submission')) > 0) {
             $form = $this->submission->getForm($type->id);
             $this->types[$type->id]['name'] = $type->name;
             $options = array(JHTML::_('select.option', '', '- ' . JText::_('not submittable') . ' -'));
             $this->types[$type->id]['select_layouts'] = JHTML::_('zoo.layoutList', $this->application, $type->id, 'submission', $options, 'params[form][' . $type->id . '][layout]', '', 'value', 'text', $form->get('layout'));
             $options = array(JHTML::_('select.option', '', '- ' . JText::_('uncategorized') . ' -'));
             $this->types[$type->id]['select_categories'] = JHTML::_('zoo.categorylist', $this->application, $options, 'params[form][' . $type->id . '][category]', 'size="1"', 'value', 'text', $form->get('category'));
         }
     }
     // display view
     $this->getView()->setLayout('edit')->display();
 }
Esempio n. 2
0
 public static function layoutList($application, $type_id, $layout_type, $options, $name, $attribs = null, $key = 'value', $text = 'text', $selected = NULL, $idtag = false, $translate = false)
 {
     // set options
     if (is_array($options)) {
         reset($options);
     } else {
         $options = array($options);
     }
     $layouts = ZooHelper::getLayouts($application, $type_id, $layout_type);
     foreach ($layouts as $layout => $metadata) {
         $options[] = JHTML::_('select.option', $layout, $metadata->get('name'));
     }
     return JHTML::_('select.genericlist', $options, $name, $attribs, $key, $text, $selected, $idtag, $translate);
     // create options
     foreach ($application->getTemplates() as $template) {
         $metadata = $template->getMetadata();
         $options[] = JHTML::_('select.option', $template->name, $metadata['name']);
     }
     return JHTML::_('select.genericlist', $options, $name, $attribs, $key, $text, $selected, $idtag, $translate);
 }