本文整理汇总了PHP中CTask::GetLetter方法的典型用法代码示例。如果您正苦于以下问题:PHP CTask::GetLetter方法的具体用法?PHP CTask::GetLetter怎么用?PHP CTask::GetLetter使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CTask
的用法示例。
在下文中一共展示了CTask::GetLetter方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: Array
COption::SetOptionString($module_id, "GROUP_DEFAULT_RIGHT", $letter, "Right for groups by default");
$nID = COperation::GetIDByName('edit_subordinate_users');
$arTasksInModule = Array();
foreach($arGROUPS as $value)
{
$tid = ${"TASKS_".$value["ID"]};
$arTasksInModule[$value["ID"]] = Array('ID' => $tid);
$subOrdGr = false;
if (strlen($tid) > 0 && in_array($nID,CTask::GetOperations($tid)) && isset($_POST['subordinate_groups_'.$value["ID"]]))
$subOrdGr = $_POST['subordinate_groups_'.$value["ID"]];
CGroup::SetSubordinateGroups($value["ID"], $subOrdGr);
$rt = ($tid) ? CTask::GetLetter($tid) : '';
if (strlen($rt) > 0 && $rt != "NOT_REF")
$APPLICATION->SetGroupRight($module_id, $value["ID"], $rt);
else
$APPLICATION->DelGroupRight($module_id, array($value["ID"]));
}
CGroup::SetTasksForModule($module_id, $arTasksInModule);
if($_REQUEST["back_url_settings"] <> "" && $_REQUEST["Apply"] == "")
LocalRedirect($_REQUEST["back_url_settings"]);
else
LocalRedirect("/freetrix/admin/settings.php?lang=".LANGUAGE_ID."&mid=".urlencode($mid)."&tabControl_active_tab=".urlencode($_REQUEST["tabControl_active_tab"])."&back_url_settings=".urlencode($_REQUEST["back_url_settings"]));
}
if($SET_LICENSE_KEY == "")
示例2: SetModulePermission
function SetModulePermission($group_id, $module_id, $permission)
{
global $DB, $APPLICATION;
if (intval($permission) <= 0 && $permission != false) {
$strSql = "SELECT T.ID FROM b_task T WHERE T.MODULE_ID='" . $DB->ForSql($module_id) . "' AND NAME='" . $DB->ForSql($permission) . "'";
$db_task = $DB->Query($strSql);
if ($ar_task = $db_task->Fetch()) {
$permission = $ar_task['ID'];
}
}
if (intval($permission) > 0 || $permission === false) {
$strSql = "SELECT T.ID FROM b_task T WHERE T.MODULE_ID='" . $DB->ForSql($module_id) . "'";
$dbr_tasks = $DB->Query($strSql, false, "File: " . __FILE__ . "<br>Line: " . __LINE__);
$arIds = array();
while ($arTask = $dbr_tasks->Fetch()) {
$arIds[] = $arTask['ID'];
}
if (count($arIds) > 0) {
$strSql = "DELETE FROM b_group_task WHERE GROUP_ID=" . IntVal($group_id) . " AND TASK_ID IN (" . implode(",", $arIds) . ")";
$DB->Query($strSql, false, "File: " . __FILE__ . "<br>Line: " . __LINE__);
}
if (intval($permission) > 0) {
$DB->Query("INSERT INTO b_group_task (GROUP_ID, TASK_ID, EXTERNAL_ID) " . "SELECT G.ID, T.ID, '' " . "FROM b_group G, b_task T " . "WHERE G.ID = " . intval($group_id) . " AND T.ID = " . intval($permission), false, "File: " . __FILE__ . "<br>Line: " . __LINE__);
$permission_letter = CTask::GetLetter($permission);
}
} else {
$permission_letter = $permission;
}
if (strlen($permission_letter) > 0) {
$APPLICATION->SetGroupRight($module_id, $group_id, $permission_letter);
} else {
$APPLICATION->DelGroupRight($module_id, array($group_id));
}
}
示例3: array
}
$module_id = "main";
COption::SetOptionString($module_id, "GROUP_DEFAULT_TASK", $GROUP_DEFAULT_TASK, "Task for groups by default");
$letter = ($l = CTask::GetLetter($GROUP_DEFAULT_TASK)) ? $l : 'D';
COption::SetOptionString($module_id, "GROUP_DEFAULT_RIGHT", $letter, "Right for groups by default");
$nID = COperation::GetIDByName('edit_subordinate_users');
$arTasksInModule = array();
foreach ($arGROUPS as $value) {
$tid = ${"TASKS_" . $value["ID"]};
$arTasksInModule[$value["ID"]] = array('ID' => $tid);
$subOrdGr = false;
if (strlen($tid) > 0 && in_array($nID, CTask::GetOperations($tid)) && isset($_POST['subordinate_groups_' . $value["ID"]])) {
$subOrdGr = $_POST['subordinate_groups_' . $value["ID"]];
}
CGroup::SetSubordinateGroups($value["ID"], $subOrdGr);
$rt = $tid ? CTask::GetLetter($tid) : '';
if (strlen($rt) > 0 && $rt != "NOT_REF") {
$APPLICATION->SetGroupRight($module_id, $value["ID"], $rt);
} else {
$APPLICATION->DelGroupRight($module_id, array($value["ID"]));
}
}
CGroup::SetTasksForModule($module_id, $arTasksInModule);
if ($_REQUEST["back_url_settings"] != "" && $_REQUEST["Apply"] == "") {
LocalRedirect($_REQUEST["back_url_settings"]);
} else {
LocalRedirect("/bitrix/admin/settings.php?lang=" . LANGUAGE_ID . "&mid=" . urlencode($mid) . "&tabControl_active_tab=" . urlencode($_REQUEST["tabControl_active_tab"]) . "&back_url_settings=" . urlencode($_REQUEST["back_url_settings"]));
}
}
if ($SET_LICENSE_KEY == "") {
$SET_LICENSE_KEY = LICENSE_KEY;
示例4: GetFileAccessPermissionByUser
function GetFileAccessPermissionByUser($intUserID, $path, $groups = false, $task_mode = false)
{
$intUserIDTmp = intval($intUserID);
if ($intUserIDTmp . '|' != $intUserID . '|') {
return !$task_mode ? 'D' : array(CTask::GetIdByLetter('D', 'main', 'file'));
}
$intUserID = $intUserIDTmp;
if ($groups === false) {
$groups = CUser::GetUserGroup($intUserID);
foreach ($groups as $key => $val) {
$groups[$key] = "G" . $val;
}
} elseif (is_array($groups) && !empty($groups)) {
$bNumbers = preg_match('/^[0-9]+$/', $groups[0]);
if ($bNumbers) {
foreach ($groups as $key => $val) {
$groups[$key] = "G" . $val;
}
}
}
CMain::InitPathVars($site, $path);
$DOC_ROOT = CSite::GetSiteDocRoot($site);
$bWin = strncasecmp(PHP_OS, "WIN", 3) == 0;
if ($bWin) {
$path = strtolower($path);
}
if (trim($path, "/") != "") {
$path = Rel2Abs("/", $path);
if ($path == "") {
return !$task_mode ? 'D' : array(CTask::GetIdByLetter('D', 'main', 'file'));
}
}
$bAdminM = in_array("G1", $groups);
if ($bAdminM) {
return !$task_mode ? 'X' : array(CTask::GetIdByLetter('X', 'main', 'file'));
}
if (substr($path, -12) == "/.access.php" && !$bAdminM) {
return !$task_mode ? 'D' : array(CTask::GetIdByLetter('D', 'main', 'file'));
}
if (substr($path, -10) == "/.htaccess" && !$bAdminM) {
return !$task_mode ? 'D' : array(CTask::GetIdByLetter('D', 'main', 'file'));
}
$max_perm = "D";
$arGroupTask = array();
$io = CBXVirtualIo::GetInstance();
$groups[] = "*";
while (true) {
$path = rtrim($path, "");
$path = rtrim($path, "/");
if ($path == '') {
$access_file_name = "/.access.php";
$Dir = "/";
} else {
$pos = strrpos($path, "/");
if ($pos === false) {
break;
}
$Dir = substr($path, $pos + 1);
$Dir = TrimUnsafe($Dir);
$path = substr($path, 0, $pos + 1);
$access_file_name = $path . ".access.php";
}
if (array_key_exists($site . "|" . $access_file_name, $this->FILE_PERMISSION_CACHE)) {
$PERM = $this->FILE_PERMISSION_CACHE[$site . "|" . $access_file_name];
} else {
$PERM = array();
if ($io->FileExists($DOC_ROOT . $access_file_name)) {
include $io->GetPhysicalName($DOC_ROOT . $access_file_name);
}
if ($bWin && !empty($PERM)) {
$PERM_TMP = array();
foreach ($PERM as $key => $val) {
$PERM_TMP[strtolower($key)] = $val;
}
$PERM = $PERM_TMP;
}
$this->FILE_PERMISSION_CACHE[$site . "|" . $access_file_name] = $PERM;
}
if ($PERM[$Dir] && is_array($PERM[$Dir])) {
$dir_perm = $PERM[$Dir];
foreach ($groups as $key => $group_id) {
if (isset($dir_perm[$group_id])) {
$perm = $dir_perm[$group_id];
} elseif (preg_match('/^G[0-9]+$/', $group_id)) {
//compatibility with group id
$perm = $dir_perm[substr($group_id, 1)];
} else {
continue;
}
if ($task_mode) {
if (substr($perm, 0, 2) == 'T_') {
$tid = intval(substr($perm, 2));
} elseif (($tid = CTask::GetIdByLetter($perm, 'main', 'file')) === false) {
continue;
}
$arGroupTask[$group_id] = $tid;
} else {
if (substr($perm, 0, 2) == 'T_') {
$tid = intval(substr($perm, 2));
$perm = CTask::GetLetter($tid);
//.........这里部分代码省略.........
示例5: array
$res = $group->Update($ID, $arFields);
} else {
$ID = $group->Add($arFields);
$res = $ID > 0;
$new = "Y";
}
$strError .= $group->LAST_ERROR;
if (strlen($strError) <= 0) {
if (intval($ID) != 1 || COption::GetOptionString("main", "controller_member", "N") == "Y" && COption::GetOptionString("main", "~controller_limited_admin", "N") == "Y") {
// set per module rights
$arTasks = array();
foreach ($arModules as $MID) {
$moduleName = str_replace(".", "_", $MID);
if (isset(${"TASKS_" . $moduleName})) {
$arTasks[$MID] = ${"TASKS_" . $moduleName};
$rt = CTask::GetLetter($arTasks[$MID]);
} else {
$rt = array();
if (isset(${"RIGHTS_" . $moduleName})) {
$rt = ${"RIGHTS_" . $moduleName};
}
$st = array();
if (isset(${"SITES_" . $moduleName})) {
$st = ${"SITES_" . $moduleName};
}
// echo "Delete group rights for all sites<br>";
$APPLICATION->DelGroupRight($MID, array($ID), false);
foreach ($arSites["reference_id"] as $site_id_tmp) {
// echo "Delete group rights for site ".$site_id_tmp."<br>";
$APPLICATION->DelGroupRight($MID, array($ID), $site_id_tmp);
}