Jump to content

All Activity

This stream auto-updates

  1. Past hour
  2. Hi, As my developer has stopped with servising my Processwire site, I am asking for help here. In the admin area, it seems that pages with a "textarea" field dont show their content after 1 second. Even if I refresh the whole page, I can see the original input in the textarea, but it disappears after 1 second. It is not possible to edit the textarea... It looks like a system setting has been changed? The last time I used the site (2 months ago) everything was still working fine.
  3. Today
  4. Very useful, indeed! May I suggest an example in its docs for the developer to implement: - A URL segment `/md/` or, even better, adding `.md` to the URL to trigger the display of the markdown version of the page?
  5. 😂 https://www.tomshardware.com/tech-industry/artificial-intelligence/claude-code-deletes-developers-production-setup-including-its-database-and-snapshots-2-5-years-of-records-were-nuked-in-an-instant
  6. Hi, thanks for the explanation. I'll try to explain my actual case, it's more complex and would be easier to manage if I could just invalidate a form field manually. The form has a zip field, zip file contains several files. To make the explanation short, I extract the zip and validate its content, but the validation also requires to know values from the other fields in the form. I think this is the first problem: accessing the other fields (only if they are validated by the form) while validating the zip field. So I have a field "A", form should valid it (basic validation, like "required"), then while validating zip content (another field) and extracting its data I check again field "A" against the zip data. If there's an issue I must invalidate field "A" (but I'm processing zip field) and display an error on this "A" field. In one sentence: I know that field "A" is wrong only when processing zip field. Also this validator seems to make things more complex. I don't want to extract/validate the zip 2 times, once in validator, and once again when form is fully validated (isValid() function) to save values in database. So I should refactor code to store the validated data somewhere to reuse them in isValid() function, this is extra complicated work I want to avoid. Also this is not a light process for CPU, zip can be 500 MB and contain a lot of files to parse (some are also zip to extract again), this is a heavy process and I don't like the idea of doing this 2 times. Telling the form "this field is not valid and should display this error message" is way more simple and doesn't necessitate extra code, I just have to return an error code from the high level class that process data and invalidate one or another field. If you have an idea to avoid processing zip 2 times and without adding extra work, it would be welcomed, hope my explanations are clear (I'm not sure 😆). Actually I'm displaying error message on form result page, and in case of error the user has to fill again the whole form. My client is OK with this since this form is mainly used by himself, but I'm not happy because this is also a public form that a user could use, and having the whole form reset in case of error is a bad design. This is the actual code in template php: $form = new UploadSolveForm(); if ($form->isValid()) { $uploadFilePath = $form->getSolveFilePath(); $tagsText = trim($form->getValue('tagsFinalInput')); $tags = $tagsText ? explode(',', $tagsText) : []; $parseCommand = new ParseSolveUploadCommand( $uploadFilePath, trim($form->getValue('groupName')), $tags, RoomType::from($form->getValue('room')), boolval($form->getValue('isSpaceKo')), $form->getValue('subtreeVilainPosition') ? TablePosition::from($form->getValue('subtreeVilainPosition')) : null, $form->getValue('subtreeVilainAction') ? PlayerAction::from($form->getValue('subtreeVilainAction')) : null, $form->getValue('subtreeHeroPosition') ? TablePosition::from($form->getValue('subtreeHeroPosition')) : null ); if (!$parseCommand->execute()) { // I would like to do: // $errorCode = $parseCommand->getErrorCode(); // if ($errorCode == ParseSolveUploadCommand::SOME_ERROR){ // $form->setError('a field name', 'errorMessage'); // } else if($errorCode == ParseSolveUploadCommand::SOME_OTHER_ERROR){ // $form->setError('another field name', 'errorMessage'); // } if ($parseCommand->getUserErrorMessage()) NoticeManager::add($parseCommand->getUserErrorMessage(), NoticeType::ERROR); // Will display an alert box on form result page else NoticeManager::add(__("Une erreur s'est produite, merci de contacter un administrateur.", COMMON_TRANSLATION_DOMAIN), NoticeType::ERROR); } else { $parseCommand->getReport()->noticeUser(); } } Thank you for your interest. 🙂
  7. Top one is 62 (+23 repeaters). Regular ones are 15 to 25.
  8. I presume, then, if you know it's not animated and you want the webp version you can use ->webp. It's probably good as it is in hindsight.
  9. Exactly. That's the reason. 🙂
  10. 1) 147 2) 60 3) 46
  11. Yesterday
  12. @wbmnfktr thanks, 2 issues fixed. The last one was not a syntax the module supports (method syntax rather than property syntax) but added support for it in the latest commits with PW's call unknown() method catchall.
  13. Small update on PW Native Analytics New additions include: reset analytics data button for deleting all analytics data. A lot of fixes were also made, especially around: correct handling of sites in subfolders pagination support preventing false 404 detection on paginated pages cleaning up tracked page paths so things like ?it=... are no longer mixed into page stats fixing overcounting of views caused by asset/404 requests thx to matjazp for feedback 😉 I updated the file in first post! Cheers
  14. 1) 37 2) 31 3) 21 (but regularly there are not more then 8 - 12 templates in my websites)
  15. Useful utility indeed, thanks for sharing! Are you planning to add TinyMCE support as well? Given that CKEditor has been replaced by TinyMCE as the default RTE, on new sites I always use TinyMCE.
  16. 211 71 46 Keep in mind that most of these are the parent/child templates for page reference "tag" fields.
  17. Hello, A small utility I built for my own workflow — export any page directly from the editor as a clean Markdown file. Useful for documentation, content migration, and feeding page content to AI tools. GitHub: https://github.com/mxmsmnv/PageMarkdown What it does: Adds an Export to Markdown button to the page edit form Smart HTML conversion — CKEditor content (tables, lists, headings, links, bold/italic) → standard Markdown Supports ProFields: Table, Combo, Repeater Matrix (with type labels and nested structure) Images and files render as Markdown image/link syntax Page references render as links or titles MapMarker, Email, URL, Color fields all handled Configurable: toggle field labels as headings, ignore lists per field/type, datetime format, empty HTML cleanup Requirements: ProcessWire 3.0+, PHP 8.0+ MIT License.
  18. top 3: 42 20 12
  19. Trying that out (using $pages->get("/home/landing")->introimg_field instead of $item->introimg_field) : <?php foreach($pages->get("/home/landing")->introimg_field as $intro_image): ?> <a href="<?php echo $intro_image->page_picker->url; ?>"> <h3><?php echo $intro_image->title; ?></h3> <img src="<?php echo $intro_image->image->url; ?>" alt="<?php echo $intro_image->description; ?>"> </a> <?php endforeach; ?> It shows up in Firefox, but not in Edge. If I revert back to $item->introimg_field, it keeps working. For now.
  20. Thanks Markus, and apologies for the delay. After some trial and error I got it to work one time, and hoping it was finally solved, I tried it in another browser. But it behaves exactly the same as before, even though I now refer to the specific module page. Every other module is working fine, but this one isn't. I'm wondering, could it be because its main component is a Repeater field? That perhaps while it refers to the Repeater field as $modulePage->field (where $modulePage refers to the specific module page), the different repeater fields (e.g. repeaterField->title) are still read as $page->repeaterField->title, and - since it can't find such a field on the main page - nothing gets rendered? As a side note: could the fact that wireRenderFile is delayed output explain that sometimes the module does load; that the parsing order could depend on server response time and/or load times?
  21. Thanks. That’s quite a volume. Appreciate the info. More soon….
  22. For my management execution system web application which was built with PW, 50+ templates and another 50+ repeater fields which are technically templates.
  23. Last week
  24. I'm doing a little research here. How many templates do you have across your 3 largest sites? I don't need URLs. Just an approx number. For me, I have approx 10-20 templates in most sites. Cheers P
  25. dragan

    I'm back

    @Soma Welcome back!
  26. Thank you for sharing! Are you planning to add it to the Module Directory?
  27. DEPRECATED: I am no longer supporting AdminThemeCanvas. Now that the new native KONKAT theme is part of the ProcessWire core, this module is largely redundant. Thanks to everyone who used and supported it!. This repository will remain available for legacy projects but will not receive further updates. To make the KONKAT theme behave more like this one you can install the AdminQuickTree module, which gives you direct access to the page tree navigation.
  1. Load more activity
×
×
  • Create New...