Jump to content


  • Posts

  • Joined

  • Last visited

  • Days Won


Everything posted by szabesz

  1. Sure, there is. As always :) Thanks in advance. Have a great weekend everyone!
  2. Sure, you need to understand at least the basics of CSS and SCSS before moving on to bootstrap or similar. To begin with, you might want to learn about how to shape page layouts with CSS as that is an essential part of website design.
  3. It also has issues like fields not having edit rights make conditions not being evaluated properly. Also, Presentation settings like "Open + Locked (not editable)" and others make it fail to work. The way it is implemented in the core is half baked, has not been taken care of for years and based on the probably wrong design decision that it can be done with JavaScript only. @Robin SYour module is a lifesaver indeed. Thanks a million!
  4. Hi, When including css/script files, I recommend some cache busting technique, like: /** * Adds file modified date as query string and returns URL to given asset. * <script src="<?= assetUrl("assets/js/site-global.js") ?>"></script> * * @param $relPath string File path relative to /site/templates/, such as "assets/css/site.css" * @return string URL with cache busting query parameter */ function assetUrl($relPath) { $fullPath = wire()->config->paths->templates . $relPath; $modified = ""; if (file_exists($fullPath)) { $modified = "?v=" . filemtime($fullPath); } else { wire('log')->error("CUSTOM WARNING: assetUrl() reports: file of {$fullPath} is missing! (current page ID: " . page() . ")", Notice::debug); } $url = wire()->config->urls->templates . $relPath . $modified; return $url; } Add such a utility function to your init.php (or _init.php if you are using it with $config->prependTemplateFile) and call it like shown in the comment above. Whenever possible, instead of <?php echo ?> use <?= ?> I think that helps a lot. Also, good IDE and a good color theme can visually make things a lot easier on the eyes. I have PhpStorm for example which even highlights HTML/CSS/JavaScript properly in PHP strings/literals so it helps me a lot in this and other areas as well (for example writing proper comments and a lot more).
  5. Perhaps, next time you need to present the list of modules used do not show the /module/ page under the admin, instead, show /setup/upgrades/ (Upgrades module). The Upgrades module has a LINKS column with links to either support, details or/and directory. Based on that, maybe with some clever deducting logic, rows of modules in this list can be labelled (by coloring, adding additional column, tooltip) according to their "author type". Provided the list is hookable...
  6. @daniel712 You might find these informative: https://processwire.com/talk/topic/21364-legacy-or-second-database-with-processwire/#comment-184482 https://processwire.com/talk/topic/3987-cmscritic-development-case-study Also, site localized googling can be helpful: https://www.google.hu/search?q=external+database+site%3Aprocesswire.com%2Ftalk Hope this helps.
  7. Mostly because of that. For example I wanted to use https://bootstrap-table.com/ and some other smaller interface elements, as well. Also, its docs are better than the UIKit's, I think. While Bootstrap 4 was not something I considered moving to, Bootstrap 5 has matured a lot, so that is why I started to looking into using it in the first place. Also, Bootstrap is more of a "low level LEGO" solution compared to UIKit, which can be a good thing at times. (For this reason, it is easier for beginners to start with UIKit 3, I believe.) I am also a fan of Unpoly and jQuery so I do not need yet another similar helper. uikit.min.js is 139Kb while the full version of jQuery is 90Kb so it looks like the UIKit developers had to (at least partially) reinvent the wheel just to get rid of jQuery. (I have never used UIkit.util too much, so I cannot say for sure, but looking at the docs they have overlapping features.) Also, Unpoly and jQuery has overlapping features, too, but I am still not ashamed of using jQuery even in 2023 :) I'm mostly using it for its powerful "selecting" capabilities, which are concise and have matured throughout the years.
  8. Hello Daniel and welcome to ProcessWire, If you want to ease your way into working with CSS, then I recommend either using UIkit 3 or Bootstrap 5. Both have its pros and cons, so you need to look into both to decide which one you prefer. For example, I started with UIkit 3 but nowadays I prefer Bootstrap 5. So preferences can change, too :) A lot of PW devs also like Tailwind CSS, for example, but there are loads of others, of course, for example: https://github.com/troxler/awesome-css-frameworks As for PHP, it's hard to recommend something which stands out of the crowd, but you might find useful tutorials here: https://hackr.io/tutorials/learn-php?sort=upvotes&type_tags[]=1 Just avoid old PHP tutorials as they probably teach deprecated PHP stuff. Stick to PHP 8.x and up. Hope this helps. Happy coding! ps: use the Google site search to search on this forum and/or in the PW blog. You'll get quick results that way.
  9. Hello @kongondo How about using some node graph libs? See for example: https://github.com/wbkd/awesome-node-based-uis I have no experience with any of them, but a decent JS library like that might do the trick. Another idea is that you might want to consider not to build any visual aid for the actions based approach but implement a programming library for that. After all, your target audience is developers. Sure, visual building makes it easy for newcomers to produce results fast, but it will be limiting in the long run. And there is the option to mix the two approaches. Since you are planning to work on the module in iterations, you might want to start with the programming library approach as that should be the bases of the visual aid anyway. Side note: recently I worked on a complex form and decided to implement some utility classes for handling forms, along with realising dependent selects as well, and I also had to deal with "non-parent/child relationships". (Just don't think of any sort of "library level" coding here, those utility classes are for my own humble needs.)
  10. Under 4 hours 27 mins 52 secs? Protecting data is very expensive for sure. It's just that lawmakers don't give a damn about that because it's not they who need to pay the price. Anyway, thank you for advancing Duplicator!
  11. BTW, on the frontend I use this https://github.com/brick/money which works well. It is a bit verbose to do math like that, but worth the hassle.
  12. Use decimal, already in the core, see (FieldtypeDecimal uses InputfieldFloat): https://github.com/processwire/processwire-requests/issues/126 https://weekly.pw/issue/367/ "Float and integer fields are now considered compatible with the newly added decimal field, making it possible to convert these from one type to another." If you feel like applying custom formatting in the admin, see :
  13. Chatsonic examples: How to create a page with the API of ProcessWire? How to return an array in ProcessWire?
  14. Sounds great for sure! Thank you in advance.
  15. First of all, thanks for your work on this! You mean all four repos? I starred them all. Another question: maybe I'm blind a bit, but I cannot find any search function on the site. We can always use Google, like https://www.google.hu/search?q=hook+site%3Aprocesswire.recipes but Google might not be always up-to-date for a while, I guess.
  16. In this case, apparently they do not redirected to anywhere but we get a "No Template specified" exception. Yes, they do get lost, so there is no template to edit, hence the exception.
  17. The issue is here: https://github.com/uiii/AdminHelperLinks/blob/023a5bc75028713ebcfea1212132cbe00867a024/AdminHelperLinks.js#L134 There is no need for the extra forward slash before '/setup....: ProcessWire.config.urls.admin + '/setup/template/edit?id=' For some reason it no longer works in newer PW versions but it is not needed anyway.
  18. You always get normal delayed output out of the box, even if $config->useMarkupRegions is set to true by default. Markup Regions is never enforced, and even though it is turned on by default it just sits there to be used. If you do not need it, you can disable it for performance reasons, of course.
  19. Also, anyone in need for a fix for this, please give a thumbs-up at the GitHub issue so that Ryan can see how "popular" (or rather: unpopular) this issue is.
  20. I also wanted to do this and was surprised that this is not possible so I had to code around this.
  21. It looks to me that the post above was generated by ChatGPT. It begins with "In ProcessWire,..." and ends in "Keep in mind that...". I doubt that copy/pasting ChatGPT results is a good way of discussion.
  22. Maybe it's a limitation and not a bug. ProcessUser is for the admin where PW lets the current user with correct permissions edit users. However, on the frontend, users get "more protection".
  23. @Pip Could you please put your very long code blocks into spoiler blocks this rich text editor provides? (Just use the eye icon in the toolbar.) Topics like this with extremely long code blocks are pretty hard to digest. Thanks in advance.
  • Create New...