Fixed: [ bug #1732 ] Tasks ressources and time consumption are not
deleted on project / task deletion
This commit is contained in:
parent
fae1cd1d21
commit
2245361a2e
@ -479,48 +479,71 @@ class Project extends CommonObject
|
||||
}
|
||||
}
|
||||
|
||||
$sql = "DELETE FROM " . MAIN_DB_PREFIX . "projet_task_extrafields";
|
||||
$sql.= " WHERE fk_object IN (SELECT rowid FROM " . MAIN_DB_PREFIX . "projet_task WHERE fk_projet=" . $this->id . ")";
|
||||
|
||||
dol_syslog(get_class($this) . "::delete", LOG_DEBUG);
|
||||
$resql = $this->db->query($sql);
|
||||
if (!$resql)
|
||||
// Delete tasks
|
||||
if (! $error)
|
||||
{
|
||||
$this->errors[] = $this->db->lasterror();
|
||||
$error++;
|
||||
$sql = "DELETE FROM " . MAIN_DB_PREFIX . "projet_task_time";
|
||||
$sql.= " WHERE fk_task IN (SELECT rowid FROM " . MAIN_DB_PREFIX . "projet_task WHERE fk_projet=" . $this->id . ")";
|
||||
|
||||
$resql = $this->db->query($sql);
|
||||
if (!$resql)
|
||||
{
|
||||
$this->errors[] = $this->db->lasterror();
|
||||
$error++;
|
||||
}
|
||||
}
|
||||
|
||||
$sql = "DELETE FROM " . MAIN_DB_PREFIX . "projet_task";
|
||||
$sql.= " WHERE fk_projet=" . $this->id;
|
||||
|
||||
dol_syslog(get_class($this) . "::delete", LOG_DEBUG);
|
||||
$resql = $this->db->query($sql);
|
||||
if (!$resql)
|
||||
if (! $error)
|
||||
{
|
||||
$this->errors[] = $this->db->lasterror();
|
||||
$error++;
|
||||
$sql = "DELETE FROM " . MAIN_DB_PREFIX . "projet_task_extrafields";
|
||||
$sql.= " WHERE fk_object IN (SELECT rowid FROM " . MAIN_DB_PREFIX . "projet_task WHERE fk_projet=" . $this->id . ")";
|
||||
|
||||
$resql = $this->db->query($sql);
|
||||
if (!$resql)
|
||||
{
|
||||
$this->errors[] = $this->db->lasterror();
|
||||
$error++;
|
||||
}
|
||||
}
|
||||
|
||||
$sql = "DELETE FROM " . MAIN_DB_PREFIX . "projet";
|
||||
$sql.= " WHERE rowid=" . $this->id;
|
||||
|
||||
dol_syslog(get_class($this) . "::delete", LOG_DEBUG);
|
||||
$resql = $this->db->query($sql);
|
||||
if (!$resql)
|
||||
if (! $error)
|
||||
{
|
||||
$this->errors[] = $this->db->lasterror();
|
||||
$error++;
|
||||
$sql = "DELETE FROM " . MAIN_DB_PREFIX . "projet_task";
|
||||
$sql.= " WHERE fk_projet=" . $this->id;
|
||||
|
||||
$resql = $this->db->query($sql);
|
||||
if (!$resql)
|
||||
{
|
||||
$this->errors[] = $this->db->lasterror();
|
||||
$error++;
|
||||
}
|
||||
}
|
||||
|
||||
$sql = "DELETE FROM " . MAIN_DB_PREFIX . "projet_extrafields";
|
||||
$sql.= " WHERE fk_object=" . $this->id;
|
||||
|
||||
dol_syslog(get_class($this) . "::delete", LOG_DEBUG);
|
||||
$resql = $this->db->query($sql);
|
||||
if (! $resql)
|
||||
// Delete project
|
||||
if (! $error)
|
||||
{
|
||||
$this->errors[] = $this->db->lasterror();
|
||||
$error++;
|
||||
$sql = "DELETE FROM " . MAIN_DB_PREFIX . "projet";
|
||||
$sql.= " WHERE rowid=" . $this->id;
|
||||
|
||||
$resql = $this->db->query($sql);
|
||||
if (!$resql)
|
||||
{
|
||||
$this->errors[] = $this->db->lasterror();
|
||||
$error++;
|
||||
}
|
||||
}
|
||||
|
||||
if (! $error)
|
||||
{
|
||||
$sql = "DELETE FROM " . MAIN_DB_PREFIX . "projet_extrafields";
|
||||
$sql.= " WHERE fk_object=" . $this->id;
|
||||
|
||||
$resql = $this->db->query($sql);
|
||||
if (! $resql)
|
||||
{
|
||||
$this->errors[] = $this->db->lasterror();
|
||||
$error++;
|
||||
}
|
||||
}
|
||||
|
||||
if (empty($error))
|
||||
|
||||
@ -342,7 +342,7 @@ class Task extends CommonObject
|
||||
|
||||
|
||||
/**
|
||||
* Delete object in database
|
||||
* Delete task from database
|
||||
*
|
||||
* @param User $user User that delete
|
||||
* @param int $notrigger 0=launch triggers after, 1=disable triggers
|
||||
@ -379,15 +379,32 @@ class Task extends CommonObject
|
||||
}
|
||||
}
|
||||
|
||||
// Delete rang of line
|
||||
//$this->delRangOfLine($this->id, $this->element);
|
||||
if (! $error)
|
||||
{
|
||||
$sql = "DELETE FROM ".MAIN_DB_PREFIX."projet_task_time";
|
||||
$sql.= " WHERE fk_task=".$this->id;
|
||||
|
||||
$sql = "DELETE FROM ".MAIN_DB_PREFIX."projet_task";
|
||||
$sql.= " WHERE rowid=".$this->id;
|
||||
$resql = $this->db->query($sql);
|
||||
if (! $resql) { $error++; $this->errors[]="Error ".$this->db->lasterror(); }
|
||||
}
|
||||
|
||||
dol_syslog(get_class($this)."::delete", LOG_DEBUG);
|
||||
$resql = $this->db->query($sql);
|
||||
if (! $resql) { $error++; $this->errors[]="Error ".$this->db->lasterror(); }
|
||||
if (! $error)
|
||||
{
|
||||
$sql = "DELETE FROM ".MAIN_DB_PREFIX."projet_task_extrafields";
|
||||
$sql.= " WHERE fk_object=".$this->id;
|
||||
|
||||
$resql = $this->db->query($sql);
|
||||
if (! $resql) { $error++; $this->errors[]="Error ".$this->db->lasterror(); }
|
||||
}
|
||||
|
||||
if (! $error)
|
||||
{
|
||||
$sql = "DELETE FROM ".MAIN_DB_PREFIX."projet_task";
|
||||
$sql.= " WHERE rowid=".$this->id;
|
||||
|
||||
$resql = $this->db->query($sql);
|
||||
if (! $resql) { $error++; $this->errors[]="Error ".$this->db->lasterror(); }
|
||||
}
|
||||
|
||||
if (! $error)
|
||||
{
|
||||
@ -412,7 +429,7 @@ class Task extends CommonObject
|
||||
return -1*$error;
|
||||
}
|
||||
else
|
||||
{
|
||||
{
|
||||
//Delete associated link file
|
||||
if ($conf->projet->dir_output)
|
||||
{
|
||||
|
||||
Loading…
Reference in New Issue
Block a user