/** * Elimina una categoría de la base de datos. * Las subcategorías pertenecientes a esta categoría no son eliminadas, * sino que son asignadas a la categoría superior. */ function shop_delete_category() { global $xoopsSecurity, $xoopsModule; $cats = rmc_server_var($_POST, 'cats', array()); if (empty($cats)) { redirectMsg('categories.php', __('You must select one category at least!', 'shop'), 1); die; } if (!$xoopsSecurity->check()) { redirectMsg('categories.php', __("Session token expired!", 'mw_categories'), 1); die; } $db = XoopsDatabaseFactory::getDatabaseConnection(); $sql = "SELECT * FROM " . $db->prefix("shop_categories") . " WHERE id_cat IN (" . implode(",", $cats) . ")"; $result = $db->query($sql); while ($row = $db->fetchArray($result)) { $cat = new ShopCategory(); $cat->assignVars($row); if (!$cat->delete()) { showMessage(__('Category "%s" could not be deleted', 'shop'), 1); } } redirectMsg('categories.php', __('Database updated!', 'shop'), 0); }