Fix set of categories

This commit is contained in:
Laurent Destailleur 2020-05-26 01:07:09 +02:00
parent 5f90596bb7
commit 3aaefd15b0
3 changed files with 17 additions and 2 deletions

View File

@ -8166,7 +8166,7 @@ abstract class CommonObject
* @param string $type_categ Category type ('customer', 'supplier', 'website_page', ...)
* @return int <0 if KO, >0 if OK
*/
public function setCategories($categories, $type_categ)
public function setCategoriesCommon($categories, $type_categ)
{
require_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php';

View File

@ -720,6 +720,21 @@ class WebsitePage extends CommonObject
return dolGetStatus($this->labelStatus[$status], $this->labelStatusShort[$status], '', $statusType, $mode);
}
/**
* Sets object to given categories.
*
* Deletes object from existing categories not supplied.
* Adds it to non existing supplied categories.
* Existing categories are left untouch.
*
* @param int[]|int $categories Category ID or array of Categories IDs
* @return int <0 if KO, >0 if OK
*/
public function setCategories($categories)
{
require_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php';
return $this->setCategoriesCommon($categories, Categorie::TYPE_WEBSITE_PAGE);
}
/**
* Initialise object with example values

View File

@ -1547,7 +1547,7 @@ if ($action == 'updatemeta')
if (!$error) {
// Supplier categories association
$categoriesarray = GETPOST('categories', 'array');
$result = $objectpage->setCategories($categoriesarray, Categorie::TYPE_WEBSITE_PAGE);
$result = $objectpage->setCategories($categoriesarray);
if ($result < 0)
{
$error++;