protected function postProcessOptions($options) { if (!$options['template']) { if ($options['is_edit']) { $options['template'] = "auto_edit_list.html"; } else { $options['template'] = "auto_view_list.html"; } } return parent::postProcessOptions($options); }
protected function postProcessOptions($options) { $options = parent::postProcessOptions($options); if (!$this->primaryObject instanceof I2CE_Form) { return $options; } if (!$options['base_url']) { if ($this->page->module() == 'I2CE') { $options['base_url'] = $this->page->page(); } else { $options['base_url'] = $this->page->module() . '/' . $this->page->page(); } } foreach ($options['child_forms'] as $child_form => &$c_data) { if (array_key_exists('disabled', $c_data) && $c_data['disabled']) { unset($options['child_forms'][$child_form]); continue; } if (!array_key_exists('form', $c_data) || !$c_data['form']) { $c_data['form'] = $child_form; } if (!array_key_exists('title', $c_data) || !$c_data['title']) { $ff = I2CE_FormFactory::instance(); if (($child_form_obj = $ff->createContainer(array($c_data['from'], 0))) instanceof I2CE_Form) { $c_data['title'] = $child_form_obj->getDisplayName(); } else { $c_data['title'] = $child_form; } } if (!array_key_exists('action_links', $c_data) || !is_array($c_data['action_links'])) { $c_data['action_links'] = array(); } if ($options['auto_add_new_child_link']) { $text = 'Add new'; I2CE::getConfig()->setIfIsSet($text, "/modules/Lists/messages/add_new_text"); $c_data['action_links']['auto_add_new'] = array('text' => $text, 'href' => $options['base_url'] . '/edit/' . $options['append_url'] . '/' . $child_form . '?parent=' . $this->primaryObject->getNameID()); } if (!array_key_exists('link', $c_data) || !$c_data['link']) { $c_data['link'] = $options['base_url'] . '/view/' . $options['append_url'] . '/' . $child_form . '?id='; $c_data['link_filter'] = '.form_content'; } if (!array_key_exists('container_link', $c_data) || !$c_data['container_link']) { $c_data['container_link'] = $options['base_url'] . '/view_container_' . $child_form . '/' . $options['append_url'] . '?id='; $c_data['container_link_filter'] = '.container_content'; } if (!array_key_exists('ajax_load_child', $c_data)) { $c_data['ajax_load_child'] = $options['ajax_load_child']; } } unset($c_data); if ($options['auto_edit_link']) { $text = 'Update this information'; I2CE::getConfig()->setIfIsSet($text, "/modules/Lists/messages/edit_text"); $options['action_links']['auto_edit'] = array('formfield' => $this->primaryObject->getName() . ':id', 'text' => $text, 'href' => $options['base_url'] . '/edit/' . $options['append_url'] . '?id='); } if ($options['is_container']) { if (array_key_exists($child_form = $options['is_container'], $options['child_forms'])) { $options['child_forms'] = array($child_form => $options['child_forms'][$child_form]); //only deal with this child form $options['child_forms'][$child_form]['ajax_load_child'] = 'static'; } else { //badness in configuration. do nothin $options['child_forms'] = array(); } } return $options; }