if ($email !== '') { if (!check_email($email)) { echo CUtil::PhpToJSObject(array('ERROR' => GetMessage('CRM_COMPANY_EDIT_INVALID_EMAIL', array('#VALUE#' => $email)))); die; } $arFields['FM']['EMAIL'] = array('n0' => array('VALUE_TYPE' => 'WORK', 'VALUE' => $email)); } $phone = isset($data['phone']) ? $data['phone'] : ''; if ($phone !== '') { $arFields['FM']['PHONE'] = array('n0' => array('VALUE_TYPE' => 'WORK', 'VALUE' => $phone)); } $CrmCompany = new CCrmCompany(); $ID = $CrmCompany->Add($arFields, true, array('DISABLE_USER_FIELD_CHECK' => true, 'REGISTER_SONET_EVENT' => true)); if (is_int($ID) && $ID > 0) { $data['id'] = $ID; $info = CCrmEntitySelectorHelper::PrepareEntityInfo('COMPANY', $ID); echo CUtil::PhpToJSObject(array('DATA' => $data, 'INFO' => array('title' => $info['TITLE'], 'url' => $info['URL']))); } else { echo CUtil::PhpToJSObject(array('ERROR' => $CrmCompany->LAST_ERROR)); } } elseif ($action === 'ENABLE_SONET_SUBSCRIPTION') { $userID = CCrmSecurityHelper::GetCurrentUserID(); $entityTypeName = isset($_POST['ENTITY_TYPE']) ? strtoupper($_POST['ENTITY_TYPE']) : ''; $entityID = isset($_POST['ENTITY_ID']) ? intval($_POST['ENTITY_ID']) : 0; if ($userID > 0 && $entityTypeName === CCrmOwnerType::CompanyName && $entityID > 0 && CCrmCompany::CheckReadPermission($entityID)) { $isEnabled = CCrmSonetSubscription::IsRelationRegistered(CCrmOwnerType::Company, $entityID, CCrmSonetSubscriptionType::Observation, $userID); $enable = isset($_POST['ENABLE']) && strtoupper($_POST['ENABLE']) === 'Y'; if ($isEnabled !== $enable) { if ($enable) { CCrmSonetSubscription::RegisterSubscription(CCrmOwnerType::Company, $entityID, CCrmSonetSubscriptionType::Observation, $userID); } else {
default: $valEntityType = ''; } $entityID = intval(substr($entityID, intval(strpos($entityID, '_')) + 1)); $editorID = "{$arParams['FORM_ID']}_{$field['id']}"; $containerID = "{$arParams['FORM_ID']}_FIELD_CONTAINER_{$field['id']}"; $createEntitiesBlockID = "{$arParams['FORM_ID']}_CREATE_ENTITIES_{$field['id']}"; $selectorID = "{$arParams['FORM_ID']}_ENTITY_SELECTOR_{$field['id']}"; $changeButtonID = "{$arParams['FORM_ID']}_CHANGE_BTN_{$field['id']}"; $addContactButtonID = "{$arParams['FORM_ID']}_ADD_CONTACT_BTN_{$field['id']}"; $addCompanyButtonID = "{$arParams['FORM_ID']}_ADD_COMPANY_BTN_{$field['id']}"; $dataInputName = isset($params['INPUT_NAME']) ? $params['INPUT_NAME'] : $field['id']; $dataInputID = "{$arParams['FORM_ID']}_DATA_INPUT_{$dataInputName}"; $newDataInputName = isset($params['NEW_INPUT_NAME']) ? $params['NEW_INPUT_NAME'] : ''; $newDataInputID = $newDataInputName !== '' ? "{$arParams['FORM_ID']}_NEW_DATA_INPUT_{$dataInputName}" : ''; $entityInfo = CCrmEntitySelectorHelper::PrepareEntityInfo($valEntityType, $entityID); ?> <div id="<?php echo htmlspecialcharsbx($containerID); ?> " class="bx-crm-edit-crm-entity-field"> <div class="bx-crm-entity-info-wrapper"> <?php if ($entityID > 0) { ?> <a href="<?php echo htmlspecialcharsbx($entityInfo['URL']); ?> " target="_blank" class="bx-crm-entity-info-link"><?php echo htmlspecialcharsEx($entityInfo['TITLE']); ?>
if (!isset($arFields['FM'])) { $arFields['FM'] = array(); } $arFields['FM']['PHONE'] = array('n0' => array('VALUE_TYPE' => 'WORK', 'VALUE' => $phone)); } $CrmContact = new CCrmContact(); if ($ID > 0) { if ($CrmContact->Update($ID, $arFields, true, array('DISABLE_USER_FIELD_CHECK' => true, 'REGISTER_SONET_EVENT' => true))) { $info = CCrmEntitySelectorHelper::PrepareEntityInfo('CONTACT', $ID); echo CUtil::PhpToJSObject(array('DATA' => $data, 'INFO' => array('title' => $info['TITLE'], 'url' => $info['URL']))); } } else { $ID = $CrmContact->Add($arFields, true, array('DISABLE_USER_FIELD_CHECK' => true, 'REGISTER_SONET_EVENT' => true)); if (is_int($ID) && $ID > 0) { $data['id'] = $ID; $info = CCrmEntitySelectorHelper::PrepareEntityInfo('CONTACT', $ID, array('NAME_TEMPLATE' => isset($_POST['NAME_TEMPLATE']) ? $_POST['NAME_TEMPLATE'] : '')); echo CUtil::PhpToJSObject(array('DATA' => $data, 'INFO' => array('title' => $info['TITLE'], 'url' => $info['URL']))); } else { echo CUtil::PhpToJSObject(array('ERROR' => $CrmContact->LAST_ERROR)); } } } elseif ($action === 'ENABLE_SONET_SUBSCRIPTION') { $userID = CCrmSecurityHelper::GetCurrentUserID(); $entityTypeName = isset($_POST['ENTITY_TYPE']) ? strtoupper($_POST['ENTITY_TYPE']) : ''; $entityID = isset($_POST['ENTITY_ID']) ? intval($_POST['ENTITY_ID']) : 0; if ($userID > 0 && $entityTypeName === CCrmOwnerType::ContactName && $entityID > 0 && CCrmContact::CheckReadPermission($entityID)) { $isEnabled = CCrmSonetSubscription::IsRelationRegistered(CCrmOwnerType::Contact, $entityID, CCrmSonetSubscriptionType::Observation, $userID); $enable = isset($_POST['ENABLE']) && strtoupper($_POST['ENABLE']) === 'Y'; if ($isEnabled !== $enable) { if ($enable) { CCrmSonetSubscription::RegisterSubscription(CCrmOwnerType::Contact, $entityID, CCrmSonetSubscriptionType::Observation, $userID);