if ($action == 'add') { if (GETPOST('cancel')) { $urltogo = $backtopage ? $backtopage : dol_buildpath('/mymodule/list.php', 1); header("Location: " . $urltogo); exit; } $error = 0; /* object_prop_getpost_prop */ $object->prop1 = GETPOST("field1"); $object->prop2 = GETPOST("field2"); if (empty($object->ref)) { $error++; setEventMessage($langs->trans("ErrorFieldRequired", $langs->transnoentitiesnoconv("Ref")), 'errors'); } if (!$error) { $result = $object->create($user); if ($result > 0) { // Creation OK $urltogo = $backtopage ? $backtopage : dol_buildpath('/mymodule/list.php', 1); header("Location: " . $urltogo); exit; } // Creation KO if (!empty($object->errors)) { setEventMessages(null, $object->errors, 'errors'); } else { setEventMessages($object->error, null, 'errors'); } $action = 'create'; } else { $action = 'create';
/** * Load an object from its id and create a new one in database * * @param int $fromid Id of object to clone * * @return int New id of clone */ public function createFromClone($fromid) { dol_syslog(__METHOD__, LOG_DEBUG); global $user; $error = 0; $object = new Skeleton_Class($this->db); $this->db->begin(); // Load source object $object->fetch($fromid); // Reset object $object->id = 0; // Clear fields // ... // Create clone $result = $object->create($user); // Other options if ($result < 0) { $error++; $this->errors = $object->errors; dol_syslog(__METHOD__ . ' ' . join(',', $this->errors), LOG_ERR); } // End if (!$error) { $this->db->commit(); return $object->id; } else { $this->db->rollback(); return -1; } }
/** * Load an object from its id and create a new one in database * * @param int $fromid Id of object to clone * @return int New id of clone */ function createFromClone($fromid) { global $user, $langs; $error = 0; $object = new Skeleton_Class($this->db); $this->db->begin(); // Load source object $object->fetch($fromid); $object->id = 0; $object->statut = 0; // Clear fields // ... // Create clone $result = $object->create($user); // Other options if ($result < 0) { $this->error = $object->error; $error++; } if (!$error) { } // End if (!$error) { $this->db->commit(); return $object->id; } else { $this->db->rollback(); return -1; } }