bernhard Posted July 12, 2022 Share Posted July 12, 2022 Just created a PR in case you don't get notifications ? https://github.com/adrianbj/TracyDebugger/pull/77 3 1 Link to comment Share on other sites More sharing options...
bernhard Posted August 30, 2022 Share Posted August 30, 2022 @adrian what do you think of a "Login as Superuser" button for local development (obviously)? I'm doing lots of db restores (using RockShell) and after the restore I'm always logged out and need to log in. The problem with the log in is that I have to move away from the current page, then navigate back to the site I was watching... Ideally I could just click "Login as Superuser" while viewing the page as guest and I'm logged in and redirected to the same page I was before. Another small thing: Would it be possible to add the doubleclick-submit feature to the user switcher as well (as you did it with the language switcher)? PS: Just realised that when clicking "login" in the tracy debug bar it already redirects me to the correct frontend page after login, thx for that!! Link to comment Share on other sites More sharing options...
adrian Posted August 31, 2022 Author Share Posted August 31, 2022 Hi @bernhard - I don't know about a "Login as superuser" because you may have more than one superuser so how would you know which one to log in as. One possibility would be to allow the user switcher panel to always show for local dev and you could select the user from there, but I need to think about this a bit more because it would allow logging in as a superuser without having initially started a user switching setting as a superuser. I know it's local dev only and all, but it still makes me nervous. I have modified the user switching to work like the language switching - not double-click btw, just a single click is all that is needed. I'll commit this later. On 8/30/2022 at 6:28 AM, bernhard said: PS: Just realised that when clicking "login" in the tracy debug bar it already redirects me to the correct frontend page after login, thx for that!! Not really sure what you mean here - which login button are you talking about? Link to comment Share on other sites More sharing options...
bernhard Posted August 31, 2022 Share Posted August 31, 2022 16 minutes ago, adrian said: Hi @bernhard - I don't know about a "Login as superuser" because you may have more than one superuser so how would you know which one to log in as. One possibility would be to allow the user switcher panel to always show for local dev and you could select the user from there, but I need to think about this a bit more because it would allow logging in as a superuser without having initially started a user switching setting as a superuser. I know it's local dev only and all, but it still makes me nervous. I'd have used the one that is in $config->superUserPageID which is 41 usually... Or it could simply do a $users->get() to return the first superuser it can find? I don't think that this is anything worse than what we already have... I just doublechecked and my tracy bar is shown for guest users on local dev and I can use the console for whatever I want. So a superuser-login-button would not hurt imho? ? Thx for the tweaks on the user switcher!! 21 minutes ago, adrian said: Not really sure what you mean here - which login button are you talking about? I was talking about the login-link in the bar: Looks like you have already setup a redirect feature here? If I visit page /foo on the frontend, then click "login" in the tracy bar I come to the login screen and after login I'm back at /foo When using the regular login the process is different: Visit /foo on the frontend --> go to /processwire --> login --> see the pw page tree (or dashboard) --> go back to /foo (manually) Link to comment Share on other sites More sharing options...
adrian Posted August 31, 2022 Author Share Posted August 31, 2022 Thanks - I wasn't thinking about that Login option - yes, I think it is handy - much nicer that the core login dance :) Yeah, I suppose we could go with 41 or the first available superuser, but if I implement this, I think it would be better to use the user switcher and have the option to choose. Regarding having access to everything on the bar already - that's not quite true - I do also prevent access to Adminer in this situation. Whether I really have good justification for that or not is another question, but I do want to have a more thorough think through this moving forward to make sure I am not overlooking anything of concern. 1 Link to comment Share on other sites More sharing options...
bernhard Posted August 31, 2022 Share Posted August 31, 2022 30 minutes ago, adrian said: but if I implement this, I think it would be better to use the user switcher and have the option to choose. Ok, just wanted to mention that the user switcher is not available on my end when I'm a guest ? 31 minutes ago, adrian said: Regarding having access to everything on the bar already - that's not quite true - I do also prevent access to Adminer in this situation. Whether I really have good justification for that or not is another question, but I do want to have a more thorough think through this moving forward to make sure I am not overlooking anything of concern. Ok thanks, of course that's very sensitive topics and every caution is good! Don't let yourself be pushed in a direction you don't want ? But if it's easy and secure to add I'd be thankful ? Link to comment Share on other sites More sharing options...
Robin S Posted November 14, 2022 Share Posted November 14, 2022 A feature idea maybe for a rainy day... Sometimes I find I want to save a record of what is in the Dumps panel. I usually just copy/paste to a text document but it would be cool if there was a download button that saved the contents of the Dumps panel to an HTML file. That would be nicer because of the better formatting and expand/collapse features. Perhaps not so simple to do because I guess it would be best to embed any needed CSS and JS and the HTML file creation and download would need to happen via JS. So maybe not worth the trouble if it's a pretty niche need, but just thought I'd jot the idea down while it was fresh. Link to comment Share on other sites More sharing options...
adrian Posted November 19, 2022 Author Share Posted November 19, 2022 Hi @Robin S - sounds interesting. A couple of possible options: 1) Have you ever opened up any of the exception-*-.html files that get stored in /assets/logs/tracy ? These include the required JS for making the toggling etc work, so I guess I could take a similar approach for dumps. 2) What about a Dumps Archive panel - something like the Dumps Recorder, but it would be populated with only the entries you wanted and you could also delete items when you no longer need them. I think I could do this by having an "archive" icon shown next to each item in the Dumps panel - click that and it would be copied to the Archive Panel, and then in the Archive Panel there'd be a delete icon for each item. Would you prefer the ability to save individual items, or just the entire current contents of the Dumps panel? I think I like #2 better because it keeps access to everything within Tracy. Any thoughts? 2 Link to comment Share on other sites More sharing options...
Robin S Posted November 20, 2022 Share Posted November 20, 2022 On 11/20/2022 at 4:58 AM, adrian said: 2) What about a Dumps Archive panel - something like the Dumps Recorder, but it would be populated with only the entries you wanted and you could also delete items when you no longer need them. I think I could do this by having an "archive" icon shown next to each item in the Dumps panel - click that and it would be copied to the Archive Panel, and then in the Archive Panel there'd be a delete icon for each item. Would you prefer the ability to save individual items, or just the entire current contents of the Dumps panel? Thanks Adrian, that's a really good idea! I think a single save button for the whole panel would be good because it might be useful having all the dumps that occurred together be connected in that way. Although having individual save buttons would be fine too - I think I'll find it very useful in either case. Edit: could the archived dumps be given a label when saving them? Like maybe a text input that gets populated with the current datetime by default but can be added to or overwritten before clicking the archive button? Link to comment Share on other sites More sharing options...
bernhard Posted February 11, 2023 Share Posted February 11, 2023 Hey @adrian could the request info panel please also show the page's pageClass? Or is that information somewhere else? See here, where it's a quite essential information that the current page is of type "\RockCRM\Invoice", which is obvious in the dump but not in the request info panel: Thx in advance! 2 Link to comment Share on other sites More sharing options...
adrian Posted February 11, 2023 Author Share Posted February 11, 2023 Hi @bernhard - sure. Any preference? 1 1 Link to comment Share on other sites More sharing options...
bernhard Posted February 11, 2023 Share Posted February 11, 2023 Yes: This is the syntax that works for RockMigrations ? Link to comment Share on other sites More sharing options...
adrian Posted February 11, 2023 Author Share Posted February 11, 2023 But pageClass doesn't work on pages. I see you're calling it on $template though. So I think we want to populate "class" on both the page and template info sections which required different approaches. Please try the attached and let me if you're getting what you need in the Page Info and Template Info sections. RequestInfoPanel.php 2 Link to comment Share on other sites More sharing options...
bernhard Posted February 11, 2023 Share Posted February 11, 2023 Great ? 1 Link to comment Share on other sites More sharing options...
adrian Posted February 11, 2023 Author Share Posted February 11, 2023 What about in the Template Info section? Both when viewing the page and also when viewing the template? Link to comment Share on other sites More sharing options...
bernhard Posted February 11, 2023 Share Posted February 11, 2023 Ah, didn't look there! Nice to have for sure! Link to comment Share on other sites More sharing options...
adrian Posted February 12, 2023 Author Share Posted February 12, 2023 New version pushed with this. 2 1 Link to comment Share on other sites More sharing options...
bernhard Posted March 2, 2023 Share Posted March 2, 2023 Hey @adrian I'm working on a PW site in a team and we have the problem that we need different "localRootPath" settings for different users. Is that already possible? The problem is not for local development - there we can have different config.php files. The problem is on the remote server (staging and production system). It would be nice to be able to click on tracy dumps there, but obviously there we only have one config for multiple developers. I tried this but it seems to have no affect. Maybe it's too late? But I can't set different paths in config.php as we don't know the user at that point: if($user->name == 'bernhard') { $tracy = $modules->get("TracyDebugger"); $tracy->set('localRootPath', '/foo/bar/baz/'); bd('test'); } Thx! Link to comment Share on other sites More sharing options...
adrian Posted March 7, 2023 Author Share Posted March 7, 2023 Hi @bernhard - I think the easiest way might be to set: Debugger::$editorMapping which I think you should be able to change in config.php Here is where the path is built: https://github.com/adrianbj/TracyDebugger/blob/f2fbcd88fcecad45b2ce7b428cfe80c1527c1122/TracyDebugger.module.php#L1004-L1048 but I think in your case you will want to get the current value of Debugger::$editorMapping and do a str_replace on the path set in the module setting to adjust for each user as needed. You could probably even just put a placehholder like "localpath" in the module settings and replace that with the correct path per user. Let me know if that works out for you. 1 Link to comment Share on other sites More sharing options...
bernhard Posted July 10, 2023 Share Posted July 10, 2023 Hey @adrian another thing that gets annoying from time to time: When using the great user switcher I often want to switch back and forth between two users, usually between the superuser and one other user with another role. This is a very common use case I guess. When I switch from superuser to the other user though, I only have the options to "logout to guest" or "end session". Would it be possible to have a third button "back to xxx" where xxx would be the name of the superuser. For me that button would be what I need in 99% of the cases. I never ever need one of those two buttons that are already there. Not sure what they are actually for or how/when you use them? Link to comment Share on other sites More sharing options...
Robin S Posted July 10, 2023 Share Posted July 10, 2023 @bernhard, I think your Tracy Debugger might not be up to date. There is no "End Session" button in recent versions. You just can just click any user in the list and immediately change to that user. So it's pretty quick to toggle between two users - remember you can use the "Find user..." filter to find a user by name. The "Logout to Guest" lets you temporarily switch so you can view the front-end as a guest would, but with the debug bar still available even on production. But if you are using ProCache you would need to switch it off before using "Logout to Guest" because otherwise PHP will be bypassed altogether if a cache file exists. 1 Link to comment Share on other sites More sharing options...
adrian Posted July 10, 2023 Author Share Posted July 10, 2023 The End Session button should still be a thing. Basically it will kill the user switcher session and leave you logged in as the currently selected user with no option to change. As for a back to xxxx user, I am with Robin - there should really be no need for that, especially if you limit the available users via one of these settings. This lets you remove frontend only users etc from the list making it much more manageable to find your own superuser account to switch back to. 2 Link to comment Share on other sites More sharing options...
Robin S Posted July 10, 2023 Share Posted July 10, 2023 12 minutes ago, adrian said: The End Session button should still be a thing. Basically it will kill the user switcher session and leave you logged in as the currently selected user with no option to change. Oh right, of course it only appears when you have switched to a different user. I can't think of many cases where I would want to stay as the currently selected user without having the ability to switch back to superuser but nice to have the option in case it is needed. 1 Link to comment Share on other sites More sharing options...
bernhard Posted July 11, 2023 Share Posted July 11, 2023 Thx adrian, didn't know about those settings, sorry ? 1 Link to comment Share on other sites More sharing options...
bernhard Posted July 24, 2023 Share Posted July 24, 2023 Hey @adrian I apologise if I'm again asking for something that's already possible. But I don't think so ? I've just added a RockMigrations Tweak that shows WHY a $session->redirect happened in the tracy debug bar. Redirections can be really annoying and hard to debug. You open a page and it does not show up and instead redirects to the homepage. You wonder why... Access levels? Some other redirections in place? I had a look and Session::redirect is already hookable so it's really simple to add some helpful information: You instantly see that I got redirected because of line 36 in Hero.php While it's a very nice Tweak I think this would be much better placed directly into the tracy debug bar. What do you think? See https://github.com/baumrock/RockMigrations/blob/6003cf593b878b80937fa9708f0172a8f9fcfed9/tweaks/RedirectLogger.php Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now