Merge branch '12.0' of git@github.com:Dolibarr/dolibarr.git into develop

This commit is contained in:
Laurent Destailleur 2020-06-06 18:57:41 +02:00
commit 88aaec63f7
4 changed files with 62 additions and 8 deletions

View File

@ -3828,7 +3828,7 @@ function dol_print_error($db = '', $error = '', $errors = null)
$out .= $langs->trans("InformationToHelpDiagnose").":<br>\n";
$out .= "<b>".$langs->trans("Date").":</b> ".dol_print_date(time(), 'dayhourlog')."<br>\n";
$out .= "<b>".$langs->trans("Dolibarr").":</b> ".DOL_VERSION."<br>\n";
$out .= "<b>".$langs->trans("Dolibarr").":</b> ".DOL_VERSION." - https://www.dolibarr.org<br>\n";
if (isset($conf->global->MAIN_FEATURES_LEVEL)) $out .= "<b>".$langs->trans("LevelOfFeature").":</b> ".$conf->global->MAIN_FEATURES_LEVEL."<br>\n";
if (function_exists("phpversion"))
{

View File

@ -181,7 +181,7 @@ class MyObject extends CommonObject
//public $table_element_line = 'mymodule_myobjectline';
/**
* @var int Field with ID of parent key if this field has a parent
* @var int Field with ID of parent key if this object has a parent
*/
//public $fk_element = 'fk_myobject';
@ -193,12 +193,12 @@ class MyObject extends CommonObject
/**
* @var array List of child tables. To test if we can delete object.
*/
//protected $childtables=array();
//protected $childtables = array();
/**
* @var array List of child tables. To know object to delete on cascade.
*/
//protected $childtablesoncascade=array('mymodule_myobjectdet');
//protected $childtablesoncascade = array('mymodule_myobjectdet');
/**
* @var MyObjectLine[] Array of subtable lines

View File

@ -146,11 +146,11 @@ div.mainmenu.generic4::before {
/* Define color of some picto */
.fa-phone, .fa-mobile-alt, .fa-fax {
opacity: 0.5;
opacity: 0.7;
color: #440;
}
.fa-at, .fa-external-link-alt {
opacity: 0.5;
opacity: 0.7;
color: #304;
}
.fa-trash {

View File

@ -49,6 +49,7 @@ class WebsitePage extends CommonObject
*/
public $picto = 'file-code';
/**
* @var int ID
*/
@ -164,6 +165,35 @@ class WebsitePage extends CommonObject
// END MODULEBUILDER PROPERTIES
// If this object has a subtable with lines
/**
* @var int Name of subtable line
*/
//public $table_element_line = 'mymodule_myobjectline';
/**
* @var int Field with ID of parent key if this object has a parent
*/
public $fk_element = 'fk_website';
/**
* @var int Name of subtable class that manage subtable lines
*/
//public $class_element_line = 'MyObjectline';
/**
* @var array List of child tables. To test if we can delete object.
*/
//protected $childtables=array();
/**
* @var array List of child tables. To know object to delete on cascade.
*/
protected $childtablesoncascade = array('categorie_website_page');
/**
* Constructor
*
@ -522,9 +552,33 @@ class WebsitePage extends CommonObject
*/
public function delete(User $user, $notrigger = false)
{
$result = $this->deleteCommon($user, $trigger);
$error = 0;
if ($result > 0)
// Delete all child tables
if (!$error) {
foreach ($this->childtablesoncascade as $table)
{
$sql = "DELETE FROM ".MAIN_DB_PREFIX.$table;
$sql .= " WHERE fk_website_page = ".(int) $this->id;
$result = $this->db->query($sql);
if (!$result) {
$error++;
$this->errors[] = $this->db->lasterror();
break;
}
}
}
if (!$error) {
$result = $this->deleteCommon($user, $trigger);
if ($result > 0)
{
$error++;
}
}
if (!$error)
{
$websiteobj = new Website($this->db);
$result = $websiteobj->fetch($this->fk_website);