Esempio n. 1
0
    return;
}
$CrmPerms = new CCrmPerms($USER->GetID());
if (!$CrmPerms->HavePerm('CONFIG', BX_CRM_PERM_CONFIG, 'WRITE')) {
    ShowError(GetMessage('CRM_PERMISSION_DENIED'));
    return;
}
$arParams['PATH_TO_ROLE_EDIT'] = CrmCheckPath('PATH_TO_ROLE_EDIT', $arParams['PATH_TO_ROLE_EDIT'], $APPLICATION->GetCurPage());
$arParams['PATH_TO_ENTITY_LIST'] = CrmCheckPath('PATH_TO_ENTITY_LIST', $arParams['PATH_TO_ENTITY_LIST'], $APPLICATION->GetCurPage());
$arParams['ROLE_ID'] = (int) $arParams['ROLE_ID'];
$bVarsFromForm = false;
$arResult['PATH_TO_ROLE_EDIT'] = CComponentEngine::MakePathFromTemplate($arParams['PATH_TO_ROLE_EDIT'], array('role_id' => $arParams['ROLE_ID']));
if ($_SERVER['REQUEST_METHOD'] == 'POST' && (isset($_POST['save']) || isset($_POST['apply'])) && check_bitrix_sessid()) {
    $bVarsFromForm = true;
    $arFields = array('NAME' => $_POST['NAME'], 'RELATION' => isset($_POST['ROLE_PERMS']) ? $_POST['ROLE_PERMS'] : array());
    $CCrmRole = new CcrmRole();
    if ($arParams['ROLE_ID'] > 0) {
        if (!$CCrmRole->Update($arParams['ROLE_ID'], $arFields)) {
            $arResult['ERROR_MESSAGE'] = $arFields['RESULT_MESSAGE'];
        }
    } else {
        $arParams['ROLE_ID'] = $CCrmRole->Add($arFields);
        if ($arParams['ROLE_ID'] === false) {
            $arResult['ERROR_MESSAGE'] = $arFields['RESULT_MESSAGE'];
        }
    }
    if (empty($arResult['ERROR_MESSAGE'])) {
        if (isset($_POST['apply'])) {
            LocalRedirect(CComponentEngine::MakePathFromTemplate($arParams['PATH_TO_ROLE_EDIT'], array('role_id' => $arParams['ROLE_ID'])));
        } else {
            LocalRedirect($arParams['PATH_TO_ENTITY_LIST']);
Esempio n. 2
0
if (!CModule::IncludeModule('crm')) {
    ShowError(GetMessage('CRM_MODULE_NOT_INSTALLED'));
    return;
}
$CrmPerms = new CCrmPerms($USER->GetID());
if (!$CrmPerms->HavePerm('CONFIG', BX_CRM_PERM_CONFIG, 'WRITE')) {
    ShowError(GetMessage('CRM_PERMISSION_DENIED'));
    return;
}
CJSCore::Init(array('access', 'window'));
$arParams['PATH_TO_ROLE_EDIT'] = CrmCheckPath('PATH_TO_ROLE_EDIT', $arParams['PATH_TO_ROLE_EDIT'], $APPLICATION->GetCurPage());
$arParams['PATH_TO_ENTITY_LIST'] = CrmCheckPath('PATH_TO_ENTITY_LIST', $arParams['PATH_TO_ENTITY_LIST'], $APPLICATION->GetCurPage());
// save settings
if ($_SERVER['REQUEST_METHOD'] == 'POST' && $_POST['ACTION'] == 'save' && check_bitrix_sessid()) {
    $arPerms = isset($_POST['PERMS']) ? $_POST['PERMS'] : array();
    $CCrmRole = new CcrmRole();
    $CCrmRole->SetRelation($arPerms);
    LocalRedirect($APPLICATION->GetCurPage());
}
// get role list
$arResult['PATH_TO_ROLE_ADD'] = CComponentEngine::MakePathFromTemplate($arParams['PATH_TO_ROLE_EDIT'], array('role_id' => 0));
$arResult['ROLE'] = array();
$obRes = CCrmRole::GetList();
while ($arRole = $obRes->Fetch()) {
    $arRole['PATH_TO_EDIT'] = CComponentEngine::MakePathFromTemplate($arParams['PATH_TO_ROLE_EDIT'], array('role_id' => $arRole['ID']));
    $arRole['PATH_TO_DELETE'] = CHTTP::urlAddParams(CComponentEngine::MakePathFromTemplate($arParams['PATH_TO_ROLE_EDIT'], array('role_id' => $arRole['ID'])), array('delete' => '1', 'sessid' => bitrix_sessid()));
    $arRole['NAME'] = htmlspecialcharsbx($arRole['NAME']);
    $arResult['ROLE'][$arRole['ID']] = $arRole;
}
// get role relation
$arResult['RELATION'] = array();