/** * Save the ACLObject. Does not save the accessors. */ function saveEx() { // save general settings $uds = new UpdateSet("acl_management", "GUID = " . $this->guid); $uds->add("INTERNAL", $this->isInternal, "NUMBER"); $uds->add("DISABLED", $this->isDisabled, "NUMBER"); $uds->add("SYSTEM", $this->isSystem, "NUMBER"); $uds->add("INHERIT", $this->inherit, "NUMBER"); $uds->add("OWNER_GUID", $this->owner, "NUMBER"); $uds->execute(); }
/** * Updates the changes towards the object with the given id. * @param integer Id of the item, to be deleted. */ function process_object_update($id) { global $lang, $errors, $db, $page_action, $page_state, $selectci; $selectci = value("selectci"); $cond = $this->item_pkname . " = $id"; // configure DBO $page_action = "UPDATE"; $page_state = "processing"; $this->add(new Hidden("editing", $id)); $this->check(); $this->drawPage = "editing"; if ($errors == "") { $name = value($this->item_table . "_" . $this->item_name); global $c_magic_quotes_gpc; if ($c_magic_quotes_gpc == 1) $name = str_replace("\\", "", $name); $pname = parseSQL($name); $type = value($this->item_table . "_FKID", "NUMERIC"); $mincard = value($this->item_table . "_MINCARD", "NUMERIC"); $maxcard = value($this->item_table . "_MAXCARD", "NUMERIC"); $exclusive = value($this->item_table . "_EXCLUSIVE", "NUMERIC", "0"); // SWAP if ($mincard > $maxcard) { $temp = $mincard; $mincard = $maxcard; $maxcard = $temp; } $cltitypeId = getDBCell($this->item_table, "CLTITYPE_ID", $cond); $fkId = getDBCell($this->item_table, "FKID", $cond); $uds = new UpdateSet("cluster_template_items", "CLTI_ID = $id"); switch ($cltitypeId) { case 1: // static content $uds->add("NAME", $pname, "TEXT"); global $sel_object; $sel_object = value("cluster_template_items_FKID"); $uds->add("FKID", $sel_object, "NUMBER"); break; case 2: // dynamic content if ($fkId == 0) $uds->add("FKID", $type, "NUMBER"); $uds->add("MINCARD", $mincard, "NUMBER"); $uds->add("MAXCARD", $maxcard, "NUMBER"); $uds->add("NAME", $pname, "TEXT"); $uds->add("EXCLUSIVE", $exclusive, "NUMBER"); if ($fkId != 0) { $classname = getDBCell("modules", "CLASS", "MODULE_ID = ".$fkId); $ref = new $classname(0, $id); $ref->editConfig(); $ref->processConfig(); } break; case 3: // static cluster $uds->add("NAME", $pname, "TEXT"); global $sel_object; $sel_object = value("sel_object", "NUMERIC"); if ($sel_object != 0) { $uds->add("FKID", $sel_object, "NUMBER"); } break; case 4: //dynamic cluster if ($fkId == 0) { global $cluster_template_items_FKID; $cluster_template_items_FKID = value("cluster_template_items_FKID", "NUMERIC"); $uds->add("FKID", $cluster_template_items_FKID, "NUMBER"); } $uds->add("MINCARD", $mincard, "NUMBER"); $uds->add("MAXCARD", $maxcard, "NUMBER"); $uds->add("NAME", $pname, "TEXT"); $uds->add("EXCLUSIVE", $exclusive, "NUMBER"); break; case 5: if ($fkId == 0) $uds->add("FKID", $type, "NUMBER"); $uds->add("MINCARD", $mincard, "NUMBER"); $uds->add("MAXCARD", $maxcard, "NUMBER"); $uds->add("NAME", $pname, "TEXT"); $uds->add("EXCLUSIVE", $exclusive, "NUMBER"); break; case 6: // compound if ($fkId == 0) { global $cluster_template_items_FKID; $cluster_template_items_FKID = value("cluster_template_items_FKID", "NUMERIC"); $uds->add("FKID", $cluster_template_items_FKID, "NUMBER"); } $uds->add("MINCARD", $mincard, "NUMBER"); $uds->add("MAXCARD", $maxcard, "NUMBER"); $uds->add("NAME", $pname, "TEXT"); $uds->add("EXCLUSIVE", $exclusive, "NUMBER"); break; case 7: // compound group global $cluster_template_items_FKID; $cluster_template_items_FKID = value("cluster_template_items_FKID", "NUMERIC"); $uds->add("FKID", $cluster_template_items_FKID, "NUMBER"); $uds->add("MINCARD", 1, "NUMBER"); $uds->add("MAXCARD", 1, "NUMBER"); $uds->add("NAME", $pname, "TEXT"); break; case 8: //channel $uds->add("MINCARD", $mincard, "NUMBER"); $uds->add("MAXCARD", $maxcard, "NUMBER"); $uds->add("FKID", 1, "NUMBER"); $uds->add("NAME", $pname, "TEXT"); $uds->add("EXCLUSIVE", $exclusive, "NUMBER"); break; } global $search; $search = value("search"); if ($search == "0") { $uds->execute(); if ($errors == "") { $this->ready = true; $this->addToTopText($lang->get("savesuccess")); } else { $this->addToTopText($lang->get("procerror")); $this->setTopStyle("errorheader"); } } } else { // display errors. } $this->draw_edit($id); }