die; } if (!CModule::IncludeModule("learning")) { ShowError(GetMessage("LEARNING_MODULE_NOT_FOUND")); return; } $arParams["TRANSCRIPT_ID"] = isset($arParams["TRANSCRIPT_ID"]) ? $arParams["TRANSCRIPT_ID"] : $_REQUEST["TRANSCRIPT_ID"]; if (!preg_match("~^([0-9]+)\\-([0-9]+)\$~", $arParams["TRANSCRIPT_ID"], $match)) { ShowError(GetMessage("LEARNING_TRANSCRIPT_NOT_FOUND")); return; } $TRANSCRIPT = $match[1]; $USER_ID = $match[2]; $arParams['NAME_TEMPLATE'] = empty($arParams['NAME_TEMPLATE']) ? CSite::GetNameFormat() : $arParams["NAME_TEMPLATE"]; //Student exists? $res = CStudent::GetList(array(), array("USER_ID" => $USER_ID, "TRANSCRIPT" => $TRANSCRIPT)); if (!($arStudent = $res->GetNext())) { ShowError(GetMessage("LEARNING_TRANSCRIPT_NOT_FOUND")); return; } //Can view transcript? if ($arStudent["PUBLIC_PROFILE"] == "N" && !($USER->GetID() == $arStudent["USER_ID"] || $USER->IsAdmin())) { ShowError(GetMessage("LEARNING_TRANSCRIPT_PERMISSION_DENIED")); return; } //User exists? $res = CUser::GetByID($arStudent["USER_ID"]); if (!($arUser = $res->GetNext())) { ShowError(GetMessage("LEARNING_TRANSCRIPT_ERROR")); return; }
/** * <p>Возвращает учётную запись студента по коду пользователя USER_ID.</p> * * * @param int $USER_ID Код пользователя. </h * * @return CDBResult <p>Возвращается объект <a * href="http://dev.1c-bitrix.ru/api_help/main/reference/cdbresult/index.php">CDBResult</a>.</p> </h * * <h4>Example</h4> * <pre> * <? * if (CModule::IncludeModule("learning")) * { * $USER_ID = 3; * * $res = CStudent::GetByID($USER_ID); * * if ($arStudent = $res->GetNext()) * { * echo "CP: ".$arStudent["RESUME"]; * } * } * ?> * </pre> * * * <h4>See Also</h4> * <ul> <li> <a href="http://dev.1c-bitrix.ru/api_help/main/reference/cdbresult/index.php">CDBResult</a> </li> <li> <a * href="http://dev.1c-bitrix.ru/api_help/learning/fields.php#student">Поля учетной записи * студента</a> </li> <li> <a * href="http://dev.1c-bitrix.ru/api_help/learning/classes/cstudent/index.php">CStudent</a>::<a * href="http://dev.1c-bitrix.ru/api_help/learning/classes/cstudent/getlist.php">GetList</a> </li> </ul> <a * name="examples"></a> * * * @static * @link http://dev.1c-bitrix.ru/api_help/learning/classes/cstudent/getbyid.php * @author Bitrix */ public static function GetByID($ID) { return CStudent::GetList(array(), array("USER_ID" => $ID)); }
} else { if ($e = $APPLICATION->GetException()) { $strError = $e->GetString(); } } } } //Images $arUser["PERSONAL_PHOTO_ARRAY"] = CFile::GetFileArray($arUser["PERSONAL_PHOTO"]); $arUser["WORK_LOGO_ARRAY"] = CFile::GetFileArray($arUser["WORK_LOGO"]); //Countries $arUser["PERSONAL_COUNTRY_ARRAY"] = GetCountryArray(); //arResult $arResult = array("USER" => $arUser, "STUDENT" => array(), "TRANSCRIPT_DETAIL_URL" => "", "CURRENT_PAGE" => $APPLICATION->GetCurPage(), "ERROR_MESSAGE" => $strError); //Student $rsStudent = CStudent::GetList(array(), array("USER_ID" => $USER_ID)); if ($arStudent = $rsStudent->Fetch()) { $arResult["STUDENT"] = $arStudent; $arResult["TRANSCRIPT_DETAIL_URL"] = CComponentEngine::MakePathFromTemplate($arParams["TRANSCRIPT_DETAIL_TEMPLATE"], array("TRANSCRIPT_ID" => $arStudent["TRANSCRIPT"] . "-" . $arStudent["USER_ID"])); } //If post and error occured if ($_SERVER["REQUEST_METHOD"] == "POST" && strlen($arResult["ERROR_MESSAGE"]) > 0) { $arUserFields = $DB->GetTableFieldsList("b_user"); foreach ($arUserFields as $field) { if (array_key_exists($field, $_REQUEST)) { $arResult["USER"][$field] = htmlspecialchars($_REQUEST[$field]); } } $arUserFields = $DB->GetTableFieldsList("b_learn_student"); foreach ($arUserFields as $field) { if (array_key_exists($field, $_REQUEST)) {
} if (!isset($arResult["arBlogUser"]["ALLOW_POST"]) || $arResult["arBlogUser"]["ALLOW_POST"] != "Y" && $arResult["arBlogUser"]["ALLOW_POST"] != "N") { $arResult["arBlogUser"]["ALLOW_POST"] = "Y"; } } if (CModule::IncludeModule("forum")) { $arResult["INCLUDE_FORUM"] = "Y"; $rsForumUser = CForumUser::GetList(array(), array("USER_ID" => $arResult["ID"])); $arResult["arForumUser"] = $rsForumUser->GetNext(false); if (!isset($arResult["arForumUser"]["ALLOW_POST"]) || $arResult["arForumUser"]["ALLOW_POST"] != "Y" && $arResult["arForumUser"]["ALLOW_POST"] != "N") { $arResult["arForumUser"]["ALLOW_POST"] = "Y"; } } if (CModule::IncludeModule("learning")) { $arResult["INCLUDE_LEARNING"] = "Y"; $dbStudent = CStudent::GetList(array(), array("USER_ID" => $arResult["ID"])); $arResult["arStudent"] = $dbStudent->GetNext(); if (!isset($arResult["arStudent"]["PUBLIC_PROFILE"]) || $arResult["arStudent"]["PUBLIC_PROFILE"] != "Y" && $arResult["arStudent"]["PUBLIC_PROFILE"] != "N") { $arResult["arStudent"]["PUBLIC_PROFILE"] = "N"; } } if ($strError != '') { static $skip = array("PERSONAL_PHOTO" => 1, "WORK_LOGO" => 1, "forum_AVATAR" => 1, "blog_AVATAR" => 1); foreach ($_POST as $k => $val) { if (!isset($skip[$k])) { if (!is_array($val)) { $val = htmlspecialcharsex($val); } if (strpos($k, "forum_") === 0) { $arResult["arForumUser"][substr($k, 6)] = $val; } elseif (strpos($k, "blog_") === 0) {
<?php IncludeModuleLangFile(__FILE__); $strError = ""; ClearVars("str_student_"); if (CModule::IncludeModule("learning")) { $ID = intval($ID); $db_res = CStudent::GetList(array(), array("USER_ID" => $ID)); if (!$db_res->ExtractFields("str_student_", true)) { if (!isset($str_student_PUBLIC_PROFILE) || $str_student_PUBLIC_PROFILE != "Y" && $str_student_PUBLIC_PROFILE != "N") { $str_student_PUBLIC_PROFILE = "N"; } } if (strlen($strError) > 0) { $DB->InitTableVarsForEdit("b_learn_student", "student_", "str_student_"); } ?> <input type="hidden" name="profile_module_id[]" value="learning"> <tr valign="top"> <td align="right" width="40%"><?php echo GetMessage("learning_PUBLIC_PROFILE"); ?> :</td> <td width="60%"><input type="checkbox" name="student_PUBLIC_PROFILE" value="Y" <?php if ($str_student_PUBLIC_PROFILE == "Y") { echo "checked"; } ?> ></td> </tr>