Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const from_hour = 0;
- const to_hour = 23;
- function main() {
- //получаем свой емейл
- const email = Session.getActiveUser().getEmail();
- //определяем активную таблицу
- const ss = SpreadsheetApp.getActive();
- //получаем время
- const time = new Date().getHours();
- //если время в заданных в 1 и 2 строке рамках - запускаем функцию "из просмотра в редакторы"
- if (time >= from_hour && time <= to_hour) {
- from_view_to_edit(ss);
- //если время не в заданных в 1 и 2 строке рамках - запускаем функцию "из редакторов в просмотр"
- } else {
- from_edit_to_view(ss, email);
- }
- }
- //превращаем всех пользователей с правами просмотр в редакторов
- function from_view_to_edit(ss) {
- //получаем всех пользователей с правами просмотр
- const users = ss.getViewers();
- //цикл по пользователям с правами просмотр
- for (n in users) {
- const user = users[n];
- //пытаемся поменять право пользователя с просмотра на редактирование
- try {
- ss.addEditor(user);
- } catch (err) { }
- }
- }
- //меняем права всех пользователей, которых сможем на просмотр
- function from_edit_to_view(ss, email) {
- //получаем всех пользователей с правами редактирование и убираем свой емейл;
- const users = ss.getEditors().filter(r => r != email);
- //цикл по пользователям с правами просмотр
- for (n in users) {
- const user = users[n];
- try {
- //убираем пользователя как редактора
- ss.removeEditor(user);
- //добавляем пользователя как вьювера
- ss.addViewer(user);
- } catch (err) { }
- }
- }
Add Comment
Please, Sign In to add comment