Сообщение тут не причём, просто ИМХО для юзабилити лучше, если пользователь видит только те кнопки, действия с которыми он может предпринять (в данном случае разговор о сайте идёт), а не 20 кнопок, из которых он может нажать 2 (потенциально возможный вариант), т.к. такая картина повергнет в шок.
P.S. я не спорю, что при заблокированных 2-4 кнопках из 20 представленный вариант имеет место быть.
а не проще просто не показывать элементы, действия с которыми недоступны пользователю, дабы не вводить его в заблуждение?
зачем например пользователю видеть кнопку «редактировать», если это может делать только администратор сайта, да и зачем ему вообще знать, что администратор сайта может это делать?
Управляется да, но лишь на потребительском уровне, а чтобы что-то потреблять, нужно чтобы это кто-то создавал. Именно в этом направлении и намечаются проблемы.
Я например и про Л2 могу беседу поддержать, но в то же время имею почти 5 лет стажа в IT и далеко не эникеем.
Да местами умиляет когда народ смотрит как на мегапрофи когда разговор заходит о ботах и прочем ПО и о том, что там писать то особо нечего ибо все спецификации давно в паблике — реализуй нехочу.
Но как говорилось для большинства PC = микроволновка и они лучше сэкономят на булочках/пиве и купять готовый софт, чем потратят максимум неделю на написание своего.
По пункту 4: есть способ вызова скрипта при действиях commit, release, expiry, причём он появился ещё в 3 версии, пример использования:
on commit {
set macAddress = binary-to-ascii(16,8,":", substring(hardware,1,7));
set ipAddress = binary-to-ascii(10,8,".",leased-address);
set leaseTime = binary-to-ascii (10,32,"",encode-int (lease-time,32));
set eventAction = «commit»;
P.S. я не спорю, что при заблокированных 2-4 кнопках из 20 представленный вариант имеет место быть.
зачем например пользователю видеть кнопку «редактировать», если это может делать только администратор сайта, да и зачем ему вообще знать, что администратор сайта может это делать?
Да местами умиляет когда народ смотрит как на мегапрофи когда разговор заходит о ботах и прочем ПО и о том, что там писать то особо нечего ибо все спецификации давно в паблике — реализуй нехочу.
Но как говорилось для большинства PC = микроволновка и они лучше сэкономят на булочках/пиве и купять готовый софт, чем потратят максимум неделю на написание своего.
on commit {
set macAddress = binary-to-ascii(16,8,":", substring(hardware,1,7));
set ipAddress = binary-to-ascii(10,8,".",leased-address);
set leaseTime = binary-to-ascii (10,32,"",encode-int (lease-time,32));
set eventAction = «commit»;
if ( exists host-name ){
execute("/opt/scripts/dhcpd_evt.sh", eventAction, macAddress, ipAddress, leaseTime, concat("\"", option host-name, "\""));
}
else {
execute("/opt/scripts/dhcpd_evt.sh", eventAction, macAddress, ipAddress, leaseTime);
}
unset macAddress;
unset ipAddress;
unset eventAction;
}
В итоге вызывается:
/opt/scripts/dhcpd_evt.sh commit 0:1c:bf:ac:6:4b 192.168.0.16 86400 «dsvaio7»
в котором обрабатываем действие
Остальные по аналогии и работают как для прописанных в конфиге, так и для динамических.
У меня таким способом через внешний скрипт реализовано обновление DNS записей в базе PowerDNS.