V82.ОбщиеМодули.УправлениеЭлектроннойПочтой.НаписатьПисьмо C# (CSharp) Method

НаписатьПисьмо() public method

public НаписатьПисьмо ( ) : object
return object
        public object НаписатьПисьмо(/*ТекущийПользователь, СтруктураНовогоПисьма = Неопределено, ПеренестиВложенияИзОснования = Ложь, Копирование = Ложь,
					   ТекущийЭлементХТМЛ = Ложь, Дополнительно = Неопределено, ФормаВладелец = Неопределено, ПодписьПодТекстом = Ложь,
					   ОткрыватьПисьмо = Истина*/)
        {
            if(true/*СтруктураНовогоПисьма = Неопределено*/)
            {
                //СтруктураНовогоПисьма = Новый Структура;
            }
            /*// Определим учетную запись для создания письма
            */
            //СписокДоступныхЗаписей = ПроверитьУчетныеЗаписиДляОтправкиПисем(ТекущийПользователь);
            if(true/*СписокДоступныхЗаписей.Количество() = 0*/)
            {
            }
            //СтруктураНовогоПисьма.Свойство("УчетнаяЗапись", УчетнаяЗапись);
            if(true/*ЗначениеЗаполнено(УчетнаяЗапись) И СписокДоступныхЗаписей.НайтиПоЗначению(УчетнаяЗапись) = Неопределено*/)
            {
                //УчетнаяЗапись = Справочники.УчетныеЗаписиЭлектроннойПочты.ПустаяСсылка();
            }
            if(true/*НЕ ЗначениеЗаполнено(УчетнаяЗапись)*/)
            {
                //УчетнаяЗапись = УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(ТекущийПользователь, "ОсновнаяУчетнаяЗапись");
                if(true/*СписокДоступныхЗаписей.НайтиПоЗначению(УчетнаяЗапись) = Неопределено*/)
                {
                    //УчетнаяЗапись = Неопределено;
                }
            }
            if(true/*НЕ ЗначениеЗаполнено(УчетнаяЗапись)*/)
            {
                //УчетнаяЗапись = СписокДоступныхЗаписей[0].Значение;
            }
            //Письмо = Документы.ЭлектронноеПисьмо.СоздатьДокумент();
            //Письмо.Дата                             = ТекущаяДата();
            //Письмо.УчетнаяЗапись                    = УчетнаяЗапись;
            //Письмо.ОтправительИмя                   = УчетнаяЗапись.Наименование;
            //Письмо.ОтправительАдресЭлектроннойПочты = УчетнаяЗапись.АдресЭлектроннойПочты;
            //Письмо.ОтправительПредставление         = УчетнаяЗапись.Наименование + " <" + УчетнаяЗапись.АдресЭлектроннойПочты + ">";
            //СтруктураНовогоПисьма.Свойство("СписокФайловВложений", СписокФайловВложений);
            //ОписаниеТиповПредмета = Новый ОписаниеТипов("Строка");
            //СтруктураНовогоПисьма.Свойство("Основание", Основание);
            //ЕстьДокументОснование = Ложь;
            if(true/*Основание <> Неопределено*/)
            {
                if(true/*Документы.ТипВсеСсылки().СодержитТип(ТипЗнч(Основание))*/)
                {
                    //ЕстьДокументОснование = Не Основание.Пустая();
                }
            }
            if(true/*ЕстьДокументОснование*/)
            {
                //Письмо.ОснованиеПисьма = ?(Документы.ТипВсеСсылки().СодержитТип(ТипЗнч(Основание)), Основание, Основание.Ссылка);
                if(true/*ТипЗнч(Основание) = Тип("ДокументОбъект.ЭлектронноеПисьмо")*/)
                {
                    //Письмо.мОбъектОснование = Основание;
                }
                if(true/*Письмо.УчетнаяЗапись.ИспользоватьКлассификациюПисемПоПредметам*/)
                {
                    //СтруктураНовогоПисьма.Свойство("ПредметКонтакта", ПредметКонтакта);
                    if(true/*ЗначениеЗаполнено(ПредметКонтакта) И ОписаниеТиповПредмета.СодержитТип(ТипЗнч(ПредметКонтакта))*/)
                    {
                        //Письмо.ПредметКонтакта = ПредметКонтакта;
                    }
                }
            }
            if(true/*ЕстьДокументОснование
               И УчетнаяЗапись.ФорматПисьмаДляОтветовИПереадресацийБратьИзИсходного
               И (ТипЗнч(Основание) = Тип("ДокументСсылка.ЭлектронноеПисьмо") ИЛИ ТипЗнч(Основание) = Тип("ДокументОбъект.ЭлектронноеПисьмо"))*/)
            {
                //ВидТекста = Основание.ВидТекстаПисьма;
            }
            if(true/*ЕстьДокументОснование
               И УчетнаяЗапись.КодировкуПисьмаДляОтветовБратьИзИсходного
               И (ТипЗнч(Основание) = Тип("ДокументСсылка.ЭлектронноеПисьмо") ИЛИ ТипЗнч(Основание) = Тип("ДокументОбъект.ЭлектронноеПисьмо"))*/)
            {
                //КодировкаПисьма = Основание.КодировкаПисьма;
            }
            //СтруктураНовогоПисьма.Свойство("ЗаявкаКандидата", ЗаявкаКандидата);
            if(true/*ЗначениеЗаполнено(ЗаявкаКандидата)*/)
            {
                //Письмо.ЗаявкаКандидата = ЗаявкаКандидата;
            }
            if(true/*НЕ ЗначениеЗаполнено(ВидТекста)*/)
            {
                //Письмо.ВидТекстаПисьма = УчетнаяЗапись.ФорматТекстаПисьмаПоУмолчанию;
                if(true/*НЕ ЗначениеЗаполнено(Письмо.ВидТекстаПисьма)*/)
                {
                    //Письмо.ВидТекстаПисьма = Перечисления.ВидыТекстовЭлектронныхПисем.HTML;
                }
            }
            if(true/*ЗначениеЗаполнено(КодировкаПисьма)*/)
            {
                //Письмо.КодировкаПисьма = КодировкаПисьма;
            }
            if(true/*НЕ ЗначениеЗаполнено(Письмо.КодировкаПисьма)*/)
            {
                //Письмо.КодировкаПисьма = "utf-8";
            }
            if(true/*Дополнительно = "Ответ"*/)
            {
                //Письмо.Ответ         = Истина;
            }
            //СтруктураНовогоПисьма.Свойство("Тело", Тело);
            if(true/*ЗначениеЗаполнено(Тело)*/)
            {
                if(true/*Письмо.ВидТекстаПисьма = Перечисления.ВидыТекстовЭлектронныхПисем.HTML ИЛИ Письмо.ВидТекстаПисьма = Перечисления.ВидыТекстовЭлектронныхПисем.HTMLСКартинками*/)
                {
                    /*Письмо.ТекстПисьма = "<HTML><HEAD>
                                 |<META http-equiv=Content-Type content=" + """" + "text/html; charset=" + ?(ЗначениеЗаполнено(Письмо.КодировкаПисьма), Письмо.КодировкаПисьма, "utf-8") + """" + ">
                                 |<META content=" + """" + "MSHTML 6.00.2800.1400" + """" + " name=GENERATOR></HEAD>
                                 |<BODY><DIV>" + Тело + "</DIV></BODY></HTML>";*/
                }
            }
            //СтруктураНовогоПисьма.Свойство("Тема", Тема);
            if(true/*ЗначениеЗаполнено(Тема)*/)
            {
                //Письмо.Тема = Тема;
            }
            if(true/*ТипЗнч(Основание) = Тип("ДокументСсылка.ЭлектронноеПисьмо")
             ИЛИ ТипЗнч(Основание) = Тип("ДокументОбъект.ЭлектронноеПисьмо")
             ИЛИ ТипЗнч(Основание) = Тип("ДокументСсылка.Событие")*/)
            {
                if(true/*ТипЗнч(Основание) = Тип("ДокументСсылка.Событие")*/)
                {
                    if(true/*Письмо.ВидТекстаПисьма = Перечисления.ВидыТекстовЭлектронныхПисем.HTML ИЛИ Письмо.ВидТекстаПисьма = Перечисления.ВидыТекстовЭлектронныхПисем.HTMLСКартинками*/)
                    {
                        /*Тело = "<HTML><HEAD>
                              |<META http-equiv=Content-Type content=" + """" + "text/html; charset=" + Письмо.КодировкаПисьма + """" + ">
                              |<META content=" + """" + "MSHTML 6.00.2800.1400" + """" + " name=GENERATOR></HEAD>
                              |<BODY>" + Основание.СодержаниеСобытия + "</BODY></HTML>";*/
                    }
                }
                //Письмо.ТекстПисьма = Тело;
            }
            //СтруктураНовогоПисьма.Свойство("ГруппаУчетнойЗаписи", ГруппаУчетнойЗаписи);
            if(true/*ЗначениеЗаполнено(ГруппаУчетнойЗаписи) И ГруппаУчетнойЗаписи.Владелец = УчетнаяЗапись*/)
            {
                //Письмо.ГруппаУчетнойЗаписи = ГруппаУчетнойЗаписи;
            }
            //СтруктураНовогоПисьма.Свойство("Ответственный", Ответственный);
            if(true/*ЗначениеЗаполнено(Ответственный)*/)
            {
                //Письмо.Ответственный = Ответственный;
            }
            //СтруктураНовогоПисьма.Свойство("Кому", Кому);
            if(true/*ТипЗнч(Кому) = Тип("СписокЗначений")*/)
            {
            }
            //Письмо.КомуПредставление = ПолучитьПредставлениеПолучателей(Письмо.КомуТЧ);
            //СтруктураНовогоПисьма.Свойство("Копии", Копии);
            if(true/*ТипЗнч(Копии) = Тип("СписокЗначений")*/)
            {
            }
            //Письмо.КопииПредставление = ПолучитьПредставлениеПолучателей(Письмо.КопииТЧ);
            //СтруктураНовогоПисьма.Свойство("СкрытыеКопии", СкрытыеКопии);
            if(true/*ТипЗнч(СкрытыеКопии) = Тип("СписокЗначений")*/)
            {
            }
            if(true/*ФормаВладелец <> Неопределено*/)
            {
                //ФормаПисьма = Письмо.ПолучитьФорму(, ФормаВладелец);
            }
            if(true/*ТипЗнч(Основание) = Тип("ДокументСсылка.ЭлектронноеПисьмо")
             ИЛИ ТипЗнч(Основание) = Тип("ДокументОбъект.ЭлектронноеПисьмо")*/)
            {
                //Запрос = Новый Запрос;
                //Запрос.УстановитьПараметр("ТекСсылка"   , ?(ТипЗнч(Основание) = Тип("ДокументСсылка.ЭлектронноеПисьмо"), Основание, Основание.Ссылка));
                //Запрос.УстановитьПараметр("ПустаяСтрока", "");
                /*Запрос.Текст =
            "ВЫБРАТЬ РАЗРЕШЕННЫЕ
            |	ВложенияЭлектронныхПисем.ИмяФайла КАК ИмяФайла,
            |	ВложенияЭлектронныхПисем.Хранилище КАК Хранилище,
            |	ВложенияЭлектронныхПисем.Наименование КАК Наименование,
            |	ВложенияЭлектронныхПисем.ИДФайлаПочтовогоПисьма КАК ИДФайлаПочтовогоПисьма
            |ИЗ
            |	Справочник.ВложенияЭлектронныхПисем КАК ВложенияЭлектронныхПисем
            |ГДЕ
            |	ВложенияЭлектронныхПисем.Объект = &ТекСсылка
            |	И (НЕ ВложенияЭлектронныхПисем.ПометкаУдаления)
            |
            |УПОРЯДОЧИТЬ ПО
            |	Наименование";*/
                //РезультатЗапроса = Запрос.Выполнить();
                if(true/*НЕ РезультатЗапроса.Пустой()*/)
                {
                    //Выборка = РезультатЗапроса.Выбрать();
                    while(true/*Выборка.Следующий()*/)
                    {
                        if(true/*ПустаяСтрока(Выборка.ИДФайлаПочтовогоПисьма)*/)
                        {
                            if(true/*ПеренестиВложенияИзОснования*/)
                            {
                                //СтрокаТЗ = ФормаПисьма.ВложенияПисьмаТЗ.Добавить();
                                //СтрокаТЗ.ИмяФайла     = Выборка.ИмяФайла;
                                //СтрокаТЗ.Наименование = Выборка.Наименование;
                                //СтрокаТЗ.Данные       = Выборка.Хранилище;
                            }
                        }
                    }
                    //;;
                }
            }
            /*// Сформируем текст письма для ответа или переадресации
            */
            if(true/*(ТипЗнч(Основание) = Тип("ДокументСсылка.ЭлектронноеПисьмо") ИЛИ ТипЗнч(Основание) = Тип("ДокументОбъект.ЭлектронноеПисьмо"))
               И НЕ Копирование*/)
            {
                //ТекстПисьма = Письмо.ТекстПисьма;
                if(true/*Письмо.ВидТекстаПисьма = Перечисления.ВидыТекстовЭлектронныхПисем.HTML ИЛИ Письмо.ВидТекстаПисьма = Перечисления.ВидыТекстовЭлектронныхПисем.HTMLСКартинками*/)
                {
                    //НачалоТела = Найти(ТекстПисьма, "<BODY");
                    //ДатаИсходногоПисьма = Основание.Дата;
                    if(true/*(Основание.СтатусПисьма = Перечисления.СтатусыПисем.Полученное ИЛИ Основание.СтатусПисьма = Перечисления.СтатусыПисем.Отправленное) И ЗначениеЗаполнено(Основание.Дата)*/)
                    {
                        //ДатаИсходногоПисьма = Основание.Дата;
                    }
                    //СтрокаОтправителя = "Отправитель: ";
                    if(true/*НЕ ПустаяСтрока(Основание.ОтправительИмя)*/)
                    {
                        //СтрокаОтправителя = СтрокаОтправителя + СокрЛП(Основание.ОтправительИмя) + " &lt<A href=" + """" + "mailto:" + СокрЛП(СтрЗаменить(Основание.ОтправительИмя, """", "")) + "<" + СокрЛП(Основание.ОтправительАдресЭлектроннойПочты) + ">" + """" + ">" + СокрЛП(Основание.ОтправительАдресЭлектроннойПочты) + "</A>&gt";
                    }
                    //СтрокаКому = "";
                    if(true/*НЕ ПустаяСтрока(СтрокаКому)*/)
                    {
                        //СтрокаКому = "Получатели: " + СтрокаКому;
                    }
                    //СтрокаКопии = "";
                    if(true/*НЕ ПустаяСтрока(СтрокаКопии)*/)
                    {
                        //СтрокаКопии = "Копии: " + СтрокаКопии;
                    }
                    if(true/*НачалоТела > 0*/)
                    {
                        /*// Ищем конец начала тела
            */
                        //а = НачалоТела;
                        //КонецНачалаТела = 0;
                        while(true/*Истина*/)
                        {
                            if(true/*Сред(ТекстПисьма, а, 1) = ">"*/)
                            {
                                //КонецНачалаТела = а;
                            }
                        }
                        /*;

                НовыйТекстПисьма = Лев(ТекстПисьма, КонецНачалаТела) + "<DIV><BR></DIV>" +
                                  "<BLOCKQUOTE dir=ltr style=" + """" + "PADDING-LEFT: 15px; MARGIN-LEFT: 5px; BORDER-LEFT: #000000 2px solid; MARGIN-RIGHT: 0px" + """" + ">" +
                                  "<P><A href="+ """" + Строка(?(ТипЗнч(Основание) = Тип("ДокументСсылка.ЭлектронноеПисьмо"), Основание.УникальныйИдентификатор(), Основание.Ссылка.УникальныйИдентификатор())) + """" + ">--- Исходное сообщение --- </A>" +
                                  "<BR>Дата: " + Формат(ДатаИсходногоПисьма, "ДЛФ=DT") +
                                  "<BR>" + СтрокаОтправителя;*/
                        if(true/*НЕ ПустаяСтрока(СтрокаКому)*/)
                        {
                            //НовыйТекстПисьма = НовыйТекстПисьма + "<BR>" + СтрокаКому;
                        }
                        if(true/*НЕ ПустаяСтрока(СтрокаКопии)*/)
                        {
                            //НовыйТекстПисьма = НовыйТекстПисьма + "<BR>" + СтрокаКопии;
                        }
                        if(true/*НЕ ПустаяСтрока(Основание.Тема)*/)
                        {
                            //НовыйТекстПисьма = НовыйТекстПисьма + "<BR>" + "Тема: " + Основание.Тема;
                        }
                        //НовыйТекстПисьма = НовыйТекстПисьма + "</P><P><BR></P>";
                        //КонецТела = Найти(ТекстПисьма, "</BODY");
                        if(true/*КонецТела > 0*/)
                        {
                            //НовыйТекстПисьма = НовыйТекстПисьма + Сред(ТекстПисьма, (КонецНачалаТела + 1), (КонецТела - КонецНачалаТела - 1)) + "</BLOCKQUOTE>" + Сред(ТекстПисьма, КонецТела);
                            //Письмо.ТекстПисьма = НовыйТекстПисьма;
                        }
                    }
                }
            }
            /*// Проставим при необходимости подпись
            */
            if(true/*НЕ Копирование И ((УчетнаяЗапись.ДобавлятьПодписьКИсходящимПисьмам И Дополнительно = Неопределено)
             ИЛИ ((Дополнительно = "Ответ" ИЛИ Дополнительно = "Переадресация") И УчетнаяЗапись.ДобавлятьПодписьКОтветамИПересылкам = Истина))*/)
            {
                //Отказ = Ложь;
                //НовыйКом = Новый COMОбъект("HtmlFile");
                //НовыйКом.open("text/html");
                //НовыйКом.write(УчетнаяЗапись.ТекстПодписи);
                //НовыйКом.close();
                if(true/*Письмо.ВидТекстаПисьма = Перечисления.ВидыТекстовЭлектронныхПисем.HTML ИЛИ Письмо.ВидТекстаПисьма = Перечисления.ВидыТекстовЭлектронныхПисем.HTMLСКартинками*/)
                {
                    //ТекстПисьма = Письмо.ТекстПисьма;
                    if(true/*ПустаяСтрока(ТекстПисьма)*/)
                    {
                        /*ТекстПисьма = "<HTML><HEAD>
                              |<META http-equiv=Content-Type content=" + """" + "text/html; charset=" + Письмо.КодировкаПисьма + """" + ">
                              |<META content=" + """" + "MSHTML 6.00.2800.1400" + """" + " name=GENERATOR></HEAD>
                              |<BODY><DIV></DIV></BODY></HTML>";*/
                    }
                    //НачалоТела = Найти(ТекстПисьма, "<BODY");
                    //КонецНачалаТела = 0;
                    //а = НачалоТела;
                    while(true/*Истина*/)
                    {
                        if(true/*Сред(ТекстПисьма, а, 1) = ">"*/)
                        {
                            //КонецНачалаТела = а;
                        }
                    }
                    if(true/*НачалоТела = 0 ИЛИ КонецНачалаТела = 0*/)
                    {
                        //Отказ = Истина;
                    }
                    //ТегBODY = НовыйКом.all.Tags("BODY");
                    if(true/*ТегBODY.length > 0*/)
                    {
                        //ХТМЛПодписи = ТегBODY.item(0).innerHTML;
                        if(true/*ПустаяСтрока(ХТМЛПодписи)*/)
                        {
                            //Отказ = Истина;
                        }
                    }
                    if(true/*НЕ Отказ*/)
                    {
                        if(true/*ПодписьПодТекстом*/)
                        {
                            //НачалоКонцаТела = Найти(ТекстПисьма, "</BODY");
                            if(true/*НачалоКонцаТела > 0*/)
                            {
                                //НовыйТекстПисьма = Лев(ТекстПисьма, НачалоКонцаТела - 1);
                                //НовыйТекстПисьма  = НовыйТекстПисьма + "<BR>" + ХТМЛПодписи + Сред(ТекстПисьма, НачалоКонцаТела);
                                //Письмо.ТекстПисьма = НовыйТекстПисьма;
                            }
                        }
                    }
                }
            }
            if(true/*ОткрыватьПисьмо*/)
            {
                if(true/*ТипЗнч(СписокФайловВложений) = Тип("СписокЗначений") И СписокФайловВложений.Количество() > 0*/)
                {
                    //ЗначениеСтруктурыВозврата = Неопределено;
                }
                //ФормаПисьма.Открыть();
                /*// Установим удобный элемент управления в форме письма - текущим
            */
                if(true/*ТекущийЭлементХТМЛ*/)
                {
                    if(true/*Письмо.ВидТекстаПисьма = Перечисления.ВидыТекстовЭлектронныхПисем.HTML ИЛИ Письмо.ВидТекстаПисьма = Перечисления.ВидыТекстовЭлектронныхПисем.HTMLСКартинками*/)
                    {
                        //ФормаПисьма.ТекущийЭлемент = ФормаПисьма.ЭлементыФормы.ПолеHTMLДокумента;
                    }
                }
                //СтруктураВозврата = Новый Структура("Письмо, Форма, ПисьмоСсылка", Письмо, ФормаПисьма, Письмо.Ссылка);
            }
            if(true/*Не ОткрыватьПисьмо*/)
            {
                if(true/*ТипЗнч(СписокФайловВложений) = Тип("СписокЗначений") И СписокФайловВложений.Количество() > 0*/)
                {
                    //ЗначениеСтруктурыВозврата = Неопределено;
                }
                //СтруктураВозврата = Новый Структура("Письмо, Форма, ПисьмоСсылка", Письмо, ФормаПисьма, Письмо.Ссылка);
                //СтруктураВозврата = Новый Структура("Письмо, Форма, ПисьмоСсылка", Неопределено, Неопределено, Письмо.Ссылка);
            }
            return null;
        }