Exemple #1
0
 function Delete($ID)
 {
     global $DB, $CACHE_MANAGER, $stackCacheManager, $APPLICATION;
     $ID = (int) $ID;
     if ($ID <= 0) {
         return false;
     }
     if ($res = CCatalogGroup::GetByID($ID)) {
         if ($res["BASE"] != "Y") {
             foreach (GetModuleEvents("catalog", "OnBeforeGroupDelete", true) as $arEvent) {
                 if (ExecuteModuleEventEx($arEvent, array($ID)) === false) {
                     return false;
                 }
             }
             foreach (GetModuleEvents("catalog", "OnGroupDelete", true) as $arEvent) {
                 ExecuteModuleEventEx($arEvent, array($ID));
             }
             if (!defined("CATALOG_SKIP_CACHE") || !CATALOG_SKIP_CACHE) {
                 $CACHE_MANAGER->CleanDir("catalog_group");
                 $CACHE_MANAGER->Clean("catalog_group_perms");
             }
             $stackCacheManager->Clear("catalog_GetQueryBuildArrays");
             $stackCacheManager->Clear("catalog_discount");
             $DB->Query("DELETE FROM b_catalog_price WHERE CATALOG_GROUP_ID = " . $ID);
             $DB->Query("DELETE FROM b_catalog_group2group WHERE CATALOG_GROUP_ID = " . $ID);
             $DB->Query("DELETE FROM b_catalog_group_lang WHERE CATALOG_GROUP_ID = " . $ID);
             return $DB->Query("DELETE FROM b_catalog_group WHERE ID = " . $ID, true);
         } else {
             $APPLICATION->ThrowException(GetMessage('BT_MOD_CAT_GROUP_ERR_CANNOT_DELETE_BASE_TYPE'), 'BASE');
         }
     }
     return false;
 }
Exemple #2
0
function GetCatalogGroup($CATALOG_GROUP_ID)
{
    $CATALOG_GROUP_ID = intval($CATALOG_GROUP_ID);
    return CCatalogGroup::GetByID($CATALOG_GROUP_ID);
}