Домен адреса контактной информации. Возвращает домен сетевого адреса для веб-ссылки или адреса электронной почты.
// Возвращает домен сетевого адреса для веб-ссылки или адреса электронной почты.
//
// Параметры:
// КонтактнаяИнформация - Строка - Строка JSON или XML контактной информации соответствующая XDTO пакету КонтактнаяИнформация.
//
// Возвращаемое значение:
// Строка - Домен адреса.
//
Функция ДоменАдресаКонтактнойИнформации(Знач КонтактнаяИнформация) Экспорт
Если ПустаяСтрока(КонтактнаяИнформация) Тогда
Возврат "";
КонецЕсли;
Если УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВXML(КонтактнаяИнформация) Тогда
КонтактнаяИнформацияСтруктурой = УправлениеКонтактнойИнформациейСлужебный.КонтактнаяИнформацияВСтруктуруJSON(КонтактнаяИнформация);
ИначеЕсли УправлениеКонтактнойИнформациейКлиентСервер.ЭтоКонтактнаяИнформацияВJSON(КонтактнаяИнформация) Тогда
КонтактнаяИнформацияСтруктурой = УправлениеКонтактнойИнформациейСлужебный.СтрокуJSONВСтруктуру(КонтактнаяИнформация);
КонецЕсли;
Если КонтактнаяИнформацияСтруктурой.Свойство("Type") И КонтактнаяИнформацияСтруктурой.Свойство("Value") Тогда
ДоменАдреса = СокрЛП(КонтактнаяИнформацияСтруктурой.Value);
Если ТипКонтактнойИнформацииПоНаименованию(КонтактнаяИнформацияСтруктурой.Type) = Перечисления.ТипыКонтактнойИнформации.ВебСтраница Тогда
Позиция = СтрНайти(ДоменАдреса, "://");
Если Позиция > 0 Тогда
ДоменАдреса = Сред(ДоменАдреса, Позиция + 3);
КонецЕсли;
Позиция = СтрНайти(ДоменАдреса, "/");
Возврат ?(Позиция = 0, ДоменАдреса, Лев(ДоменАдреса, Позиция - 1));
ИначеЕсли ТипКонтактнойИнформацииПоНаименованию(КонтактнаяИнформацияСтруктурой.Type) = Перечисления.ТипыКонтактнойИнформации.АдресЭлектроннойПочты Тогда
Позиция = СтрНайти(ДоменАдреса, "@");
Возврат ?(Позиция = 0, ДоменАдреса, Сред(ДоменАдреса, Позиция + 1));
КонецЕсли;
КонецЕсли;
ВызватьИсключение НСтр("ru = 'Невозможно определить домен, ожидается электронная почта или веб-ссылка.'");
КонецФункции
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
СтранаАдресаКонтактнойИнформации (БСП)
АдресВебСервисаКонтактнойИнформации (БСП)
ГородАдресаКонтактнойИнформации (БСП)
ПредставлениеКонтактнойИнформации (БСП)