помню уже много раз спрашивал, про это возможность раньше - но какого то работающего способа так и не нашли. может сейчас появился.
итак есть таблица с ячейками 1, 2, 3, 4, 5, 6, 7 и т.д.
1) Нужно, чтобы если пользователь вписал что то в поле 5, чтобы после этого он уже не мог редактировать именно поле 5. А все остальные, чтобы он мог редактировать как и раньше (т.е. смена пользователя здесь не подходит).
2) Вообще крутой вариант, сделать как на форумах и в соц.сетях - можно редактировать свое сообщение в течение небольшого времени (например 10 минут), а потом уже не можешь.
Как реализовать вопрос №1 ?
Ну а если найдется гений который и второй вопрос решит - с меня причитается
![](https://forum.clientbase.ru/public/style_images/master/icon_users.png)
![](https://forum.clientbase.ru/public/style_images/master/profile/default_large.png)
а в 1.9.7 - появилась возможность запрещать редактировать ячейку
Автор smart, 12 апр. 2013 19:02
Сообщений в теме: 5
#1
Отправлено 12 Апрель 2013 - 19:02
#2
Отправлено 13 Апрель 2013 - 11:19
1) Еще начиная с 1.9.3 и вплоть до 1.9.7 это все реализуется с помощью расширенных прав. Смена пользователя как раз нужна чтобы закрыть редактирование поля. Способ хоть и "через одно место", но он работает и при желании настроить можно (не знаю, что вам помешало в прошлый раз). А вот начиная с 1.9.8 это можно будет реализовать более логичным и простым способом.
2) Ставится вычисление на изменение, которое записывает время редактирования поля в другое поле. Далее добавляем условие в первую задачу на проверку 10 минут.
2) Ставится вычисление на изменение, которое записывает время редактирования поля в другое поле. Далее добавляем условие в первую задачу на проверку 10 минут.
#3
Отправлено 14 Апрель 2013 - 10:07
Помешало мне 2 условия:
1) нужно, что бы пользователь который создал строку - только он имел к ней доступ (чтобы другие пользователи не могли ее видеть)
2) что бы пользователь который создал строку, что то в поле 5, чтобы после этого он уже не мог редактировать именно поле 5. А все остальные, чтобы он мог редактировать как и раньше.
В итоге если мы меняем пользователя строки - то эти условия не выполняются.
1) нужно, что бы пользователь который создал строку - только он имел к ней доступ (чтобы другие пользователи не могли ее видеть)
2) что бы пользователь который создал строку, что то в поле 5, чтобы после этого он уже не мог редактировать именно поле 5. А все остальные, чтобы он мог редактировать как и раньше.
В итоге если мы меняем пользователя строки - то эти условия не выполняются.
#4
Отправлено 15 Апрель 2013 - 11:39
Создаете 2 поля с типом пользователь - одно с правами на поле 5, другое - с правами на остальные поля. Оба поля заполняются текущим пользователем при создании записи, в результате права на поля записи получает только тот кто ее добавил, т.е. первое условие выполнено. Для выполнения второго условия - обнуляете вычислением поле с правами на поле №5 (убираете оттуда текущего пользователя), по событию заполнения поля №5 (т.е. если оно непустое) - в результате права не него пропадают. Второе условие - выполнено.
Вроде все как вы хотите?
Вроде все как вы хотите?
#5
Отправлено 15 Апрель 2013 - 23:42
вроде все ок. кроме одного. у меня таких полей больше 50 - и это просто адский способ ![:)](http://clientbase.ru/forum/public/style_emoticons/default/smile.png)
может вы уже сделаете в правах доступа галочку - разрешить/запретить редактировать на отдельную ячейку?
![:)](http://clientbase.ru/forum/public/style_emoticons/default/smile.png)
может вы уже сделаете в правах доступа галочку - разрешить/запретить редактировать на отдельную ячейку?
#6
Отправлено 16 Апрель 2013 - 09:33
Цитата
у меня таких полей больше 50 - и это просто адский способ
Но другого способа нет. Хотя в 1.9.8 это проще реализуется (не нужно создавать 50 доп.полей с расширенными правами и писать вычисления), но все равно придется создать 50 отдельных правил для каждого поля в группе доступа.
Цитата
может вы уже сделаете в правах доступа галочку - разрешить/запретить редактировать на отдельную ячейку?
Что имеется ввиду, не понял?
Количество пользователей, читающих эту тему: 3
0 пользователей, 3 гостей, 0 анонимных