Esempio n. 1
0
/**
 * 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 deleteCatego()
{
    global $xoopsSecurity, $xoopsModule;
    $cats = rmc_server_var($_POST, 'cats', array());
    if (empty($cats)) {
        redirectMsg('categories.php', __('You must select one category at least!', 'mywords'), 1);
        die;
    }
    if (!$xoopsSecurity->check()) {
        redirectMsg('categories.php', __("Session token expired!", 'mw_categories'), 1);
        die;
    }
    $db = XoopsDatabaseFactory::getDatabaseConnection();
    $sql = "SELECT * FROM " . $db->prefix("mw_categories") . " WHERE id_cat IN (" . implode(",", $cats) . ")";
    $result = $db->query($sql);
    while ($row = $db->fetchArray($result)) {
        $cat = new MWCategory();
        $cat->assignVars($row);
        if (!$cat->delete()) {
            showMessage(__('Category "%s" could not be deleted', 'mywords'), 1);
        }
    }
    redirectMsg('categories.php', __('Database updated!', 'mw_categories'), 0);
}