Jump to content

adrian

PW-Moderators
  • Content Count

    9,534
  • Joined

  • Last visited

  • Days Won

    314

Posts posted by adrian


  1. @teppo and @bernhard Please try the attached main module file. With this version, you can simply add your panel to your module directory structure eg:

    /site/modules/TestModule/TracyPanels/TestThirdPartyModule.php

    Make sure the class name of the panel in this example is: TestThirdPartyModulePanel

    That should be all you need.

    Not super well tested so let me know if you find any problems or have any suggestions. If everything looks good, I'll commit the changes to the repo.

     

    TracyDebugger.module.php

    • Like 3

  2. Hi @thausmann - when exporting a table with a page reference field, it should export the title of the selected page(s), and not the ID so I am maybe confused about what you are seeing. The option to export a field from the referenced page would be great for sure. The way I'd envision this working would be for the "Columns / Order to Export" selection to work like Lister does with its ASM parents functionality where you select a parent and then get to select subfields, but I am rushed for time, so for the moment, I've just made it possible to select them as separate top-level items.

    Please try the not-well-tested version attached. Please feel free to make improvements.

    TableCsvImportExport.zip


  3. 4 hours ago, Ivan Gretsky said:

    A bit offtop... Maybe such epic modules like Tracy Debugger (and AOS, and some else, probably) could get their own sub-forums under Modules/Plugins? Kind of like Padloper got its own under Vip Support? I am sure, it can be done and (arguably) would make it easier for people to find stuff. But would it make it easier for maintainers? What do you think, @adrian?

    I think it's probably good idea, but this is a request for @Pete and @ryan

    • Like 1

  4. Hi @teppo - I'd love to make it easier to support custom panels.

    It's interesting about the $allPanels array - it really wouldn't be necessary except for the title vs the name, eg "phpInfo" to "PHP Info". In most cases it would be easy to programmatically convert the case, except for those with acronyms (PHP, API, etc).

    I think you are probably correct that hooks might be problematic because Tracy is always loaded before all other modules. Perhaps module authors who want to add new Tracy panels could simply provide me with the path and panel class name and I can have Tracy check the location if the module is installed. Perhaps as simple as adding a new $externalPanels array that is added to as needed?

    This array could be merged into the $allPanels array which would probably need to be made multidimensional to support separate title and path properties so that https://github.com/adrianbj/TracyDebugger/blob/cc1c17e50487580f5c1e3485411d7c9a766b0a4f/TracyDebugger.module.php#L1526 would know what path to use to load these external panels.

    Anyway, I'll have a play around and see what I think will work best and send you a test version to work with.

    • Like 2

  5. Just wanted to make a note here that I just wasted several hours trying to debug why I couldn't manually add or delete rows from a table when this module was installed. Turns out it was PHP's max_input_vars setting being too low, but no error was being logged anywhere.

    In the process of debugging I did fix a few bugs related to Table fields inside Repeaters and some other cleanup, so perhaps it was a worthwhile waste of time after all 🙂

    • Like 3

  6. Hi @Mike Rockett - just had a: PDOException: SQLSTATE[22001]: String data, right truncated: 1406 Data too long for column 'referrer' at row 1 #22001 in /var/www/html/site/assets/cache/FileCompiler/site/modules/ProcessJumplinks/ProcessJumplinks.module.php:534

    because someone was trying to hack in with this link:

    /plus/download.php?open=1&arrs1[]=99&arrs1[]=102&arrs1[]=103&arrs1[]=95&arrs1[]=100&arrs1[]=98&arrs1[]=112&arrs1[]=114&arrs1[]=101&arrs1[]=102&arrs1[]=105&arrs1[]=120&arrs2[]=109&arrs2[]=121&arrs2[]=116&arrs2[]=97&arrs2[]=103&arrs2[]=96&arrs2[]=32&arrs2[]=40&arrs2[]=97&arrs2[]=105&arrs2[]=100&arrs2[]=44&arrs2[]=101&arrs2[]=120&arrs2[]=112&arrs2[]=98&arrs2[]=111&arrs2[]=100&arrs2[]=121&arrs2[]=44&arrs2[]=110&arrs2[]=111&arrs2[]=114&arrs2[]=109&arrs2[]=98&arrs2[]=111&arrs2[]=100&arrs2[]=121&arrs2[]=41&arrs2[]=32&arrs2[]=86&arrs2[]=65&arrs2[]=76&arrs2[]=85&arrs2[]=69&arrs2[]=83&arrs2[]=40&arrs2[]=57&arrs2[]=48&arrs2[]=49&arrs2[]=51&arrs2[]=44&arrs2[]=64&arrs2[]=96&arrs2[]=92&arrs2[]=39&arrs2[]=96&arrs2[]=44&arrs2[]=39&arrs2[]=123&arrs2[]=100&arrs2[]=101&arrs2[]=100&arrs2[]=101&arrs2[]=58&arrs2[]=112&arrs2[]=104&arrs2[]=112&arrs2[]=125&arrs2[]=102&arrs2[]=105&arrs2[]=108&arrs2[]=101&arrs2[]=95&arrs2[]=112&arrs2[]=117&arrs2[]=116&arrs2[]=95&arrs2[]=99&arrs2[]=111&arrs2[]=110&arrs2[]=116&arrs2[]=101&arrs2[]=110&arrs2[]=116&arrs2[]=115&arrs2[]=40&arrs2[]=39&arrs2[]=39&arrs2[]=57&arrs2[]=48&arrs2[]=115&arrs2[]=101&arrs2[]=99&arrs2[]=46&arrs2[]=112&arrs2[]=104&arrs2[]=112&arrs2[]=39&arrs2[]=39&arrs2[]=44&arrs2[]=39&arrs2[]=39&arrs2[]=60&arrs2[]=63&arrs2[]=112&arrs2[]=104&arrs2[]=112&arrs2[]=32&arrs2[]=101&arrs2[]=118&arrs2[]=97&arrs2[]=108&arrs2[]=40&arrs2[]=36&arrs2[]=95&arrs2[]=80&arrs2[]=79&arrs2[]=83&arrs2[]=84&arrs2[]=91&arrs2[]=103&arrs2[]=117&arrs2[]=105&arrs2[]=103&arrs2[]=101&arrs2[]=93&arrs2[]=41&arrs2[]=59&arrs2[]=63&arrs2[]=62&arrs2[]=39&arrs2[]=39&arrs2[]=41&arrs2[]=59&arrs2[]=123&arrs2[]=47&arrs2[]=100&arrs2[]=101&arrs2[]=100&arrs2[]=101&arrs2[]=58&arrs2[]=112&arrs2[]=104&arrs2[]=112&arrs2[]=125&arrs2[]=39&arrs2[]=41&arrs2[]=32&arrs2[]=35&arrs2[]=32&arrs2[]=64&arrs2[]=96&arrs2[]=92&arrs2[]=39&arrs2[]=96

    I'm not sure the best approach to preventing this exception - not sure if you should change the field type for the referrer column to support larger entries, or if you should just truncate the referrer if it's longer than allowed.


  7. Hi @gebeer - sorry that didn't help. Looking through the module code there are only a couple of places where "/admin/module/edit?name=TracyDebugger" appears. One is in the PW Info panel, so could you please disable that and see if it fixes things. The other is in the main module file, so could you try removing this block of code: https://github.com/adrianbj/TracyDebugger/blob/c499ad75ffce7ce473dfd32ef994339a27d61b83/TracyDebugger.module.php#L1124-L1135

     


  8. 4 hours ago, BFD Calendar said:

    Can the access roles be used in an 'if - else' condition as well then?

    Something like this will get you the list of roles for the current page.

    $modules->getModuleConfigData('PageProtector')['protectedPages'][$page->id]['roles'];

     

    • Like 1

  9. Hi @gebeer - I am not really sure, but my initial hunch is that somehow the last entered code is corrupt. Could you try deleting any browser LocalStorage entries for the site. You can go through and just delete the ones that refer to Tracy if you'd prefer.


  10. Just now, Ivan Gretsky said:

    So looking at the thread it seems I need to modify the modules code, right? No way to sort'em afterwards?

    Correct - that is why I was saying that I don't think it's an ideal setup.

    • Like 1

  11. Just now, Ivan Gretsky said:

    Or was it just your Tracy Debugger that got privileged))

    You're confusing module load priority with hook priority. The link above is to set hook priority. The module load priority was introduced quite recently and is what Tracy uses to make sure it is loaded before other modules, but what you want to adjust is the hook priority.

    • Like 1

  12. 2 minutes ago, Ivan Gretsky said:

    Thanks! I remember reading about the possibility to change the module load priority, but cannot find it( Could you direct me there to make the answer complete for someone finding it later?

    Here's the thread that explains it: 

     

    • Like 1

  13. Hi @Ivan Gretsky - I think you are probably on track with it being a hook priority issue. Unfortunately PW's approach to this is not very convenient IMO - I think it would be better if developers could have the option to set the priority in each PW install, as needed because otherwise the module developer has to set it without knowing what other modules might be installed on the site that also hook into the same methods.

    I think for now you might have to adjust the priority yourself in both modules to ensure that PageEditPerUser overrides ARB as needed. Please also note this issue (https://github.com/ryancramerdesign/PageEditPerUser/issues/4) in Ryan's module - not sure how much it affects its intended functionality, but worth keeping an eye on, or fixing yourself.

    Sorry, I don't have time to investigate properly at the moment but if you have any specific requested changes to the module to make it work as you need, just let me know.

    • Like 1

  14. @cb2004 - if that works, great - I didn't think it would work to set something in ready.php and use it in config.php

    PS - you can simplify the $subMembers bit to:

    $subMembers = wire('pages')->get(1302)->children->each('id');

    or even better because it won't load the pages, just their IDs:

    $subMembers = wire('pages')->findIDs('parent=1302');

     

    • Like 3
×
×
  • Create New...