function handle($request) {
        $groupIdParamName = 'group';
        $groupId = Form::getField($request, $groupIdParamName);
        if (strlen($groupId) == 0) {
            die(IsatisText::getText("MissingParameter").": ".$groupIdParamName);
        }
        $g = SecurityGroup::getById($groupId);
        if ($g == NULL) {
            die(Text::getText("GroupNotFound").": '".$groupId."'");
        }
        $allPermissions = SecurityPermission::getAll();
        $allResources = SecurityResource::getAll();

        foreach ($allResources as $res) {
            foreach ($allPermissions as $perm) {
                $fieldName = "res".$res->getId()."_perm".$perm->getId();
                $value = Form::getField($request, $fieldName);
                if ($value == "on") {
                    if (!$g->hasPermission($res, $perm)) {
                        $g->addPermission($res, $perm);
                    }
                } else {
                    $g->removePermission($res, $perm);
                }
            }
        }
        return $g;
    }
Beispiel #2
0
<?php

require_once "config.php";
require_once RESACCMAN_BASE . "/classes/Text.php";
require_once RESACCMAN_BASE . "/classes/html/GroupPermissionsForm.php";
$title = Text::getText("GroupPermissions");
if (GroupPermissionsForm::isSubmitted($_REQUEST)) {
    $g = GroupPermissionsForm::handle($_REQUEST);
    $today = date("r");
    header("Location: groupPermissions.php?id=" . $g->getId() . "&saved=" . $today);
} else {
    if (sizeof($_REQUEST['id']) > 0) {
        $g = SecurityGroup::getById($id);
    }
}
if ($g == NULL) {
    $errMsg = Text::getText("GroupNotFound") . ": '" . $id . "'";
    die($errMsg);
}
$title .= ": " . $g->getName();
$form = new GroupPermissionsForm($g);
if (strlen($_REQUEST['saved']) > 0) {
    $form->setMessage(IsatisText::getText("Saved") . ": " . $_REQUEST['saved']);
}
include "header.php";
?>
<h2><?php 
echo $title;
?>
</h2><?
$form->printContent();
Beispiel #3
0
<? require_once("classes/SecurityGroup.php"); ?>
<? require_once("classes/Text.php"); ?>
<?
    $g = SecurityGroup::getById($_REQUEST['id']);
    if ($g == NULL) {
        $errMsg = Text::getText("GroupNotFound");
        $title = Text::getText("Delete");
        include("error.php");
    } else {
        $g->delete();
        header("Location: groups.php");
    }
?>
<? require_once("classes/SecurityGroup.php"); ?>
<? require_once("classes/SecurityResource.php"); ?>
<? require_once("classes/SecurityPermission.php"); ?>
<?
    $group = $_REQUEST['group'];
    $g = SecurityGroup::getById($group);
    if ($g == NULL) {
        $errMsg = Text::getText("GroupNotFound");
        $title = Text::getText("GroupPermissions");
        include("error.php");
        exit;
    }
    $allPermissions = SecurityPermission::getAll();
    $allResources = SecurityResource::getAll();
    
    foreach ($allResources as $res) {
        foreach ($allPermissions as $perm) {
            $fieldName = "res".$res->getId()."_perm".$perm->getId();
            $value = $_REQUEST[$fieldName];
            //print $fieldName."=".$value."<br>";
            if ($value == "on") {
                if (!$g->hasPermission($res, $perm)) {
                    $g->addPermission($res, $perm);
                }
            } else {
                $g->removePermission($res, $perm);
            }
        }
    }
    header("Location: groups.php");
?>