Michael Posted June 1, 2009 Share Posted June 1, 2009 Currently, in order to edit a hook to change something like which template it hooks into, you have to turn on IN_DEV mode. This is bad because it puts the whole site into developers mode. We should be able to edit a hook's properties without having to enable IN_DEV. Link to comment Share on other sites More sharing options...
bfarber Posted June 1, 2009 Share Posted June 1, 2009 The problem is, we wanted to keep the development of hooks outside of normal view of users. Hooks are already a complicated enough thing to present to a typical admin who knows nothing about how it all works....we didn't want to present any options that would confuse them further (and you know some people can't resist clicking a link even if they don't need to). I'd prefer to keep any editing of hooks in developer mode myself. Not for the developer's sake, but for the end user's sake. Link to comment Share on other sites More sharing options...
Michael Posted June 1, 2009 Author Share Posted June 1, 2009 Maybe you should show the options to Root Admins only then? I just can't help thinking that the current setup is not ideal. On at least two occasions already here on this site, I've had to tell someone that they had to enable IN_DEV just to change the positioning of a hook. Whenever they would do that, all users on the board could either get huge ugly errors or get info revealed to them that they shouldn't have. It would be one thing if a board admin could have a development board where they did have IN_DEV turned on so they could experiment with this, but even with that setup, once they figure out what needs changed there is still no way other than enabling IN_DEV on a production board to alter this (unless you want to edit serialized values directly in the database). Link to comment Share on other sites More sharing options...
Martin A. Posted June 1, 2009 Share Posted June 1, 2009 What about a new constant? "HOOK_EDIT_MODE", or something. As with any other constants, place that in initdata.php, and setting that to 1, would enable those edit sections. Which would allow any administrators to edit the hooks, without facing any security risks by putting the whole board IN_DEV. Link to comment Share on other sites More sharing options...
AndyF Posted June 1, 2009 Share Posted June 1, 2009 [quote name='m4rtin' date='01 June 2009 - 03:26 PM' timestamp='1243866418' post='1806739'] What about a new constant? "HOOK_EDIT_MODE", or something. As with any other constants, place that in initdata.php, and setting that to 1, would enable those edit sections. Which would allow any administrators to edit the hooks, without facing any security risks by putting the whole board IN_DEV. I was just about to suggest something similar too :) Link to comment Share on other sites More sharing options...
RobertMidd Posted June 1, 2009 Share Posted June 1, 2009 Just set IN_DEV at the top of the admin/index.php that is what I did. Link to comment Share on other sites More sharing options...
Luke Posted June 1, 2009 Share Posted June 1, 2009 I would suggest IN_DEV be in each wrapper so they can be toggled separately. Link to comment Share on other sites More sharing options...
bfarber Posted June 1, 2009 Share Posted June 1, 2009 If it's just positioning of the hooks, THAT should be editable without enabling developer mode if you ask me. That is, for positioning of a hook relative to a separate hook. We can look into a separate constant if that would be really helpful. As I said though, the main goal is to keep this as simple as possible for the (majority) of admins that simply want to install a hook - they won't understand what all the stuff is for when editing it, and giving them the options isn't necessary. KISS rule and all. Link to comment Share on other sites More sharing options...
teraßyte Posted June 1, 2009 Share Posted June 1, 2009 The best example is the shoutbox, already some peoples asked how to change the hook access point for the global shoutbox.. without IN_DEV this is not possible : Link to comment Share on other sites More sharing options...
bfarber Posted June 1, 2009 Share Posted June 1, 2009 Hmm, this is true. Any good thoughts then on how to present an option like that without making this overly difficult for the average admin? Link to comment Share on other sites More sharing options...
teraßyte Posted June 1, 2009 Share Posted June 1, 2009 Well, the best thing (in my opinion) is to show only the dropdowns to change if/foreach cycle and the other dropdown to selected the hook point of course when IN_DEV is not enabled. When IN_DEV is enabled instead show everything as usual. Link to comment Share on other sites More sharing options...
Michael Posted June 1, 2009 Author Share Posted June 1, 2009 [quote name='teraßyte' date='01 June 2009 - 05:05 PM' timestamp='1243890353' post='1806873'] Well, the best thing (in my opinion) is to show only the dropdowns to change if/foreach cycle and the other dropdown to selected the hook point of course when IN_DEV is not enabled. When IN_DEV is enabled instead show everything as usual. Agreed. :) Link to comment Share on other sites More sharing options...
teraßyte Posted July 11, 2009 Share Posted July 11, 2009 I think It is already too late to include this in 3.0.1 but do something about that problem in IPB 3.0.2 please :( Link to comment Share on other sites More sharing options...
bfarber Posted July 13, 2009 Share Posted July 13, 2009 Can't promise anything for the 3.0.x point releases. We would want to do this as user-friendly as possible, which is a challenging task for this sort of thing. ;) We'll see. Link to comment Share on other sites More sharing options...
teraßyte Posted July 13, 2009 Share Posted July 13, 2009 For the shoutbox I need to release 5 different hooks just because the hook access point can't be edited, and is a pain to maintain 5 hooks (I might do a fix in an hook and forget to apply it also to the other one and such lol) :( Link to comment Share on other sites More sharing options...
bfarber Posted July 13, 2009 Share Posted July 13, 2009 Oh, I understand and I'm not saying we don't want to do it. I'm just saying we'd need to do it *right* and it's hard to push something like that into a minor point release. Link to comment Share on other sites More sharing options...
teraßyte Posted July 13, 2009 Share Posted July 13, 2009 Yeah, I never said you don't want to do it but put this feature at the top of the "TODO" lists as it is really needed :P Link to comment Share on other sites More sharing options...
Martin A. Posted July 14, 2009 Share Posted July 14, 2009 [quote name='teraßyte' date='13 July 2009 - 04:40 PM' timestamp='1247496006' post='1825468'] For the shoutbox I need to release 5 different hooks just because the hook access point can't be edited, and is a pain to maintain 5 hooks (I might do a fix in an hook and forget to apply it also to the other one and such lol) :( Can't you make a new setting (probably separated from the core settings system) where you make a lit of pre-defined locations, and update the hook data upon save, and recache the templates? Link to comment Share on other sites More sharing options...
teraßyte Posted July 15, 2009 Share Posted July 15, 2009 This would require a lot more work as I would need to code a new area in ACP only to handle that, I just prefer to copy/paste the hook files and change the access point as it is much more faster :lol: I'll definitely forget to update them sometimes but I'll live with this issue :P Link to comment Share on other sites More sharing options...
bfarber Posted July 15, 2009 Share Posted July 15, 2009 I think it would be cool if a hook could be assigned to more than one access point as well (at least a template hook) Link to comment Share on other sites More sharing options...
teraßyte Posted July 15, 2009 Share Posted July 15, 2009 That would be great too :D Link to comment Share on other sites More sharing options...
Martin A. Posted July 15, 2009 Share Posted July 15, 2009 [quote name='teraßyte' date='15 July 2009 - 11:40 AM' timestamp='1247650807' post='1826503'] This would require a lot more work as I would need to code a new area in ACP only to handle that, I just prefer to copy/paste the hook files and change the access point as it is much more faster :lol: I'll definitely forget to update them sometimes but I'll live with this issue :P It's not so difficult, really. I did something similar in an application. If I disabled the whole app, it also disabled the hook. You should be able to do the same, only you have to recache the templates when you're done. And it also a bit friendlier for the user, than having to enable/disable hooks. [quote name='bfarber' date='15 July 2009 - 04:34 PM' timestamp='1247668461' post='1826587'] I think it would be cool if a hook could be assigned to more than one access point as well (at least a template hook) Didn't I suggest that in the early beta stages? EDIT: No I didn't. I reported/requested that several hooks could share the same source file. http://forums.invisionpower.com/tracker/issue-13213-several-hook-points-cant-share-the-same-file/ Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.