Требуется разработчик! Поддержка серверов

idea::InstallUserFields: метод Битрикс

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

<?php 
//    idea::InstallUserFields()
//    /bitrix/modules/idea/install/index.php:84

    
function InstallUserFields()
    {
        
$ImportantUserFields $this->0897d4405fc25f1dd8c55b88d558778fGetIdeaUserFields();
        
$messages = array();
        
$db_res = \Bitrix\Main\Localization\LanguageTable::getList(array('order'=>array('SORT'=>'ASC')));
        while(
$ar $db_res->fetch())
        {
            
$messages[$ar["LID"]] = IncludeModuleLangFile(__FILE__$ar["LID"], true);
        }

        foreach(
$ImportantUserFields as $UserFieldName => $Exists)
        {
            if(!
$Exists)
            {
                
$EDIT_FORM_LABEL = array();
                foreach (
$messages as $lid => $mess)
                    
$EDIT_FORM_LABEL[$lid] = $mess["IDEA_".$UserFieldName."_DESCRIPTION"];
                
$UserType = new CUserTypeEntity();
                switch (
$UserFieldName)
                {
                    case 
"UF_CATEGORY_CODE":
                        
GetMessage("IDEA_UF_CATEGORY_CODE_DESCRIPTION");
                        
$UserType->Add(array(
                            
"ENTITY_ID" => "BLOG_POST",
                            
"FIELD_NAME" => $UserFieldName,
                            
"USER_TYPE_ID" => "string",
                            
"IS_SEARCHABLE" => "N",
                            
"EDIT_FORM_LABEL" => $EDIT_FORM_LABEL
                        
));
                        break;
                    case 
"UF_ANSWER_ID":
                        
GetMessage("IDEA_UF_ANSWER_ID_DESCRIPTION");
                        
$UserType->Add(array(
                            
"ENTITY_ID" => "BLOG_POST",
                            
"FIELD_NAME" => $UserFieldName,
                            
"USER_TYPE_ID" => "integer",
                            
"IS_SEARCHABLE" => "N",
                            
"MULTIPLE" => "Y",
                            
"EDIT_FORM_LABEL" => $EDIT_FORM_LABEL
                        
));
                        break;
                    case 
"UF_ORIGINAL_ID":
                        
GetMessage("IDEA_UF_ORIGINAL_ID_DESCRIPTION");
                        
$UserType->Add(array(
                            
"ENTITY_ID" => "BLOG_POST",
                            
"FIELD_NAME" => $UserFieldName,
                            
"USER_TYPE_ID" => "string",
                            
"IS_SEARCHABLE" => "N",
                            
"EDIT_FORM_LABEL" => $EDIT_FORM_LABEL
                        
));
                        break;
                    case 
"UF_STATUS":
                        
GetMessage("IDEA_UF_STATUS_DESCRIPTION");
                        
$ID $UserType->Add(array(
                            
"ENTITY_ID" => "BLOG_POST",
                            
"FIELD_NAME" => $UserFieldName,
                            
"USER_TYPE_ID" => "enumeration",
                            
"IS_SEARCHABLE" => "N",
                            
"EDIT_FORM_LABEL" => $EDIT_FORM_LABEL
                        
));

                        if(
intval($ID)>0)
                        {
                            
$UserTypeEnum = new CUserFieldEnum();
                            
$UserTypeEnum->SetEnumValues($ID, array(
                                
"n0" => array(
                                    
"SORT" => 100,
                                    
"XML_ID" => "NEW",
                                    
"VALUE" => GetMessage("IDEA_UF_STATUS_NEW_TITLE"),
                                    
"DEF" => "Y",
                                ),
                                
"n1" => array(
                                    
"SORT" => 200,
                                    
"XML_ID" => "PROCESSING",
                                    
"VALUE" => GetMessage("IDEA_UF_STATUS_PROCESSING_TITLE"),
                                    
"DEF" => "N",
                                ),
                                
"n2" => array(
                                    
"SORT" => 300,
                                    
"XML_ID" => "COMPLETED",
                                    
"VALUE" => GetMessage("IDEA_UF_STATUS_COMPLETED_TITLE"),
                                    
"DEF" => "N",
                                ),
                            ));
                        }
                        break;
                }
            }
        }
    }

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

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

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

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

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

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

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

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