diff --git a/htdocs/projet/class/project.class.php b/htdocs/projet/class/project.class.php index e4b9ac53454ab23b4e04aa112bb8be7820ce3c0b..4c43c6c9e68a16f279d7f188436bfc3c992cbd3f 100644 --- a/htdocs/projet/class/project.class.php +++ b/htdocs/projet/class/project.class.php @@ -465,26 +465,46 @@ class Project extends CommonObject dol_syslog(get_class($this) . "::delete sql=" . $sql, LOG_DEBUG); $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 sql=" . $sql, LOG_DEBUG); $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 sql=" . $sql, LOG_DEBUG); $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 sql=" . $sql, LOG_DEBUG); $resql = $this->db->query($sql); + if (!$resql) + { + $this->errors[] = $this->db->lasterror(); + $error++; + } - if ($resql) + if (empty($error)) { // We remove directory $projectref = dol_sanitizeFileName($this->ref); @@ -496,9 +516,8 @@ class Project extends CommonObject $res = @dol_delete_dir_recursive($dir); if (!$res) { - $this->error = 'ErrorFailToDeleteDir'; - $this->db->rollback(); - return 0; + $this->errors[] = 'ErrorFailToDeleteDir'; + $error++; } } } @@ -512,18 +531,25 @@ class Project extends CommonObject if ($result < 0) { $error++; - $this->errors = $interface->errors; + foreach ($interface->errors as $errmsg ) { + dol_syslog(get_class($this) . "::delete " . $errmsg, LOG_ERR); + $this->errors[] =$errmsg; + } } // End call triggers } + } - dol_syslog(get_class($this) . "::delete sql=" . $sql, LOG_DEBUG); + if (empty($error)) { $this->db->commit(); return 1; } 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); $this->db->rollback(); return -1; diff --git a/htdocs/projet/fiche.php b/htdocs/projet/fiche.php index f1f360a3f81003845380221782bf7f1479fca3b6..d1295ae99b46d898566bd702be1e8f79cb326baf 100644 --- a/htdocs/projet/fiche.php +++ b/htdocs/projet/fiche.php @@ -64,7 +64,7 @@ $result = restrictedArea($user, 'projet', $object->id); $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_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')); /*