コード例 #1
0
ファイル: usergroup.php プロジェクト: rasuldev/torino
 public static function CheckFields(&$arFields, $ID = 0)
 {
     global $APPLICATION;
     if ($ID > 0) {
         $rs = CSupportUserGroup::GetList(false, array('ID' => $ID));
         if (!$rs->Fetch()) {
             $APPLICATION->ThrowException(GetMessage('SUP_ERROR_GROUP_NOT_FOUND'));
             return false;
         }
     }
     if (array_key_exists('NAME', $arFields) && $arFields['NAME'] == '') {
         $APPLICATION->ThrowException(GetMessage('SUP_ERROR_GROUP_NAME_EMPTY'));
         return false;
     }
     if (array_key_exists('ID', $arFields)) {
         unset($arFields['ID']);
     }
     if (array_key_exists('SORT', $arFields) && !is_numeric($arFields['SORT'])) {
         unset($arFields['SORT']);
     }
     if (array_key_exists('IS_TEAM_GROUP', $arFields)) {
         $arFields['IS_TEAM_GROUP'] = $arFields['IS_TEAM_GROUP'] == 'Y' ? 'Y' : 'N';
     }
     return true;
 }
コード例 #2
0
ファイル: ticket_list.php プロジェクト: ASDAFF/bitrix-5
:</td>
	<td><?php 
echo SelectBoxMFromArray('find_supportteam_group_id[]', $arr, $find_supportteam_group_id, GetMessage('SUP_ALL'), false, count($arr['REFERENCE']) < 7 ? count($arr['REFERENCE']) + 1 : 7);
?>
</td>
</tr>
<?
}

if ($bADS || $bSupportClient = 'Y')
{

	$arr = array('REFERENCE' => array(), 'REFERENCE_ID' => array());
	if ($bAdmin=='Y' || $bDemo=='Y')
	{
		$rsGroups = CSupportUserGroup::GetList(array('NAME' => 'ASC'), array('!=IS_TEAM_GROUP' => 'Y'));
		while ($arGroup = $rsGroups->Fetch())
		{
			$arr['REFERENCE'][] = $arGroup['NAME'];
			$arr['REFERENCE_ID'][] = $arGroup['ID'];
		}
	}
	else
	{
		$arGroupFilter = array('!=IS_TEAM_GROUP' => 'Y');
		if($bSupportTeam != 'Y')
		{
			$arGroupFilter['USER_ID'] = $USER->GetID();
		}
		$rsGroups = CSupportUserGroup::GetUserGroupList(array('GROUP_NAME' => 'ASC'), $arGroupFilter);
		while ($arGroup = $rsGroups->Fetch())
コード例 #3
0
        }
    }
    foreach ($arID as $ID) {
        if (strlen($ID) <= 0) {
            continue;
        }
        $ID = intval($ID);
        switch ($_REQUEST['action']) {
            case 'delete':
                @set_time_limit(0);
                CSupportUserGroup::Delete($ID);
                break;
        }
    }
}
$rsData = CSupportUserGroup::GetList(array($by => $order), $arFilter);
$rsData = new CAdminResult($rsData, $sTableID);
$rsData->NavStart(50);
$lAdmin->NavText($rsData->GetNavPrint(GetMessage('SUP_GL_PAGES')));
$arHeaders = array();
$arHeaders[] = array('id' => 'ID', 'content' => 'ID', 'default' => true, 'sort' => 'ID');
$arHeaders[] = array('id' => 'NAME', 'content' => GetMessage('SUP_GL_NAME'), 'default' => true, 'sort' => 'NAME');
$arHeaders[] = array('id' => 'SORT', 'content' => GetMessage('SUP_GL_SORT'), 'default' => true, 'sort' => 'SORT');
$arHeaders[] = array('id' => 'XML_ID', 'content' => GetMessage('SUP_GL_XML_ID'), 'default' => false, 'sort' => 'XML_ID');
$arHeaders[] = array('id' => 'IS_TEAM_GROUP', 'content' => GetMessage('SUP_GL_IS_TEAM_GROUP'), 'default' => true, 'sort' => 'IS_TEAM_GROUP');
$lAdmin->AddHeaders($arHeaders);
while ($arGroup = $rsData->GetNext()) {
    $row =& $lAdmin->AddRow($arGroup['ID'], $arGroup);
    $row->AddViewField('NAME', '<a href="' . $EDIT_URL . '?lang=' . LANGUAGE_ID . '&amp;ID=' . $arGroup['ID'] . '">' . $arGroup['NAME'] . '</a>');
    $row->AddInputField('XML_ID');
    $row->AddInputField('SORT', array('size' => '5'));
コード例 #4
0
 function CheckFields(&$arFields, $groupID = 0, $userID = 0)
 {
     global $APPLICATION, $DB, $USER;
     $groupID = intval($groupID);
     $userID = intval($userID);
     if (!is_array($arFields)) {
         $arFields = array();
     }
     //if update
     if ($userID > 0 || $groupID > 0) {
         if ($userID <= 0) {
             $APPLICATION->ThrowException(GetMessage('SUP_ERROR_USER_ID_EMPTY'));
             return false;
         }
         if ($groupID <= 0) {
             $APPLICATION->ThrowException(GetMessage('SUP_ERROR_GROUP_ID_EMPTY'));
             return false;
         }
         if (array_key_exists('GROUP_ID', $arFields)) {
             unset($arFields['GROUP_ID']);
         }
         if (array_key_exists('USER_ID', $arFields)) {
             unset($arFields['USER_ID']);
         }
     }
     //if add
     if ($userID <= 0 && $groupID <= 0) {
         $arFields['GROUP_ID'] = array_key_exists('GROUP_ID', $arFields) ? intval($arFields['GROUP_ID']) : 0;
         $arFields['USER_ID'] = array_key_exists('USER_ID', $arFields) ? intval($arFields['USER_ID']) : 0;
         if ($arFields['USER_ID'] <= 0) {
             $APPLICATION->ThrowException(GetMessage('SUP_ERROR_USER_ID_EMPTY'));
             return false;
         }
         if ($arFields['GROUP_ID'] <= 0) {
             $APPLICATION->ThrowException(GetMessage('SUP_ERROR_GROUP_ID_EMPTY'));
             return false;
         }
         $rs = $USER->GetByID($arFields['USER_ID']);
         if (!$rs->Fetch()) {
             $APPLICATION->ThrowException(GetMessage('SUP_ERROR_NO_USER'));
             return false;
         }
         $rs = CSupportUserGroup::GetList(false, array('ID' => $arFields['GROUP_ID']));
         if (!($arGroup = $rs->Fetch())) {
             $APPLICATION->ThrowException(GetMessage('SUP_ERROR_NO_GROUP'));
             return false;
         }
         if (CTicket::IsAdmin($arFields['USER_ID']) || CTicket::IsSupportTeam($arFields['USER_ID'])) {
             if ($arGroup['IS_TEAM_GROUP'] != 'Y') {
                 $APPLICATION->ThrowException(GetMessage('SUP_ERROR_USER_NO_CLIENT'));
                 return false;
             }
         } elseif (CTicket::IsSupportClient($arFields['USER_ID'])) {
             if ($arGroup['IS_TEAM_GROUP'] == 'Y') {
                 $APPLICATION->ThrowException(GetMessage('SUP_ERROR_USER_NO_TEAM'));
                 return false;
             }
         } else {
             $APPLICATION->ThrowException(GetMessage('SUP_ERROR_NO_SUPPORT_USER'));
             return false;
         }
         $rs = CSupportUser2UserGroup::GetList(false, array('GROUP_ID' => $arFields['GROUP_ID'], 'USER_ID' => $arFields['USER_ID']));
         if ($rs->Fetch()) {
             $APPLICATION->ThrowException(GetMessage('SUP_ERROR_USERGROUP_EXISTS'));
             return false;
         }
     }
     if (array_key_exists('CAN_VIEW_GROUP_MESSAGES', $arFields)) {
         $arFields['CAN_VIEW_GROUP_MESSAGES'] = $arFields['CAN_VIEW_GROUP_MESSAGES'] == 'Y' ? 'Y' : 'N';
     } elseif ($userID <= 0 && $groupID <= 0) {
         $arFields['CAN_VIEW_GROUP_MESSAGES'] = 'N';
     }
     if (array_key_exists('CAN_MAIL_GROUP_MESSAGES', $arFields)) {
         $arFields['CAN_MAIL_GROUP_MESSAGES'] = $arFields['CAN_MAIL_GROUP_MESSAGES'] == 'Y' ? 'Y' : 'N';
     } elseif ($userID <= 0 && $groupID <= 0) {
         $arFields['CAN_MAIL_GROUP_MESSAGES'] = 'N';
     }
     return true;
 }
コード例 #5
0
            $APPLICATION->ThrowException(implode('<br>', $errors));
        }
    }
    if ($bOK) {
        if (strlen($save) > 0) {
            LocalRedirect($LIST_URL . '?lang=' . LANG);
        } elseif ($new) {
            LocalRedirect($APPLICATION->GetCurPage() . '?ID=' . $ID . '&lang=' . LANG . '&tabControl_active_tab=' . urlencode($tabControl_active_tab));
        }
    } else {
        if ($e = $APPLICATION->GetException()) {
            $message = new CAdminMessage(GetMessage('SUP_GE_ERROR'), $e);
        }
    }
}
$rsGroups = CSupportUserGroup::GetList(false, array('ID' => $ID));
$arGroup = $rsGroups->GetNext();
if (!$arGroup) {
    $ID = 0;
}
$arGroupUsers = array();
if ($arGroup) {
    $rs_ug = CSupportUser2UserGroup::GetList(false, array('GROUP_ID' => $ID));
    while ($ar_ug = $rs_ug->GetNext()) {
        $arGroupUsers[] = array('USER_ID' => $ar_ug['USER_ID'], 'CAN_VIEW_GROUP_MESSAGES' => $ar_ug['CAN_VIEW_GROUP_MESSAGES'], 'CAN_MAIL_GROUP_MESSAGES' => $ar_ug['CAN_MAIL_GROUP_MESSAGES'], 'CAN_MAIL_UPDATE_GROUP_MESSAGES' => $ar_ug['CAN_MAIL_UPDATE_GROUP_MESSAGES'], 'USER_NAME' => '[<a title="' . GetMessage("MAIN_USER_PROFILE") . '" href="user_edit.php?ID=' . $ar_ug["USER_ID"] . '&amp;lang=' . LANG . '">' . $ar_ug["USER_ID"] . '</a>] (' . $ar_ug["LOGIN"] . ') ' . $ar_ug["FIRST_NAME"] . ' ' . $ar_ug["LAST_NAME"]);
    }
}
$arGroupUsers[] = array('USER_ID' => '');
$arGroupUsers[] = array('USER_ID' => '');
$arGroupUsers[] = array('USER_ID' => '');
if ($ID > 0) {