<?php global $ari; $ari->popup = 1; //VIENE EL NAME DE LA PERPECTIVA??? if (isset($_POST['name'])) { //CREACION DEL OBJETO PERSPECTIVE CON EL NAME QUE VIENE DEL FORMULARIO $perspective = new oob_perspective($_POST['name']); //*****************************ACTUALIZAR ROLES (MIEMBROS Y NO MIEMBROS)******************************* if (isset($_POST['roles'])) { //SE CREA UN ARRAY CON LOS ROLES MIEMBROS DEVUELTOS POR EL CONTROL 'SELECT' $miebros_roles = split(",", $_POST['roles']); $real_members_roles = array(); //SE CREA UN ARRAY CON LOS ROLES MIEMBROS QUE ESTAN EN LA BASE DE DATOS if ($roles = OOB_perspective::listRolesFor($perspective)) { foreach ($roles as $r) { $real_members_roles[] = $r->get('role'); } } //SE BORRAN LOS ROLES QUE NO SON MAS MIEMBROS for ($i = 0; $i < count($real_members_roles); $i++) { if (!in_array($real_members_roles[$i], $miebros_roles)) { $tmpRole = new seguridad_role($real_members_roles[$i]); $perspective->removeRole($tmpRole); } } //SE AGREGAN LOS ROLES QUE PASARON A SER MIEMBROS for ($i = 0; $i < count($miebros_roles); $i++) { if (!in_array($miebros_roles[$i], $real_members_roles)) { $tmpRole = new seguridad_role($miebros_roles[$i]); $perspective->addRole($tmpRole);
//Adds the selected roles if (isset($_POST['AddRole']) && isset($_POST['roles_select'])) { foreach ($_POST['roles_select'] as $id_role) { $perspective->addRole($id_role); } } // end if isset //Removes the selected roles if (isset($_POST['DelRole']) && isset($_POST['roles_members_select'])) { foreach ($_POST['roles_members_select'] as $id_role) { $perspective->removeRole($id_role); } } // end if isset //list roles members if ($roles_miembros = OOB_perspective::listRolesFor($perspective->name())) { $i = 0; $return = array(); foreach ($roles_miembros as $m) { $m = new seguridad_role($m); $return[$i]['id'] = $m->get('role'); $return[$i]['name'] = $m->get('name'); ++$i; } $ari->t->assign("roles_miembros", $return); } //end if //search roles no members if ($roles = oob_perspective::searchNoMembers("", DELETED, OPERATOR_DISTINCT, $perspective->name(), ROLE)) { $i = 0; $return = array();