Merge pull request #6299 from bgenere/FIX-c6bd1a7-on-Task-delete
FIX can not delete a task if time spent on it
This commit is contained in:
commit
9be75ed019
@ -534,6 +534,40 @@ class Task extends CommonObject
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Return nb of time spent
|
||||
*
|
||||
* @return int <0 if KO, 0 if no children, >0 if OK
|
||||
*/
|
||||
function hasTimeSpent()
|
||||
{
|
||||
$error=0;
|
||||
$ret=0;
|
||||
|
||||
$sql = "SELECT COUNT(*) as nb";
|
||||
$sql.= " FROM ".MAIN_DB_PREFIX."projet_task_time";
|
||||
$sql.= " WHERE fk_task=".$this->id;
|
||||
|
||||
dol_syslog(get_class($this)."::hasTimeSpent", LOG_DEBUG);
|
||||
$resql = $this->db->query($sql);
|
||||
if (! $resql) { $error++; $this->errors[]="Error ".$this->db->lasterror(); }
|
||||
else
|
||||
{
|
||||
$obj=$this->db->fetch_object($resql);
|
||||
if ($obj) $ret=$obj->nb;
|
||||
$this->db->free($resql);
|
||||
}
|
||||
|
||||
if (! $error)
|
||||
{
|
||||
return $ret;
|
||||
}
|
||||
else
|
||||
{
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
|
||||
@ -551,7 +551,7 @@ if ($id > 0 || ! empty($ref))
|
||||
}
|
||||
|
||||
// Delete
|
||||
if ($user->rights->projet->supprimer && ! $object->hasChildren())
|
||||
if ($user->rights->projet->supprimer && ! $object->hasChildren() && ! $object->hasTimeSpent())
|
||||
{
|
||||
print '<a class="butActionDelete" href="'.$_SERVER['PHP_SELF'].'?id='.$object->id.'&action=delete&withproject='.$withproject.'">'.$langs->trans('Delete').'</a>';
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user