Поддержка серверов

CCourse::Update: метод Битрикс

Постоянная ссылка: http://bxapi.ru/src/?id=173965

<?php 
//    /bitrix/modules/learning/classes/general/course.phpCCourse::Update()
//    201:

    
function Update($ID$arFields)
    {
        global 
$DB;

        
$ID intval($ID);
        if (
$ID 1) return false;

        if (
is_set($arFields"ACTIVE") && $arFields["ACTIVE"] != "Y")
            
$arFields["ACTIVE"] = "N";

        if (
is_set($arFields"DESCRIPTION_TYPE") && $arFields["DESCRIPTION_TYPE"] != "html")
            
$arFields["DESCRIPTION_TYPE"] = "text";

        if (
is_set($arFields"DETAIL_TEXT_TYPE") && $arFields["DETAIL_TEXT_TYPE"] != "html")
            
$arFields["DETAIL_TEXT_TYPE"] = "text";

        if (
is_set($arFields"PREVIEW_TEXT_TYPE") && $arFields["PREVIEW_TEXT_TYPE"] != "html")
            
$arFields["PREVIEW_TEXT_TYPE"]="text";

        if (
is_set($arFields"RATING") && !in_array($arFields["RATING"], Array("Y""N")))
            
$arFields["RATING"] = NULL;

        if (
is_set($arFields"RATING_TYPE") && !in_array($arFields["RATING_TYPE"], Array("like""standart_text""like_graphic""standart")))
            
$arFields["RATING_TYPE"] = NULL;

        
$lessonId self::CourseGetLinkedLesson ($ID);
        if (
$this->CheckFields($arFields$ID) && $lessonId !== false)
        {
            if (
array_key_exists('ID'$arFields))
                unset(
$arFields["ID"]);

            
$arFieldsLesson $arFields;
            
$arFieldsToUnset = array ('GROUP_ID''SITE_ID');

            foreach (
$arFieldsToUnset as $key => $value)
                if (
array_key_exists($value$arFieldsLesson))
                    unset (
$arFieldsLesson[$value]);

            
//Sites
            
if(is_set($arFields"SITE_ID"))
            {
                
$str_LID "''";
                foreach(
$arFields["SITE_ID"] as $lang)
                    
$str_LID .= ", '".$DB->ForSql($lang)."'";

                
$strSql "DELETE FROM b_learn_course_site WHERE COURSE_ID=".$ID;
                
$DB->Query($strSqlfalse"File: ".__FILE__."<br>Line: ".__LINE__);

                
$strSql =
                    
"INSERT INTO b_learn_course_site(COURSE_ID, SITE_ID) ".
                    
"SELECT ".$ID.", LID ".
                    
"FROM b_lang ".
                    
"WHERE LID IN (".$str_LID.") ";

                
$DB->Query($strSqlfalse"File: ".__FILE__."<br>Line: ".__LINE__);

            }

            
CLearnLesson::Update($lessonId$arFieldsLesson);

            global 
$CACHE_MANAGER;
            
$CACHE_MANAGER->ClearByTag('LEARN_COURSE_'.$ID);

            return 
true;
        }

        return 
false;
    }

Блог разработчика

9 Августа 2016 ResizeImageGet и простой водяной знак налету

Сегодня поговорим о том как проще всего воткнуть водяной знак на картинки в Битрикс. Например, на все изображения каталога.

21 Июля 2016 Добавление вкладки в CRM коробки Битрикс24

В этом посте я покажу, как легко и просто добавить вкладку в сущность CRM. И не просто добавить, а вывести там свой контент.

21 Июля 2016 Как просто обращаться из коробки Битрикс24 на сайт на базе Битрикс

К примеру вам хочется внутренним скриптом дернуть с сайта-магазина информацию, которая там, в свою очередь, закрыта некоторыми правами. Например, админскими. Можно конечно мутить свой REST, или иной формат общения, но проще всего воспользоваться штатным инструментом:

Текст сообщения*
Загрузить изображение