====== Denyactions Plugin ====== ---- plugin ---- description: Deny some actions from not logged in users author : Otto Vainio email : otto@valjakko.net type : action lastupdate : 2018-12-30 compatible : anteater, rincewind, angua, adora belle, binky, Hrun, Elenor Of Tsort, Frusterick Manners, Greebo !Hogfather depends : conflicts : similar : disableactionsbygroup, hidemenus tags : authentication, cms, disable-actions downloadurl: https://github.com/oiv/denyactions/archive/master.zip bugtracker: https://github.com/oiv/denyactions/issues sourcerepo: https://github.com/oiv/denyactions/ ---- ===== Installation ===== Search and install the plugin using the [[plugin:extension|Extension Manager]]. Refer to [[:Plugins]] on how to install plugins manually. :!: **To upgrade the plugin from earlier (2012) version please uninstall the plugin first** ===== Examples/Usage ===== After installing this plugin you have to configure it. Add a comma separated list of actions you don't want users with read only rights to execute. Check the [[devel:action_modes|list of valid actions]] New options to deny view of old revisions. Also option for informing user for denied acces. Silend, msg or login promp. :!: You do not want to put something like ''login'' in the list :!: === Change Log === * Added fr translation by [[user>Schplurtz]]. --- [[user>oiv|oiv]] //2012/02/26 16:13// * Added option for denying old revision view * Added option how to inform on denied acces * Fixed some compatibility issues === Known Bugs and Issues === === ToDo/Wish List === * Have you thought about generalizing this behaviour with your plugin to any group and not just users with read only right? As I understand your plugin, it goes one step further than the core code which can forbid an action for all user (except admins) through the $conf['disableactions'] setting. What could be great is a way to tell group1 doesn't get action1 and group2 doesn't get action2,action3. What do you think? --- [[user>bug|bug]] //2012/08/27 17:27// * Sorry. No plans (=time) for that. But feel free to take the code and extend it :-) --- [[user>oiv|oiv]] //2012/11/16 10:09// ===== FAQ ===== ===== Discussion ===== ==== Compatible ==== * Work for me with DokuWiki 2014-09-29d "Hrun" --- [[user>Aleksandr|Aleksandr Selivanov]] //2015-08-25 09:50// * Work for me with DokuWiki 2018-04-22a "Greebo" --- [[user>Moin!|Moin!]] //2018-12-31 12:47// * Does throw error: Undefined variable $ID in ...\lib\plugins\denyactions\action\rev.php on line 24 "Jack Jackrum" --- [[user>none|hc]] //2024-03-12 14:20// ==== Compatibility issues ==== * Does not work for me with DokuWiki 2020-07-29 "Hogfather" :-( * Results in a [[:faq:blankpage|Blank Page]] //"Fatal error: Declaration of action_plugin_denyactions::register(Doku_Event_Handler &$controller) must be compatible with dokuwiki\Extension\ActionPlugin::register(Doku_Event_Handler $controller) [...]"// * Work around: Disable denyactions plugin by adding //"$plugins['denyactions'] = 0;"// to your /conf/plugins.local.php --- [[user>fisch|fisch]] //2020-08-08 09:02// * Update: Here is the hot fix you can try to solve - it worked for me (thanks to [[user>retroman|retroman]]): * Change public function register(Doku_Event_Handler &$controller) * To public function register(Doku_Event_Handler $controller) --- [[user>fisch|fisch]] //2020-08-09 07:34// * Fix for: //PHP Warning: Undefined variable $ID in ../lib/plugins/denyactions/action/rev.php on line 24// * Change function handle_start(Doku_Event $event, $param) { global $INFO; global $lang; * To function handle_start(Doku_Event $event, $param) { global $ID; global $INFO; global $lang; --- //2024-03-26//