diff --git a/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/Forms/ПомощникНастройкиУчетнойЗаписи/Module.bsl b/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/Forms/ПомощникНастройкиУчетнойЗаписи/Module.bsl
index da8c5a920..8241e6d86 100644
--- a/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/Forms/ПомощникНастройкиУчетнойЗаписи/Module.bsl
+++ b/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/Forms/ПомощникНастройкиУчетнойЗаписи/Module.bsl
@@ -213,13 +213,13 @@
Процедура СообщенияОбОшибкахОткрытие(Элемент, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
- Элементы.Страницы.ТекущаяСтраница = Элементы.ПриПроверкеОбнаруженыОшибки;
+ Элементы.Страницы.ТекущаяСтраница = Элементы.ТехническиеПодробностиОшибки;
НастроитьЭлементыТекущейСтраницы();
КонецПроцедуры
&НаКлиенте
-Процедура ТекстПриПроверкеОбнаруженыОшибкиОткрытие(Элемент, СтандартнаяОбработка)
+Процедура ТекстТехническиеПодробностиОшибкиОткрытие(Элемент, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
Элементы.Страницы.ТекущаяСтраница = Элементы.НастройкаУчетнойЗаписи;
@@ -252,8 +252,11 @@
ПредыдущаяСтраница = Неопределено;
Если ТекущаяСтраница = Элементы.НастройкаСервераИсходящейПочты Тогда
ПредыдущаяСтраница = Элементы.НастройкаУчетнойЗаписи;
- ИначеЕсли ТекущаяСтраница = Элементы.ПроверкаНастроекУчетнойЗаписи Или ТекущаяСтраница = Элементы.ПриПроверкеОбнаруженыОшибки Тогда
+ ИначеЕсли ТекущаяСтраница = Элементы.ПроверкаНастроекУчетнойЗаписи Или ТекущаяСтраница = Элементы.ТехническиеПодробностиОшибки Тогда
ПредыдущаяСтраница = Элементы.НастройкаУчетнойЗаписи;
+ ИначеЕсли ТекущаяСтраница = Элементы.ПриПроверкеОбнаруженыОшибки Тогда
+ ПредыдущаяСтраница = Элементы.НастройкиАвторизацииПриложения;
+ ПроверкаЗавершиласьСОшибками = Ложь;
КонецЕсли;
Если ПредыдущаяСтраница <> Неопределено Тогда
@@ -305,7 +308,7 @@
ТекущаяСтраница = Элементы.Страницы.ТекущаяСтраница;
СледующаяСтраница = Неопределено;
- Если ТекущаяСтраница = Элементы.НастройкаУчетнойЗаписи Или ТекущаяСтраница = Элементы.ПриПроверкеОбнаруженыОшибки Тогда
+ Если ТекущаяСтраница = Элементы.НастройкаУчетнойЗаписи Или ТекущаяСтраница = Элементы.ТехническиеПодробностиОшибки Тогда
ПроверитьЗаполнениеНаСтраницеНастройкаУчетнойЗаписи(Отказ);
Если Не Отказ И Не НастройкиЗаполнены Тогда
ЗаполнитьНастройкиУчетнойЗаписи();
@@ -380,7 +383,7 @@
КонецЕсли;
Если ПроверкаЗавершиласьСОшибками Тогда
- СледующаяСтраница = Элементы.НастройкаУчетнойЗаписи;
+ СледующаяСтраница = Элементы.ПриПроверкеОбнаруженыОшибки;
Иначе
Если СпособНастройки = "Автоматически" Тогда
СледующаяСтраница = Элементы.ПроверкаНастроекУчетнойЗаписи;
@@ -583,7 +586,7 @@
КонецЕсли;
Иначе
Если ТекущаяСтраница = Элементы.НастройкаУчетнойЗаписи
- И ПроверкаЗавершиласьСОшибками Или ТекущаяСтраница = Элементы.ПриПроверкеОбнаруженыОшибки Тогда
+ И ПроверкаЗавершиласьСОшибками Или ТекущаяСтраница = Элементы.ТехническиеПодробностиОшибки Тогда
ЗаголовокКнопкиДалее = НСтр("ru = 'Повторить'");
ИначеЕсли ТекущаяСтраница = Элементы.НастройкаУчетнойЗаписи
И СпособНастройки = "Автоматически" Тогда
@@ -603,7 +606,8 @@
Элементы.КнопкаДалее.КнопкаПоУмолчанию =ТекущаяСтраница <> Элементы.ПроверкаНастроекУчетнойЗаписи;
Элементы.КнопкаДалее.Доступность = Не (ТекущаяСтраница = Элементы.ПроверкаНастроекУчетнойЗаписи И ПроверкаПропущена);
Элементы.КнопкаДалее.Видимость = Не (ТекущаяСтраница = Элементы.ПроверкаНастроекУчетнойЗаписи И СпособНастройки = "Вручную")
- И Не (ТекущаяСтраница = Элементы.Авторизация И Не ЭтоВебКлиент());
+ И Не (ТекущаяСтраница = Элементы.Авторизация И Не ЭтоВебКлиент())
+ И Не ТекущаяСтраница = Элементы.ПриПроверкеОбнаруженыОшибки;
// КнопкаНазад
Элементы.КнопкаНазад.Видимость = ТекущаяСтраница <> Элементы.НастройкаУчетнойЗаписи
@@ -1111,15 +1115,23 @@
Если СтрНачинаетсяС(НРег(Элемент.Документ.URL), НРег(АдресПеренаправления)) Тогда
ПриПолученииОтветаПочтовогоСервера(Элемент.Документ.URL, НастройкиАвторизации.АдресПолученияКлюча);
ПерейтиНаСледующуюСтраницу();
+ ИначеЕсли СтрНачинаетсяС(ВебСтраница, "{") И СтрЗаканчиваетсяНа(ВебСтраница, "}") Тогда
+ ПриПолученииОтветаПочтовогоСервера(ВебСтраница, НастройкиАвторизации.АдресПолученияКлюча);
+ ПерейтиНаСледующуюСтраницу();
КонецЕсли;
#КонецЕсли
КонецПроцедуры
&НаСервере
-Процедура ПриПолученииОтветаПочтовогоСервера(СтрокаURI, АдресПолученияКлюча)
+Процедура ПриПолученииОтветаПочтовогоСервера(СтрокаПараметров, АдресПолученияКлюча)
+
+ Если СтрНачинаетсяС(СтрокаПараметров, "{") Тогда
+ Ответ = РаботаСПочтовымиСообщениямиСлужебный.JSONВЗначение(СтрокаПараметров);
+ Иначе
+ Ответ = ПараметрыИзСтрокиURI(СтрокаПараметров);
+ КонецЕсли;
- Ответ = ПараметрыИзСтрокиURI(СтрокаURI);
КодАвторизации = Ответ["code"];
КодОшибки = Ответ["error"];
ТекстОшибки = Ответ["error_description"];
@@ -1128,21 +1140,18 @@
ТекстОшибки = РаскодироватьСтроку(ТекстОшибки, СпособКодированияСтроки.КодировкаURL);
КонецЕсли;
- Если ИдентификаторЗапроса <> Ответ["state"] Тогда
- СообщенияОбОшибках = НСтр("ru = 'Не удалось авторизоваться на сервере %1. Неверный идентификатор ответа.'");
- ПроверкаЗавершиласьСОшибками = Истина;
- Возврат;
- КонецЕсли;
-
Если ЗначениеЗаполнено(КодОшибки) Тогда
СообщенияОбОшибках = ОписаниеОшибкиАвторизацииПочтовогоСервера(КодОшибки, ТекстОшибки);
ПроверкаЗавершиласьСОшибками = Истина;
- Возврат;
+ ИначеЕсли ИдентификаторЗапроса <> Ответ["state"] Тогда
+ СообщенияОбОшибках = НСтр("ru = 'Не удалось авторизоваться на почтовом сервере. Неверный идентификатор ответа.'");
+ ПроверкаЗавершиласьСОшибками = Истина;
+ ИначеЕсли Не ПолучитьКлючиДоступаКПочтовомуСерверу(КодАвторизации, АдресПолученияКлюча) Тогда
+ ПроверкаЗавершиласьСОшибками = Истина;
КонецЕсли;
- Если Не ПолучитьКлючиДоступаКПочтовомуСерверу(КодАвторизации, АдресПолученияКлюча) Тогда
- ПроверкаЗавершиласьСОшибками = Истина;
- Возврат;
+ Если ПроверкаЗавершиласьСОшибками Тогда
+ ЗаполнитьПояснения();
КонецЕсли;
КонецПроцедуры
@@ -1516,4 +1525,17 @@
КонецПроцедуры
+&НаСервере
+Процедура ЗаполнитьПояснения()
+
+ ПоясненияПоОшибке = РаботаСПочтовымиСообщениямиСлужебный.ПоясненияПоОшибке(СообщенияОбОшибках, , Истина);
+
+ ВозможныеПричины = РаботаСПочтовымиСообщениямиСлужебный.ФорматированныйСписок(ПоясненияПоОшибке.ВозможныеПричины);
+ СпособыУстранения = РаботаСПочтовымиСообщениямиСлужебный.ФорматированныйСписок(ПоясненияПоОшибке.СпособыУстранения);
+
+ Элементы.ДекорацияВозможныеПричины.Заголовок = ВозможныеПричины;
+ Элементы.ДекорацияСпособыУстранения.Заголовок = СпособыУстранения;
+
+КонецПроцедуры
+
#КонецОбласти
diff --git a/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/Help/ru.html b/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/Help/ru.html
index a6c91a0f0..3ac9e4124 100644
--- a/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/Help/ru.html
+++ b/SSL/src/Catalogs/УчетныеЗаписиЭлектроннойПочты/Help/ru.html
@@ -3,27 +3,43 @@
Список можно открыть соответствующей командой в разделе Администрирование - Органайзер.
В списке выводится:
- Наименование учетной записи;
-
- Имя пользователя - указывается имя отправителя писем, оно может отличаться от имени пользователя в программе;
-
- Адрес электронной почты учетной записи в формате name@server.net.
Для учетных записей, получение и отправка с которых выполняется автоматически без участия пользователя, должен быть обязательно введен пароль. Также для корректной работы программы обязательно должна быть настроена системная учетная запись электронной почты.
+
+Имя пользователя - указывается имя отправителя писем, оно может отличаться от имени пользователя в программе;
+
+Адрес электронной почты учетной записи в формате name@server.net. Для учетных записей, получение и отправка с которых выполняется автоматически без участия пользователя, должен быть обязательно введен пароль. Также для корректной работы программы обязательно должна быть настроена системная учетная запись электронной почты.
Системная учетная запись электронной почты
- Программа поставляется с предопределенной учетной записью - системной учетной записью электронной почты. Она используется по умолчанию для рассылки различных уведомлений из программы, например, для автоматической отправки сообщений администратору по завершению обновления программы. Перед использованием этих возможностей необходимо настроить системную учетную запись.
-
- Настройка системной учетной записи производится по соответствующей команде в разделе Администрирование - Органайзер. Также можно
Изменить ее в списке.
Ввод учетной записи электронной почты
+
+Настройка системной учетной записи производится по соответствующей команде в разделе Администрирование - Органайзер. Также можно
Изменить ее в списке.Ввод учетной записи электронной почты
- При попытке сохранения программа проверяет введенные учетные записи электронной почты (пытается отослать пробное сообщение). Учетные записи, не прошедшие проверку, не сохраняются.
-
- Нажмите Создать, введите необходимые поля:
+
+- Нажмите Создать, введите необходимые поля:
Настройка учетной записи электронной почты
+
+С помощью переключателя выберите способ авторизации:
+- Ввести пароль, в этом случае укажите в поле справа Пароль учетной записи;
+
+- Авторизоваться на почтовом сервисе, в этом случае программа выводит инструкцию авторизации, которая зависит от почтового сервиса. Следуйте инструкции программы.
+- На почтовом сервисе потребуется указать данные о приложении, например, callback URL, который программа формирует автоматически.
+- Воспользовавшись указаниями почтового сервиса, зарегистрируйте приложение, получите данные для авторизации и заполните нужные поля, например:
+- ID приложения;
+- пароль приложения (client secret).
Установите с помощью флажков, как Почта будет использоваться:
+- Для отправки писем;
+
+- Для получения писем;
+Укажите с помощью переключателя, кем будет использоваться почта:
+- Всеми пользователями (общая почта)
+- Только мной.
+Укажите Имя отправителя (Ваше имя или название организации);
+
+Нажмите Создать. Программа предпримет попытку автоматической настройки и проверки учетной записи. Следуйте указаниям программы. При этом если при автоматической настройке произошел сбой, можно попытаться настроить параметры вручную.
+Если автоматически настроить почту не удалось, нажмите Настроить вручную.
+Настройка учетной записи электронной почты
- Нажмите
Изменить, с помощью программы произведите необходимые настройки.
Проверка учетной записи электронной почты
-
Выделите учетную запись в списке, нажмите Еще - Проверить учетную запись для проверки введенных параметров учетной записи. При этом отправляется стандартное почтовое отправление и проверяется возможность соединения с сервером входящих почтовых сообщений (если учетная запись используется для получения почты).
- -
+
+-
Если в учетной записи не прописан пароль, программа его запрашивает. При необходимости введите пароль.
См. также: