getGroupWithoutNested($groupID); $parentGroup = $usrStorageDB->getGroupWithoutNested($rmParentGroupID); if ($group && $parentGroup) { $removed = $usrStorageDB->removeParentGroup($groupID, $rmParentGroupID); if ($removed) { $taskMsgs[] = "Usunięto grupę nadrzędną [{$rmParentGroupID}] do grupy [{$groupID}]"; } else { $taskErrors[] = "Nie udało się usunąć grupy nadrzędnej [{$rmParentGroupID}] do grupy [{$groupID}]"; } } } break; } case 'FRM_RM_NESTED_GROUP': { $groupID = V::get('groupID', 0, $_GET, 'int'); $rmNestedGroupID = V::get('rmNestedGroupID', 0, $_POST, 'int'); if (!$groupID || !$rmNestedGroupID) { $taskErrors[] = 'Wrong param group id or remove group id!'; } else { $usrStorageDB = UserStorageFactory::getStorage('DB'); $group = $usrStorageDB->getGroupWithoutNested($groupID); $nestedGroup = $usrStorageDB->getGroupWithoutNested($rmNestedGroupID); if ($group && $nestedGroup) { $removed = $usrStorageDB->removeNestedGroup($groupID, $rmNestedGroupID); if ($removed) { $taskMsgs[] = "Usunięto grupę zagnieżdżoną [{$rmNestedGroupID}] z grupy [{$groupID}]"; } else { $taskErrors[] = "Nie udało się usunąć grupy zagnieżdżonej [{$rmNestedGroupID}] z grupy [{$groupID}]"; } } } break; } case 'FRM_ADD_GROUP': { if(V::get('DBG_NG', '', $_GET)){echo'
post (' . __CLASS__ . '::' . __FUNCTION__ . ':' . __LINE__ . '): ';print_r($_POST);echo'
';} // [addParentGroupID] => 372 // [addNestedGroupID] => 372 $groupID = V::get('groupID', 0, $_GET, 'int'); if ($groupID > 0) { $usrStorageDB = UserStorageFactory::getStorage('DB'); $group = $usrStorageDB->getGroupWithoutNested($groupID); $addParentGroupID = V::get('addParentGroupID', 0, $_POST, 'int'); $addNestedGroupID = V::get('addNestedGroupID', 0, $_POST, 'int'); if ($addParentGroupID > 0) { $group = $usrStorageDB->getGroupWithoutNested($groupID); $parentGroup = $usrStorageDB->getGroupWithoutNested($addParentGroupID); if ($group && $parentGroup) { $added = $usrStorageDB->addParentGroup($groupID, $addParentGroupID); if ($added) { $taskMsgs[] = "Dodano grupę nadrzędną [{$addParentGroupID}] do grupy [{$groupID}]"; } else { $taskErrors[] = "Nie udało się dodać grupy nadrzędnej [{$addParentGroupID}] do grupy [{$groupID}]"; } } } else if ($addNestedGroupID > 0) { $group = $usrStorageDB->getGroupWithoutNested($groupID); $nestedGroup = $usrStorageDB->getGroupWithoutNested($addNestedGroupID); if ($group && $nestedGroup) { $added = $usrStorageDB->addNestedGroup($groupID, $addNestedGroupID); if ($added) { $taskMsgs[] = "Dodano grupę zagnieżdżoną [{$addNestedGroupID}] do grupy [{$groupID}]"; } else { $taskErrors[] = "Nie udało się dodać grupy zagnieżdżonej [{$addNestedGroupID}] do grupy [{$groupID}]"; } } } } break; } case 'TYPESPECIAL': { $DBG = ('1' == V::get('DBG', '', $_REQUEST)); header("Content-type: application/json"); $fld = V::get('fld', '', $_GET); switch ($fld) { case 'addParentGroupID': case 'addNestedGroupID': { Lib::loadClass('TypespecialVariable'); $typeSpecialNestedGroups = TypespecialVariable::getInstance(-1, '__NESTED_GROUPS'); $query = V::get('q', '', $_REQUEST); $rawRows = null; $rows = $typeSpecialNestedGroups->getValuesWithExports($query); if($DBG){echo'
rows('.$query.') (' . __CLASS__ . '::' . __FUNCTION__ . ':' . __LINE__ . '): ';print_r($rows);echo'
';} foreach ($rows as $kID => $vItem) { $itemJson = new stdClass(); $itemJson->id = $vItem->id; $itemJson->name = $vItem->param_out; if (!empty($vItem->exports)) { $itemJson->exports = $vItem->exports; } $jsonData[] = $itemJson; } echo json_encode($jsonData); break; } } exit; } } SE_Layout::menu(); Lib::loadClass('UserActivity'); Lib::loadClass('ProcesHelper'); $zasobID = ProcesHelper::getZasobTableID('ITEM_LINKS'); if ($zasobID <= 0) { echo '
' . "Brak tabeli ITEM_LINKS" . '
'; echo UserActivity::showListInContainer(); return; } $zasobObj = ProcesHelper::getZasobTableInfo($zasobID); if (!$zasobObj) { echo '
' . "Zasob TABELA ID={$zasobID} nie istnieje" . '
'; echo UserActivity::showSimpleList(); return; } $groupID = V::get('groupID', 0, $_GET, 'int'); if (!$groupID) { echo '
Wrong param group id!
'; return; } if (V::get('_testUsrGroupsLdapLvl0', '', $_GET)) { Lib::loadClass('UsersLdapHelper'); $usrLogin = User::getLogin(); $groups = array(); $groupsLvl3 = array(); $groupsNetwork = UsersLdapHelper::getUserGroups($usrLogin, 0); foreach ($groupsNetwork as $vGroup) { $groups[$vGroup->cn] = $vGroup->appleUID; } echo'
groups ldap lvl 0 (' . __CLASS__ . '::' . __FUNCTION__ . ':' . __LINE__ . '): ';print_r($groups);echo'
'; $groupsNetwork = UsersLdapHelper::getUserGroups($usrLogin, 3); foreach ($groupsNetwork as $vGroup) { $groupsLvl3[$vGroup->cn] = $vGroup->appleUID; } echo'
groups ldap lvl 3 (' . __CLASS__ . '::' . __FUNCTION__ . ':' . __LINE__ . '): ';print_r($groupsLvl3);echo'
'; } $usrStorageDB = UserStorageFactory::getStorage('DB'); if (!$usrStorageDB) { echo '
Error storage not exists!
'; return; } $group = $usrStorageDB->getGroup($groupID); if (!$group) { echo '
' . "Grupa {$groupID} nie istnieje." . '
'; return; } $group->getParentGroups(); if(V::get('DBG_NG', '', $_GET)){echo'
$group (' . __CLASS__ . '::' . __FUNCTION__ . ':' . __LINE__ . '): ';print_r($group);echo'
';} UserActivity::add($zasobID); $userAcl = User::getAcl(); $userAcl->fetchGroups(); if (!$userAcl->hasTableAcl($zasobObj->ID)) { echo '
' . "Brak uprawnień do tabeli ID={$zasobObj->ID}" . '
'; echo UserActivity::showSimpleList(); return; } $tblAcl = $userAcl->getTableAcl($zasobObj->ID); $forceTblAclInit = ('1' == V::get('_force', '', $_GET)); $tblAcl->init($forceTblAclInit); Lib::loadClass('TableAjax'); $forceFilterInit = array(); $filterInit = new stdClass(); $filterInit->currSortCol = 'ID'; $filterInit->currSortFlip = 'desc'; foreach ($_GET as $k => $v) { if (strlen($k) > 3 && substr($k, 0, 2) == 'f_' && !empty($v)) {// filter prefix $filterInit->$k = $v; } else if (strlen($k) > 4 && substr($k, 0, 3) == 'sf_' && !empty($v)) {// special filter prefix $filterInit->$k = $v; } else if (strlen($k) > 4 && substr($k, 0, 3) == 'ff_' && !empty($v)) {// force filter prefix $fldName = substr($k, 3); $forceFilterInit[$fldName] = $v; } } $tblZasobyID = ProcesHelper::getZasobTableID('CRM_LISTA_ZASOBOW'); $forceFilterInit['TABLE_1_NAME'] = 'CRM_LISTA_ZASOBOW'; $forceFilterInit['TABLE_1_ZASOB_ID'] = $tblZasobyID; $forceFilterInit['TABLE_1_ID'] = $group->zasobID; $forceFilterInit['TABLE_2_NAME'] = 'CRM_LISTA_ZASOBOW'; $forceFilterInit['TABLE_2_ZASOB_ID'] = $tblZasobyID; $forceFilterInit['LINKS_TYPE_ID'] = $linkTypeIdNestedGroups; $tbl = new TableAjax($tblAcl); $tbl->setLabel($zasobObj->OPIS); $tbl->setFilterInit($filterInit); if (!empty($forceFilterInit)) $tbl->setForceFilterInit($forceFilterInit); $tbl->addRowFunction('edit'); $tbl->addRowFunction('hist'); $tbl->addRowFunction('files'); $tbl->addRowFunction('cp'); $tbl->showProcesInit(false);// hide Proces filter field Lib::loadClass('TypespecialVariable'); $typeSpecialNestedGroups = TypespecialVariable::getInstance(-1, '__NESTED_GROUPS'); $groupUsers = array(); $groupNestedUsers = array(); $tblUsrsZasobId = ProcesHelper::getZasobTableID('ADMIN_USERS'); if ($group->zasobID > 0) { $groupUsers = UsersHelper::getUsersByGroupId($groupID); $groupNestedUsers = UsersHelper::getUsersByGroupsIds(array_keys($group->nestedGroups), array_keys($groupUsers)); } ?>

Grupy uprawnień

Zasób []: type; ?> zasobDESC; ?> synchronizuj do LDAP


', $taskErrors); ?>
', $taskMsgs); ?>
Udostępnij rekordy innym grupom
np. przełożonemu.
    nestedGroups)) : ?> nestedGroups as $vNestedGroup) : ?>
  • [zasobID; ?>] type; ?> zasobDESC; ?>
  • showFormItem($tblID = -1, $fName, $selValue = '', $fldParams); ?>
Grupy, które udostępniają rekordy
np. grupy podrzędnych pracowników lub dział, podmiot.
    parentGroups)) : ?> parentGroups as $vParentGroup) : ?>
  • [zasobID; ?>] type) : ?> type; ?> zasobDESC; ?>
  • showFormItem($tblID = -1, $fName, $selValue = '', $fldParams); ?>
Użytkownicy:
Brak użytkowników przypisanych bezpośrednio do grupy
ADM_NAME; ?>
EMPLOYEE_TYPE; ?> ADM_PHONE)) : ?>
Tel.: ADM_PHONE; ?> EMAIL)) : ?>
EMAIL; ?>
Użytwkonicy z uprawnieniami do rekordów
Brak
ADM_NAME; ?>
EMPLOYEE_TYPE; ?> ADM_PHONE)) : ?>
Tel.: ADM_PHONE; ?> EMAIL)) : ?>
EMAIL; ?>
render(); }