Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 04/30/2020 in all areas

  1. ? I hope to do so, eventually. ------------- This (post above) was meant to be teaser before an announcement but I never got to that on time, so it seems to have backfired spectacularly ?. It seems that rather than waste time writing such teasers, I should be getting on with the job :-). So, here we go, just FYI. Padloper 2 will utilise Vue and Vuetify in the backend. I won't go into details why (at least for now). Just know that there were solid technical and practical reasons for this. This is not a request for comments :-), i.e. there is no going back on this. The main foundation of Padloper 2 remains the same; A native ProcessWire shop solution that is robust, secure and user friendly.
    3 points
  2. Thanks for the feedback! I'm glad to hear that they are useful ? although a bit complex to use. Tasker has a few small improvements, I think I pushed the latest version to the GitHub repo. DataSet changed a bit more, and some modified parts still need review and testing. Thanks for reminding me to finish them. My DataSet project is still running. We have like 150k+ (mostly complex) data pages interconnected with many references and getting to hit the wall with MySQL during imports and complex page reference lookups.
    2 points
  3. Hi @dotnetic thx for your efforts on the translations! Could you please change this to
    2 points
  4. It's been a while, but I just wanted to follow up with you on a project that's now in its final stages and say dataset and tasker are really exceptional, powerful modules, and definitely up there as my favourites for ProcessWire. You really covered the edge cases with being able to set task dependencies, merge, overwrites etc, and while it took some time to get my head around I now have a system that calls multiple tasks every hour via cron for fresh data from a specific set of CSV files. Looking forward to hopefully working on another project that uses dataset/tasker!
    2 points
  5. Dear @adrian sorry for noise. With some rubber duck debugging ... it was a typo. Shame on me ;(
    1 point
  6. Is your init.php in the ProcessWire namespace? The error seems to indicate that you're trying to load the Products class in the global namespace instead of ProcessWire\Products. In this case, you can fix this by adding the ProcessWire namespace to your init.php, importing the Products class or using the fully-qualified class name: $products = new \ProcessWire\Products();
    1 point
  7. Hi @Ralf, sorry for the delay. Instead of checking for the $input->post->submit, you should check if the response from the ReCaptcha is green. So, instead of : // form was submitted so we process the form if($input->post->submit) { // Do cool stuff here <<<<-------- I cannot get in here } Do : // form was submitted so we process the form if($captcha->verifyResponse() === true) { // Do cool stuff here <<<<-------- you will get here now } Also, try to call the getScript() method on the end of your main markup page. I mean, just before the </body></html> tags. And to avoid calling the module every page request, you can for exemple, check if the current page's template is the contact one and then call the module's getScript() method : <html> <head> </head> <body> ... <!-- other tiers scripts exemple --> <script src="jquery.js"></script> <script src="anotherscript.js"></script> <?php if($page->template->name === 'contact-tpl') { // google recaptcha required script echo $modules->get("MarkupGoogleRecaptcha")->getScript(); } ?> </body> </html> Ping me if you need further help.
    1 point
  8. Just create a module and a script that saves all this information to a file: This data could easily be saved as JSON. Maybe there are already methods that do this (I think so, because using the GUI a JSON is written into a textarea. Just look there how it is created). Of course you don't want to run this on every page request. I don't know what the best hook would be. A simple solution would be to run on every Modules::refresh()
    1 point
  9. @schwarzdesign, I can't reproduce that issue - the toolbar dropdown appears inside Repeater Matrix fields and nested Repeater Matrix fields. Double-check that you have included "HannaDropdown" in the toolbar settings for the CKEditor field.
    1 point
  10. Ok I get it. The Page Reference field as a selected "Parent" to allow an easy Page List selection option, this is what affect the search here. If I remove the selected parent, only keep the template and use the AsmSelect instead, then it doesn't affect the search. It's a little less convenient to select in the admin, but I can deal with it.
    1 point
  11. Wohoooo! So cool guys! Now it's #2!!!!!! Right after Joomla! ????❤️??
    1 point
  12. Done and also updated the price to “free”.
    1 point
  13. But I want to comment ? ..when you release Padloper2, Can you create a tutorial, or better a course, how to use Vue+PW in modules development? I think if you put it on Udemy, some of us might buy it.. I would like to start creating modules and I think Vue is the way. You will allow us to know if this will be a bigger and better step than using UIKit in Processwire. Thank you for bringing this to our environment.
    1 point
  14. @gebeer @bernhard Here you go ? https://github.com/jmartsch/pw-lang-de/releases/tag/3.0.148
    1 point
  15. During testing of the https://processwire.com/talk/topic/22847-processwire-dashboard/ module I've created this simple demo inputfield to show how Inputfields can be used as presentation blocks in ProcessModules. The result is this little inputfield that shows the getting started chart of chartjs: https://www.chartjs.org/docs/latest/ https://github.com/BernhardBaumrock/InputfieldChartDemo It comes with 2 ProcessModules 1) One single chart inputfield 2) Grid Demo Creating an Inputfield is really nothing more than creating a module file having 3 methods: <?php namespace ProcessWire; class InputfieldChartDemo extends InputfieldMarkup { public static function getModuleInfo() { ... } public function ___render() { ... } public function ___processInput($input) { return false; } } Place this in /site/modules/YourModuleName, name the class exactly the same as your folder and you get an installable Inputfield that you can use everywhere in your admin and share across projects! Creating a ProcessModule is also very simple (see this old post): You do even need only 2 methods in this module! <?php namespace ProcessWire; class ProcessInputfieldChartDemo extends Process { public static function getModuleInfo() { ... } public function execute() { ... } } Using these internal tools it is really easy to create totally tailored user experiences for your clients in the PW backend!
    1 point
  16. Follw up with my previous post https://processwire.com/talk/topic/12782-regarding-multiple-templates-or-parents-for-users/ For default installation, api to create a new user is something like that $u = new User(); $u->of(false); $u->name = "adrian"; $u->email = "adrian@example.com"; $u->pass = "123456"; $u->addRole("registered"); $u->save(); $u->of(true); With multiple template or parent , how to setup a user object to use which template and parent, before executing save() method ?
    1 point
  17. You can add some debug code into a template file and call a page with it: $to = array('me@example.com'); $subject = 'Wiremail-SMTP Test ' . date('H:i:s') . ' äöü ÄÖÜ ß'; $mail = wireMail(); if($mail->className != 'WireMailSmtp') { echo "<p>Couldn't get the right WireMail-Module (WireMailSmtp). found: {$mail->className}</p>"; } else { $mail->from = '--INSERT YOUR SENDER ADDRESS HERE --'; // <--- !!!! $mail->to($to); $mail->subject($subject); $mail->sendSingle(true); $mail->body("Titel\n\ntext text TEXT text text\n"); $mail->bodyHTML("<h1>Titel</h1><p>text text <strong>TEXT</strong> text text</p>"); $dump = $mail->debugSend(1); } So, in short, instead of using $mail->send(), use $mail->debugSend(1) to get output on a frontend testpage. The output is PRE formatted and contains the areas: SETTINGS, RESULT, ERRORS and a complete debuglog of the server connection, like this one:
    1 point
  18. Just thought I'd add the solution to this problem, for reference. Turns out there's a file called /site/assets/cache/LazyCron.lock (or something along those lines) preventing the cron functionality from working when there are PHP errors in my cron logic, which can happen during development of course. Fixing the errors and deleting the lock file restores functionality.
    1 point
×
×
  • Create New...