Merge pull request #1583 from FHenry/3.5
Fix error return project deletion
This commit is contained in:
commit
4bf86508a5
@ -1286,7 +1286,7 @@ function getListOfModels($db,$type,$maxfilenamelength=0)
|
|||||||
$sql.= " WHERE type = '".$type."'";
|
$sql.= " WHERE type = '".$type."'";
|
||||||
$sql.= " AND entity IN (0,".(! empty($conf->multicompany->enabled) && ! empty($conf->multicompany->transverse_mode)?"1,":"").$conf->entity.")";
|
$sql.= " AND entity IN (0,".(! empty($conf->multicompany->enabled) && ! empty($conf->multicompany->transverse_mode)?"1,":"").$conf->entity.")";
|
||||||
|
|
||||||
dol_syslog(get_class($this).'::getListOfModels sql='.$sql, LOG_DEBUG);
|
dol_syslog('/core/lib/function2.lib.php::getListOfModels sql='.$sql, LOG_DEBUG);
|
||||||
$resql = $db->query($sql);
|
$resql = $db->query($sql);
|
||||||
if ($resql)
|
if ($resql)
|
||||||
{
|
{
|
||||||
|
|||||||
@ -481,26 +481,47 @@ class Project extends CommonObject
|
|||||||
|
|
||||||
dol_syslog(get_class($this) . "::delete sql=" . $sql, LOG_DEBUG);
|
dol_syslog(get_class($this) . "::delete sql=" . $sql, LOG_DEBUG);
|
||||||
$resql = $this->db->query($sql);
|
$resql = $this->db->query($sql);
|
||||||
|
if (!$resql)
|
||||||
|
{
|
||||||
|
$this->errors[] = $this->db->lasterror();
|
||||||
|
$error++;
|
||||||
|
}
|
||||||
|
|
||||||
$sql = "DELETE FROM " . MAIN_DB_PREFIX . "projet_task";
|
$sql = "DELETE FROM " . MAIN_DB_PREFIX . "projet_task";
|
||||||
$sql.= " WHERE fk_projet=" . $this->id;
|
$sql.= " WHERE fk_projet=" . $this->id;
|
||||||
|
|
||||||
dol_syslog(get_class($this) . "::delete sql=" . $sql, LOG_DEBUG);
|
dol_syslog(get_class($this) . "::delete sql=" . $sql, LOG_DEBUG);
|
||||||
$resql = $this->db->query($sql);
|
$resql = $this->db->query($sql);
|
||||||
|
if (!$resql)
|
||||||
|
{
|
||||||
|
$this->errors[] = $this->db->lasterror();
|
||||||
|
$error++;
|
||||||
|
}
|
||||||
|
|
||||||
$sql = "DELETE FROM " . MAIN_DB_PREFIX . "projet";
|
$sql = "DELETE FROM " . MAIN_DB_PREFIX . "projet";
|
||||||
$sql.= " WHERE rowid=" . $this->id;
|
$sql.= " WHERE rowid=" . $this->id;
|
||||||
|
|
||||||
dol_syslog(get_class($this) . "::delete sql=" . $sql, LOG_DEBUG);
|
dol_syslog(get_class($this) . "::delete sql=" . $sql, LOG_DEBUG);
|
||||||
$resql = $this->db->query($sql);
|
$resql = $this->db->query($sql);
|
||||||
|
if (!$resql)
|
||||||
|
{
|
||||||
|
$this->errors[] = $this->db->lasterror();
|
||||||
|
$error++;
|
||||||
|
}
|
||||||
|
|
||||||
$sql = "DELETE FROM " . MAIN_DB_PREFIX . "projet_extrafields";
|
$sql = "DELETE FROM " . MAIN_DB_PREFIX . "projet_extrafields";
|
||||||
$sql.= " WHERE fk_object=" . $this->id;
|
$sql.= " WHERE fk_object=" . $this->id;
|
||||||
|
|
||||||
|
|
||||||
dol_syslog(get_class($this) . "::delete sql=" . $sql, LOG_DEBUG);
|
dol_syslog(get_class($this) . "::delete sql=" . $sql, LOG_DEBUG);
|
||||||
$resql = $this->db->query($sql);
|
$resql = $this->db->query($sql);
|
||||||
|
if (!$resql)
|
||||||
|
{
|
||||||
|
$this->errors[] = $this->db->lasterror();
|
||||||
|
$error++;
|
||||||
|
}
|
||||||
|
|
||||||
if ($resql)
|
if (empty($error))
|
||||||
{
|
{
|
||||||
// We remove directory
|
// We remove directory
|
||||||
$projectref = dol_sanitizeFileName($this->ref);
|
$projectref = dol_sanitizeFileName($this->ref);
|
||||||
@ -512,34 +533,40 @@ class Project extends CommonObject
|
|||||||
$res = @dol_delete_dir_recursive($dir);
|
$res = @dol_delete_dir_recursive($dir);
|
||||||
if (!$res)
|
if (!$res)
|
||||||
{
|
{
|
||||||
$this->error = 'ErrorFailToDeleteDir';
|
$this->errors[] = 'ErrorFailToDeleteDir';
|
||||||
$this->db->rollback();
|
$error++;
|
||||||
return 0;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!$notrigger)
|
if (!$notrigger)
|
||||||
{
|
{
|
||||||
// Call triggers
|
// Call triggers
|
||||||
include_once DOL_DOCUMENT_ROOT . '/core/class/interfaces.class.php';
|
include_once DOL_DOCUMENT_ROOT . '/core/class/interfaces.class.php';
|
||||||
$interface = new Interfaces($this->db);
|
$interface = new Interfaces($this->db);
|
||||||
$result = $interface->run_triggers('PROJECT_DELETE', $this, $user, $langs, $conf);
|
$result = $interface->run_triggers('PROJECT_DELETE', $this, $user, $langs, $conf);
|
||||||
if ($result < 0)
|
if ($result < 0)
|
||||||
{
|
{
|
||||||
$error++;
|
$error++;
|
||||||
$this->errors = $interface->errors;
|
foreach ($interface->errors as $errmsg ) {
|
||||||
}
|
dol_syslog(get_class($this) . "::delete " . $errmsg, LOG_ERR);
|
||||||
// End call triggers
|
$this->errors[] =$errmsg;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// End call triggers
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
dol_syslog(get_class($this) . "::delete sql=" . $sql, LOG_DEBUG);
|
if (empty($error)) {
|
||||||
$this->db->commit();
|
$this->db->commit();
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$this->error = $this->db->lasterror();
|
foreach ( $this->errors as $errmsg ) {
|
||||||
|
dol_syslog(get_class($this) . "::delete " . $errmsg, LOG_ERR);
|
||||||
|
$this->error .= ($this->error ? ', ' . $errmsg : $errmsg);
|
||||||
|
}
|
||||||
dol_syslog(get_class($this) . "::delete " . $this->error, LOG_ERR);
|
dol_syslog(get_class($this) . "::delete " . $this->error, LOG_ERR);
|
||||||
$this->db->rollback();
|
$this->db->rollback();
|
||||||
return -1;
|
return -1;
|
||||||
|
|||||||
@ -64,7 +64,7 @@ $result = restrictedArea($user, 'projet', $object->id);
|
|||||||
$extralabels=$extrafields->fetch_name_optionals_label($object->table_element);
|
$extralabels=$extrafields->fetch_name_optionals_label($object->table_element);
|
||||||
|
|
||||||
$date_start=dol_mktime(0,0,0,GETPOST('projectmonth','int'),GETPOST('projectday','int'),GETPOST('projectyear','int'));
|
$date_start=dol_mktime(0,0,0,GETPOST('projectmonth','int'),GETPOST('projectday','int'),GETPOST('projectyear','int'));
|
||||||
$date_end=dol_mktime(0,0,0,GETPOST('projectendmonth','int'),GETPOST('projectendday','int'),GETPOST('projectendyear','int'));;
|
$date_end=dol_mktime(0,0,0,GETPOST('projectendmonth','int'),GETPOST('projectendday','int'),GETPOST('projectendyear','int'));
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user