ОбработатьТекстHTML (БСП)

Автор: 1С
ОбщийМодуль.Взаимодействия
БСП

Обработать текст html. Обрабатывает текст HTML электронного письма.

// Обрабатывает текст HTML электронного письма.
//
// Параметры:
//  Письмо  - ДокументСсылка.ЭлектронноеПисьмоВходящее,
//            ДокументСсылка.ЭлектронноеПисьмоИсходящее - письмо для которого будет проведена оценка.
//
// Возвращаемое значение:
//   Строка   - обработанный текст электронного письма.
//
Функция ОбработатьТекстHTML(Письмо, ОтключитьВнешниеРесурсы = Истина, ЕстьВнешниеРесурсы = Неопределено) Экспорт
	
	СтруктураРеквизиты = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Письмо,"ТекстHTML,Кодировка");
	ТекстHTML = СтруктураРеквизиты.ТекстHTML;
	Кодировка = СтруктураРеквизиты.Кодировка;
	
	Если Не ПустаяСтрока(ТекстHTML) Тогда
		
		// Добавим тег HTML если он отсутствует. Такие письма могут приходить к примеру с Gmail. 
		// Необходимо для корректного отображения в элементе формы.
		Если СтрЧислоВхождений(ТекстHTML,"<html") = 0 Тогда
			ТекстHTML = "<html>" + ТекстHTML + "</html>"
		КонецЕсли;
		
		ОтфильтроватьСодержимоеТекстаHTML(ТекстHTML, Кодировка, ОтключитьВнешниеРесурсы, ЕстьВнешниеРесурсы);
		
		ТаблицаФайлов = ПолучитьВложенияПисьмаСНеПустымИД(Письмо);
		
		Если ТаблицаФайлов.Количество() Тогда
			ТекстHTML = СодержимоеТегаHTML(ТекстHTML, "html", Истина);
			ДокументHTML = ЗаменитьИдентификаторыКартинокНаПутьКФайлам(ТекстHTML, ТаблицаФайлов, Кодировка);
			
			Возврат ПолучитьТекстHTMLИзОбъектаДокументHTML(ДокументHTML);
		КонецЕсли;
	КонецЕсли;
	
	Возврат ТекстHTML;
	
КонецФункции

///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются 
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////

Рекомендации

Похожие публикации

ОбработатьТекстHTMLДляФорматированногоДокумента (БСП)

ОбработатьОчередьИзвлеченияТекста (БСП)

ОбработатьHTMLДляФорматированногоДокумента (БСП)

ТекстНеОпределено (БСП)

ТекстыМакетов (БСП)

Подчеркнуть текст в макете

ПолучитьОбычныйТекстИзHTML (БСП)

ОбработатьРезультатОбновления (БСП)

ПроверитьФайлОбработан (БСП)

Обновлятор-1С: групповое (пакетное) обновление и обслуживание всех баз за один раз