/** * Tab function, allows a user to administer tabs */ public function tab($id = null) { $this->_force_admin(); if ($_SERVER['REQUEST_METHOD'] == 'POST') { if ($_POST['newtab']) { unset($_POST['id']); unset($id); } else { $postdata = $_POST; foreach ($postdata['lock_state'] as $key => $value) { $lock_state += $value; } $postdata['lock_state'] = $lock_state; $postdata['slug'] = str_replace(' ', '-', strtolower($postdata['name'])); $tab_obj = new MyTab($postdata); $id = $tab_obj->id; if (isset($_POST['targets'])) { $tab_obj->_save(); MyPortalObject::save_targets($_POST['targets'], $tab_obj->id, 'MyTab'); echo 'Your tab has been saved.'; } else { echo 'You have selected no targets and your tab has not been saved. Did you mean to select public targeting?'; } } } if ($tab_obj->id == null && $id == null) { $tabform = new TabForm(); } else { if ($tab_obj->id != null) { $id = $tab_obj->id; } $tabform = MyPortalObject::fetchRow($id, 'MyTab'); $tabform = new TabForm($tabform, true); } $this->tpl->assign('tabform', $tabform); $this->display('admin-tab.tpl'); }