Документооборот с контролирующими органами / Информация об облачной подписи / Модуль формы

файл
#Область ОбработчикиСобытийФормы

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
	
	ПроверитьФункциональность();
	
	Если ЭтоСервис И ЕстьПодсистема Тогда
		ОформитьВидФормы();
	Иначе
		Отказ = Истина;
	КонецЕсли;

КонецПроцедуры

#КонецОбласти

#Область ОбработчикиСобытийЭлементовШапкиФормы

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

#КонецОбласти

#Область ОбработчикиКомандФормы

&НаКлиенте
Процедура ВлючитьОпцию(Команда)
	
	ВключитьОпциюНаСервере();
	Закрыть("ВключилиОпцию");
	
КонецПроцедуры

&НаКлиенте
Процедура ЗакрытьФорму(Команда)
	
	Закрыть();
	
КонецПроцедуры

#КонецОбласти

#Область СлужебныеПроцедурыИФункции

&НаСервере
Процедура ОформитьВидФормы()
	
	Счетчик = "1";
	Счетчик = Счетчик + ?(ЕстьОпция, "0", "1");
	Счетчик = Счетчик + ?(ЕстьРоли, "0", "1");
	
	Элементы.ГруппаФункциональность.Видимость = НЕ ЕстьОпция;
	Элементы.ГруппаРоли.Видимость = НЕ ЕстьРоли;
	Элементы.ВлючитьОпцию.Доступность = Пользователи.ЭтоПолноправныйПользователь();
	
	КлючСохраненияПоложенияОкна = "ОбщийВид" + Счетчик;
	
КонецПроцедуры

&НаСервере
Процедура ПроверитьФункциональность()
	
	ЭтоСервис = КриптографияЭДКО.РаботаВМоделиСервиса();
	ЕстьПодсистема = КриптографияЭДКО.ДоступнаПодсистемаКриптографииDSS();
	
	Если ЕстьПодсистема Тогда
		ЕстьОпция = КриптографияЭДКО.ИспользованиеОблачнойПодписиВозможно();
		
		МодульСервисКриптографииDSSКлиентСервер = ОбщегоНазначения.ОбщийМодуль("СервисКриптографииDSSКлиентСервер");
		ТипМетаданных = МодульСервисКриптографииDSSКлиентСервер.ПолучитьТипСервераОблачнойПодписи();
		ТипМетаданных = Метаданные.НайтиПоТипу(ТипМетаданных);
		ЕстьРоли = ПравоДоступа("Изменение", ТипМетаданных);
	КонецЕсли;
	
КонецПроцедуры

&НаСервере
Процедура ВключитьОпциюНаСервере()
	
	ЭлектронныйДокументооборотСКонтролирующимиОрганами.ПодключитьПодписьСервисаDSS();
	ЕстьОпция = КриптографияЭДКО.ИспользованиеОблачнойПодписиВозможно();
	Элементы.ВлючитьОпцию.Доступность = НЕ ЕстьОпция;
	
КонецПроцедуры

#КонецОбласти




Связанные материалы