$lstRead = new CListBox('right_to_del[read_only][]', null, 20); $lstDeny = new CListBox('right_to_del[deny][]', null, 20); foreach ($this->data['group_rights'] as $id => $rights) { if ($rights['permission'] == PERM_DENY) { $lstDeny->addItem($id, $rights['name']); } elseif ($rights['permission'] == PERM_READ) { $lstRead->addItem($id, $rights['name']); } elseif ($rights['permission'] == PERM_READ_WRITE) { $lstWrite->addItem($id, $rights['name']); } } $permissionsTable->addRow(array(new CCol($lstWrite, 'read_write'), new CCol($lstRead, 'read_only'), new CCol($lstDeny, 'deny'))); $permissionsTable->addRow(array(array(new CButton('add_read_write', _('Add'), "return PopUp('popup_right.php?dstfrm=" . $userGroupForm->getName() . '&permission=' . PERM_READ_WRITE . "', 450, 450);", 'formlist'), new CSubmit('del_read_write', _('Delete selected'), null, 'formlist')), array(new CButton('add_read_only', _('Add'), "return PopUp('popup_right.php?dstfrm=" . $userGroupForm->getName() . '&permission=' . PERM_READ . "', 450, 450);", 'formlist'), new CSubmit('del_read_only', _('Delete selected'), null, 'formlist')), array(new CButton('add_deny', _('Add'), "return PopUp('popup_right.php?dstfrm=" . $userGroupForm->getName() . '&permission=' . PERM_DENY . "', 450, 450);", 'formlist'), new CSubmit('del_deny', _('Delete selected'), null, 'formlist')))); $permissionsFormList->addRow(_('Composing permissions'), $permissionsTable); $permissionsFormList->addRow(_('Calculated permissions'), ''); $permissionsFormList = getPermissionsFormList($this->data['group_rights'], null, $permissionsFormList); // append form lists to tab $userGroupTab = new CTabView(); if (!$this->data['form_refresh']) { $userGroupTab->setSelected(0); } $userGroupTab->addTab('userGroupTab', _('User group'), $userGroupFormList); $userGroupTab->addTab('permissionsTab', _('Permissions'), $permissionsFormList); // append tab to form $userGroupForm->addItem($userGroupTab); // append buttons to form if (isset($this->data['usrgrpid'])) { $userGroupForm->addItem(makeFormFooter(new CSubmit('update', _('Update')), array(new CButtonDelete(_('Delete selected group?'), url_param('form') . url_param('usrgrpid') . url_param('config')), new CButtonCancel(url_param('config'))))); } else { $userGroupForm->addItem(makeFormFooter(new CSubmit('add', _('Add')), new CButtonCancel(url_param('config')))); }
/* * Permissions tab */ $permissionsFormList = new CFormList('permissionsFormList'); $userTypeComboBox = new CComboBox('user_type', $this->data['user_type'], 'submit();'); $userTypeComboBox->addItem(USER_TYPE_ZABBIX_USER, user_type2str(USER_TYPE_ZABBIX_USER)); $userTypeComboBox->addItem(USER_TYPE_ZABBIX_ADMIN, user_type2str(USER_TYPE_ZABBIX_ADMIN)); $userTypeComboBox->addItem(USER_TYPE_SUPER_ADMIN, user_type2str(USER_TYPE_SUPER_ADMIN)); if (isset($this->data['userid']) && bccomp(CWebUser::$data['userid'], $this->data['userid']) == 0) { $userTypeComboBox->setEnabled('disabled'); $permissionsFormList->addRow(_('User type'), array($userTypeComboBox, SPACE, new CSpan(_('User can\'t change type for himself')))); $userForm->addVar('user_type', $this->data['user_type']); } else { $permissionsFormList->addRow(_('User type'), $userTypeComboBox); } $permissionsFormList = getPermissionsFormList($this->data['user_rights'], $this->data['user_type'], $permissionsFormList); $permissionsFormList->addInfo(_('Permissions can be assigned for user groups only.')); $userTab->addTab('permissionsTab', _('Permissions'), $permissionsFormList); } if (isset($userMessagingFormList)) { $userTab->addTab('messagingTab', _('Messaging'), $userMessagingFormList); } // append tab to form $userForm->addItem($userTab); // append buttons to form if (isset($this->data['userid'])) { if ($this->data['is_profile']) { $deleteButton = null; } else { $deleteButton = new CButtonDelete(_('Delete selected user?'), url_param('form') . url_param('userid') . url_param('config')); if (bccomp(CWebUser::$data['userid'], $this->data['userid']) == 0) {