예제 #1
0
function delete_group_data()
{
    global $xoopsSecurity, $xoopsDB;
    $ajax = new Rmcommon_Ajax();
    $ajax->prepare_ajax_response();
    if (!$xoopsSecurity->validateToken(false, true, 'CUTOKEN')) {
        $ajax->ajax_response(__('Session token expired!', 'rmcommon'), 1, 0, array('action' => 'reload'));
    }
    $ids = RMHttpRequest::post('ids', 'array', array());
    if (empty($ids)) {
        $ajax->ajax_response(__('You must select at least one group. Please, try again.', 'rmcommon'), 1, 1);
    }
    $to_delete = array_search(XOOPS_GROUP_ADMIN, $ids);
    if (FALSE !== $to_delete) {
        unset($ids[$to_delete]);
    }
    $to_delete = array_search(XOOPS_GROUP_USERS, $ids);
    if (FALSE !== $to_delete) {
        unset($ids[$to_delete]);
    }
    $to_delete = array_search(XOOPS_GROUP_ANONYMOUS, $ids);
    if (FALSE !== $to_delete) {
        unset($ids[$to_delete]);
    }
    if (empty($ids)) {
        $ajax->ajax_response(__('No valid groups has been selected. Note that system groups could not be deleted.', 'rmcommon'), 1, 1);
    }
    $errors = '';
    // Eliminar permisos del grupo
    $sql = "DELETE FROM " . $xoopsDB->prefix("group_permission") . " WHERE gperm_groupid IN (" . implode(",", $ids) . ")";
    if (!$xoopsDB->queryF($sql)) {
        $errors .= $xoopsDB->error();
    }
    // Eliminar permisos específicos
    $sql = "DELETE FROM " . $xoopsDB->prefix("mod_rmcommon_permissions") . " WHERE `group` IN (" . implode(",", $ids) . ")";
    if (!$xoopsDB->queryF($sql)) {
        $errors .= '<br>' . $xoopsDB->error();
    }
    // Eliminar relaciones con usuarios
    $sql = "DELETE FROM " . $xoopsDB->prefix("groups_users_link") . " WHERE `groupid` IN (" . implode(",", $ids) . ")";
    if (!$xoopsDB->queryF($sql)) {
        $errors .= '<br>' . $xoopsDB->error();
    }
    // Eliminar datos del grupo
    $sql = "DELETE FROM " . $xoopsDB->prefix("groups") . " WHERE `groupid` IN (" . implode(",", $ids) . ")";
    if (!$xoopsDB->queryF($sql)) {
        $errors .= '<br>' . $xoopsDB->error();
    }
    if ('' == $errors) {
        showMessage(__('Selected groups has been deleted.', 'rmcommon'), RMMSG_SUCCESS, 'fa fa-remove-circle');
        $ajax->ajax_response('', 0, 1, array('reload' => true));
    } else {
        $ajax->ajax_response(__('Errors ocurred while trying to delete selected groups.', 'rmcommon') . "\n" . $errors, 1, 1);
    }
}
예제 #2
0
<?php

/**
 * $Id$
 * --------------------------------------------------------------
 * Common Utilities
 * Author: Eduardo Cortes
 * Email: i.bitcero@gmail.com
 * License: GPL 2.0
 * URI: http://www.redmexico.com.mx
 */
require dirname(dirname(dirname(dirname(__FILE__)))) . '/include/cp_header.php';
$ajax = new Rmcommon_Ajax();
$ajax->prepare_ajax_response();
$dirname = RMHttpRequest::get('module', 'string', '');
if ($dirname == '') {
    $ajax->ajax_response(__('Please specify a valid module dirname!', 'rmcommon'), 1, 0);
}
$module = RMModules::load_module($dirname);
if (!$module) {
    $ajax->ajax_response(__('Specified module is not installed!', 'rmcommon'), 1, 0);
}
$url = $module->getInfo('updateurl');
$url .= false === strpos($url, '?') ? '?' : '&';
$url .= 'action=data&id=' . $module->dirname();
echo file_get_contents($url);