#Область ОбработчикиСобытийФормы
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
ПроверитьФункциональность();
Если ЭтоСервис И ЕстьПодсистема Тогда
ОформитьВидФормы();
Иначе
Отказ = Истина;
КонецЕсли;
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиСобытийЭлементовШапкиФормы
&НаКлиенте
Процедура ДекорацияИнформацияОбработкаНавигационнойСсылки(Элемент, НавигационнаяСсылкаФорматированнойСтроки, СтандартнаяОбработка)
СтандартнаяОбработка = Ложь;
Если НавигационнаяСсылкаФорматированнойСтроки = "Подробнее" Тогда
ФайловаяСистемаКлиент.ОткрытьНавигационнуюСсылку("https://1c.ru/news/info.jsp?id=29155");
ИначеЕсли НавигационнаяСсылкаФорматированнойСтроки = "МобильноеПриложение" Тогда
ФайловаяСистемаКлиент.ОткрытьНавигационнуюСсылку("https://www.cryptopro.ru/products/mydss");
КонецЕсли;
КонецПроцедуры
#КонецОбласти
#Область ОбработчикиКомандФормы
&НаКлиенте
Процедура ВлючитьОпцию(Команда)
ВключитьОпциюНаСервере();
Закрыть("ВключилиОпцию");
КонецПроцедуры
&НаКлиенте
Процедура ЗакрытьФорму(Команда)
Закрыть();
КонецПроцедуры
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
&НаСервере
Процедура ОформитьВидФормы()
Счетчик = "1";
Счетчик = Счетчик + ?(ЕстьОпция, "0", "1");
Счетчик = Счетчик + ?(ЕстьРоли, "0", "1");
Элементы.ГруппаФункциональность.Видимость = НЕ ЕстьОпция;
Элементы.ГруппаРоли.Видимость = НЕ ЕстьРоли;
Элементы.ВлючитьОпцию.Доступность = Пользователи.ЭтоПолноправныйПользователь();
КлючСохраненияПоложенияОкна = "ОбщийВид" + Счетчик;
КонецПроцедуры
&НаСервере
Процедура ПроверитьФункциональность()
ЭтоСервис = КриптографияЭДКО.РаботаВМоделиСервиса();
ЕстьПодсистема = КриптографияЭДКО.ДоступнаПодсистемаКриптографииDSS();
Если ЕстьПодсистема Тогда
ЕстьОпция = КриптографияЭДКО.ИспользованиеОблачнойПодписиВозможно();
МодульСервисКриптографииDSSКлиентСервер = ОбщегоНазначения.ОбщийМодуль("СервисКриптографииDSSКлиентСервер");
ТипМетаданных = МодульСервисКриптографииDSSКлиентСервер.ПолучитьТипСервераОблачнойПодписи();
ТипМетаданных = Метаданные.НайтиПоТипу(ТипМетаданных);
ЕстьРоли = ПравоДоступа("Изменение", ТипМетаданных);
КонецЕсли;
КонецПроцедуры
&НаСервере
Процедура ВключитьОпциюНаСервере()
ЭлектронныйДокументооборотСКонтролирующимиОрганами.ПодключитьПодписьСервисаDSS();
ЕстьОпция = КриптографияЭДКО.ИспользованиеОблачнойПодписиВозможно();
Элементы.ВлючитьОпцию.Доступность = НЕ ЕстьОпция;
КонецПроцедуры
#КонецОбласти