示例#1
0
 }
 if (count($fieldNames) == 0) {
     __CrmCompanyShowEndJsonResonse(array('ERROR' => 'FIELD_NAME IS NOT DEFINED!'));
 }
 $fieldValues = array();
 if (isset($_POST['FIELD_VALUE'])) {
     if (is_array($_POST['FIELD_VALUE'])) {
         $fieldValues = $_POST['FIELD_VALUE'];
     } else {
         $fieldValues[] = $_POST['FIELD_VALUE'];
     }
 }
 $dbResult = CCrmCompany::GetListEx(array(), array('=ID' => $ID, 'CHECK_PERMISSIONS' => 'N'), false, false, array('*', 'UF_*'));
 $arFields = is_object($dbResult) ? $dbResult->Fetch() : null;
 if (is_array($arFields)) {
     CCrmInstantEditorHelper::PrepareUpdate(CCrmOwnerType::Company, $arFields, $fieldNames, $fieldValues);
     $CCrmCompany = new CCrmCompany();
     $disableUserFieldCheck = !$hasUserFields && isset($_POST['DISABLE_USER_FIELD_CHECK']) && strtoupper($_POST['DISABLE_USER_FIELD_CHECK']) === 'Y';
     if ($CCrmCompany->Update($ID, $arFields, true, true, array('REGISTER_SONET_EVENT' => true, 'DISABLE_USER_FIELD_CHECK' => $disableUserFieldCheck))) {
         $arErrors = array();
         CCrmBizProcHelper::AutoStartWorkflows(CCrmOwnerType::Company, $ID, CCrmBizProcEventType::Edit, $arErrors);
         $result = array();
         $count = count($fieldNames);
         for ($i = 0; $i < $count; $i++) {
             $fieldName = $fieldNames[$i];
             if (strpos($fieldName, 'FM.') === 0) {
                 //Filed name like 'FM.PHONE.WORK.1279'
                 $fieldParams = explode('.', $fieldName);
                 if (count($fieldParams) >= 3) {
                     $result[$fieldName] = array('VIEW_HTML' => CCrmViewHelper::PrepareMultiFieldHtml($fieldParams[1], array('VALUE_TYPE_ID' => $fieldParams[2], 'VALUE' => isset($fieldValues[$i]) ? $fieldValues[$i] : '')));
                 }
 public static function RenderHtmlEditor(&$arParams)
 {
     if (!is_array($arParams)) {
         return;
     }
     $fieldID = isset($arParams['FIELD_ID']) ? $arParams['FIELD_ID'] : '';
     $value = isset($arParams['VALUE']) ? $arParams['VALUE'] : '';
     $editorID = isset($arParams['EDITOR_ID']) ? $arParams['EDITOR_ID'] : '';
     if ($editorID === '') {
         $editorID = uniqid('LHE_');
     }
     $editorJsName = isset($arParams['EDITOR_JS_NAME']) ? $arParams['EDITOR_JS_NAME'] : '';
     if ($editorJsName === '') {
         $editorJsName = $editorID;
     }
     $toolbarConfig = isset($arParams['TOOLBAR_CONFIG']) ? $arParams['TOOLBAR_CONFIG'] : null;
     if (!is_array($toolbarConfig)) {
         $toolbarConfig = array('Bold', 'Italic', 'Underline', 'Strike', 'BackColor', 'ForeColor', 'CreateLink', 'DeleteLink', 'InsertOrderedList', 'InsertUnorderedList', 'Outdent', 'Indent');
     }
     if (!self::$IS_FILEMAN_INCLUDED) {
         CModule::IncludeModule('fileman');
         self::$IS_FILEMAN_INCLUDED = true;
     }
     ob_start();
     $editor = new CLightHTMLEditor();
     $editor->Show(array('id' => $editorID, 'height' => '150', 'bUseFileDialogs' => false, 'bFloatingToolbar' => false, 'bArisingToolbar' => false, 'bResizable' => false, 'jsObjName' => $editorJsName, 'bInitByJS' => false, 'bSaveOnBlur' => true, 'toolbarConfig' => $toolbarConfig));
     $lheHtml = ob_get_contents();
     ob_end_clean();
     $wrapperID = isset($arParams['WRAPPER_ID']) ? $arParams['WRAPPER_ID'] : '';
     if ($wrapperID === '') {
         $wrapperID = $editorID . '_WRAPPER';
     }
     echo str_replace(array('#TEXT#', '#VALUE#', '#NAME#', '#SETTINGS#', '#WRAPPER_ID#', '#HTML#'), array($value, htmlspecialcharsbx($value), $fieldID, htmlspecialcharsbx('{ "id":"' . CUtil::JSEscape($editorID) . '", "wrapperId":"' . CUtil::JSEscape($wrapperID) . '", "jsName":"' . CUtil::JSEscape($editorJsName) . '" }'), $wrapperID, $lheHtml), self::$TEMPLATES['LHE']);
 }