From 8180238e8be1c604d81674f38e5dbe6a4d93ab3c Mon Sep 17 00:00:00 2001 From: Anton Date: Sun, 26 May 2024 12:09:34 +0300 Subject: [PATCH] =?UTF-8?q?=D0=9C=D0=B5=D0=BB=D0=BA=D0=B8=D0=B5=20=D0=BF?= =?UTF-8?q?=D1=80=D0=B0=D0=B2=D0=BA=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/os/cli_parse.os | 4 +- OPI/src/CommonModules/OPI_Dropbox/Module.bsl | 52 ++++++++++++++++++++ 2 files changed, 54 insertions(+), 2 deletions(-) diff --git a/.github/workflows/os/cli_parse.os b/.github/workflows/os/cli_parse.os index 862ec17ae..9c3dc7dc3 100644 --- a/.github/workflows/os/cli_parse.os +++ b/.github/workflows/os/cli_parse.os @@ -12,8 +12,8 @@ Процедура ПриСозданииОбъекта() МодульСоставаОПИ = Новый ТекстовыйДокумент(); - ФайлСоставаОПИ = "./cli/data/Modules/СоставБиблиотеки.os"; - КаталогСписковСотава = "./cli/data/Modules/internal/Classes/"; + ФайлСоставаОПИ = "./cli/data/Classes/СоставБиблиотеки.os"; + КаталогСписковСотава = "./cli/data/Classes/internal/Classes/"; ЗаписатьНачалоФайла(); ЗаписатьФункциюОпределенияВерсии(); diff --git a/OPI/src/CommonModules/OPI_Dropbox/Module.bsl b/OPI/src/CommonModules/OPI_Dropbox/Module.bsl index a963a9b91..41c9654e0 100644 --- a/OPI/src/CommonModules/OPI_Dropbox/Module.bsl +++ b/OPI/src/CommonModules/OPI_Dropbox/Module.bsl @@ -568,6 +568,58 @@ #КонецОбласти +#Область НастройкиСовместногоДоступа + +// Добавить пользователя к файлу +// Определяет доступ к файлу для стороннего пользователя +// +// Параметры: +// Токен - Строка - Токен - token +// IDФайла - Строка - ID файла, к которому предоставляется доступ - fileid +// АдресаПочты - Строка, Массив Из Строка - Список адресов почты добавляемых пользователей - emails +// ТолькоПросмотр - Булево - Запрещает редактирование файла для стороннего пользователя - readonly +// +// Возвращаемое значение: +// HTTPОтвет - Добавить пользователя к файлу +Функция ДобавитьПользователяКФайлу(Знач Токен, Знач IDФайла, Знач АдресаПочты, Знач ТолькоПросмотр = Истина) Экспорт + + OPI_ПреобразованиеТипов.ПолучитьМассив(АдресаПочты); + OPI_ПреобразованиеТипов.ПолучитьСтроку(IDФайла); + OPI_ПреобразованиеТипов.ПолучитьСтроку(ТолькоПросмотр); + + URL = "https://api.dropboxapi.com/2/sharing/add_file_member"; + + МассивПользователей = Новый Массив; + + Для Каждого Адрес Из АдресаПочты Цикл + + ДанныеПользователя = Новый Соответствие; + OPI_Инструменты.ДобавитьПоле(".tag" , "email", "Строка", ДанныеПользователя); + OPI_Инструменты.ДобавитьПоле("email", Адрес , "Строка", ДанныеПользователя); + + МассивПользователей.Добавить(ДанныеПользователя); + + КонецЦикла; + + + Параметры = Новый Структура; + OPI_Инструменты.ДобавитьПоле("file" , "id:" + IDФайла , "Строка", Параметры); + OPI_Инструменты.ДобавитьПоле("members", МассивПользователей , "Массив", Параметры); + + Режим = ?(ТолькоПросмотр, "viewer", "editor"); + + OPI_Инструменты.ДобавитьПоле("access_level", Режим , "Строка", Параметры); + + Заголовки = ПолучитьЗаголовкиЗапроса(Токен); + + Ответ = OPI_Инструменты.Post(URL, Параметры, Заголовки); + + Возврат Ответ; + +КонецФункции + +#КонецОбласти + #КонецОбласти #Область СлужебныеПроцедурыИФункции