All Activity
- Past hour
-
Version 2.2.44 includes a new feature besides some bug fixes (Thanks to @Stefanowitsch for reporting, testing and providing some fixes for the issues). New feature: File list below a file upload field Previous versions of FrontendForms have the "clear the file upload field" feature, which was a link below the input field to remove all files for upload from this file upload field. This was a nice feature to remove files from the file upload field, but @Stefanowitsch requested a better feature to remove not all, but only specific files from the field. The new feature is not just a link. Instead it provides a complete list of all added files below the file upload field and by clicking on the "X" you can remove a specific file from the field. The second advantage is that you can see all files that have been added to this field. Demo: demo-filelist.MP4 As always, please report any issues you discover here in the forum or on GitHub.
- Yesterday
-
Hello @Stefanowitsch Thanks for reporting these issues. I have fixed them (point 1 and 2). Instead of adding the class "uk-form-label" I have added the class "uk-margin-small-right" to the label tag because I find it looks like better. I have updated the version of FrontendForms, so please update and test it. I hope it works fine, because it is very late here in Austria, but on my local installation everything looks good. I find your idea of showing the files for the upload very good, so I guess I will try to find a nice JavaScript solution to realize this. The best option would be that I will find a ready-to-use JavaScript which offers this feature, so I can include it in the next update. Thanks for giving FrontendForms a try and to make it better by reporting issues and sharing ideas to improve it with us. Best regards Jürgen
-
New blog: Throttling AI bot traffic in ProcessWire
ryan replied to ryan's topic in News & Announcements
@BrendonKoz I've got all those buts in our list as well, except for Bingbot. As far as I can tell, Bingbot follows the crawl delay, so is one of the good ones. -
New blog: Throttling AI bot traffic in ProcessWire
BrendonKoz replied to ryan's topic in News & Announcements
I hope to give it a try tomorrow, but if I can't get to it, the first chance I'll have is next week. That said, I will definitely let you know! From a cursory search with recent logs, the following bots were problematic: Bingbot (Microsoft, USA) Bytespyder (ByteDance, so TikTok, China) MJ12bot (Majestic, SEO Tool, UK) AhrefsBot (Ahrefs, SEO Tool, USA) PetalBot (Petal Search Engine; China) CensysInspect (Internet Vulnerability Scanner, USA -- I think this is being abused and used as an attempted attack vector on our site, but they say it abides by crawl delay) I honestly did not realize there was/is a crawl speed directive for robots.txt (that some bots follow). I would've implemented that a long time ago. I do intend to implement ProCache at some point as well but this will be a very nice intermediary. -
New blog: Throttling AI bot traffic in ProcessWire
ryan replied to ryan's topic in News & Announcements
@BrendonKoz Great! Please let me know how it works for you. Any sense of which bots are causing the most trouble? The next thing I plan to build for WireRequestBlocker is a user agent counter/profiler, so that it's easier to identify problematic bots. That way you can throttle them specifically rather than throttling as general traffic. -
New blog: Throttling AI bot traffic in ProcessWire
BrendonKoz replied to ryan's topic in News & Announcements
This is awesome timing. Our hosting service only allots a set number of processes per customer, and due to bots we have been getting throttled and web requests were being delayed or outright refused due to too many requests being handled. Our overall traffic is, as reported by our host, about 55% bot requests! -
Hi @Juergen! I tested your module, you did a great job and I found two small details that I would like to point out: 1. "for" attribute missing on labels (when using InputCheckboxMultiple and InputRadioMultiple) 2. <label> elements (when using InputCheckboxMultiple and InputRadioMultiple) need "uk-form-label" classes to apply margins (of course only when UI Kit styling is selected in the module settings) By default the <label> surrounds the input so that the "for" attribute is not needed. But if you use this option: $form->appendLabelOnCheckboxes(true); ...then clicking on the label does not activate the checkbox/radiobutton next to it (because of the missing for-attribute). Another thing that would be really convenient: Is it possible to allow multiple file uploads via the InputFile class and to show each file that is chosen for upload under the field (before submitting). Something like this: The idea is to get an overview over the files that should be submitted and also give the user the option to remove specific files.
-
StripePaymentLinks – Simple Checkout Integration for ProcessWire
Mikel replied to Mikel's topic in Modules/Plugins
Because this question came up: No, the user does not have to enter any data before checkout. All user data is pulled via Stripes PHP SDK (included with the module). Therefore the only thing needed for the module to work is that the redirect link configured in Stripe contains the session_id param. You configure this directly in the Stripe backend by simply adding ?session_id={CHECKOUT_SESSION_ID} to your desired redirect-URL: Thats all. With this session id the module has access to all data of this specific purchase. Cheers, Mike -
Not a single Demo page is working
cpx3 replied to cpx3's topic in ProcessWire Commerce (Padloper) Support
To be clear: I already bought some useless modules from this author who never provided documentation... That's why I complain. -
Robin S started following Show Image Custom Field Errors
-
Show Image Custom Field Errors Makes custom fields for images visible when there is an error, e.g. empty required fields. Purpose Image fields have three view modes: square grid, proportional grid, and vertical list. In square grid and proportional grid modes only the thumbnail is visible and custom fields for an image are hidden until the thumbnail is clicked. This can cause an issue when any of the custom fields is an error state (e.g. a required field that has been left empty) because the relevant field will not be visible in the Page Edit interface, making it more difficult for the user to locate the field that needs attention. The Show Image Custom Field Errors module forces image fields into vertical list mode when there is an error in a custom field. When the error is resolved the image field is returned to the view mode that was in use before the error occurred. https://github.com/Toutouwai/ShowImageCustomFieldErrors
- Last week
-
bkno started following Fieldtype like Bard from Statamic
-
Pete started following Fieldtype like Bard from Statamic
-
I'm dredging up an old topic here but had a need to go and look for something like this - not for a ProcessWire field - and ended up deciding TipTap looked like the best bet. It also turns out that Invisioncommunity (the forum software in use here) also uses TipTap: https://invisioncommunity.com/forums/topic/478170-invision-community-5-the-all-new-editor/ (so expect this forum to use that editor when we finally upgrade to v5 as there is no choice when upgrading forums unlike the unlimited choice you get in ProcessWire 😅). Now I am interested in a TipTap field for ProcessWire for a few article-heavy websites where we have mostly text but sometimes need to add in an image, a CTA block (some editable per article, some locked), image/text in a column with some settings and as far as I can tell TipTap allows for all of this because you can just build any widget you want and make them drag-droppable. Before I get too far down this rabbit hole has anyone investigated this sort of thing since 2019? Searching the word "editor" on the forum naturally returns a lot of results, many of which not actually related to alternative rich text editors I'm basically interested in the simplicity of having just one editor versus repeater matrix pages where it's not technically needed a lot of the time. I did also look at editor.js which looked really cool but that one doesn't seem to have been updated in years and TipTap is both open source and has some big customers so will still be here in a few years. my brain got confused because some folders were last changed 2 years ago but it is still in development and also looks good - possibly better in fact as the demo on the homepage is already more the way I envisioned.
-
Hey folks, fun fact: this module was already featured in this week’s ProcessWire Weekly – even before we managed to post it here in the forum. So, here we are, finally giving it a proper introduction! 😅 (Links to the official ProcessWire modules directory will follow once it’s approved there.) TL;DR: This module connects Stripe Payment Links with ProcessWire and provides a simple checkout integration for sites that don’t need a full shop. 🎯 ✅ Drop a Stripe buy button anywhere ✅ Redirect back to PW thank-you or delivery pages ✅ Buyers get accounts, purchases are logged, access is granted ✅ Access mails are sent automatically First things first: What are Stripe Payment Links? Stripe Payment Links are basically hosted checkout pages that you can create directly in the Stripe Dashboard – no coding required. You define a product (or multiple line items) in Stripe. Stripe gives you a unique URL (the “Payment Link”). You can drop this URL behind any button, on any landing page, newsletter, or social media bio. When a customer clicks the link, they’re taken to a secure Stripe Checkout page (PCI compliant, supports all major payment methods, Apple Pay, etc.). After payment, Stripe redirects them back to your success URL. Super simple. But… on its own, Stripe has no idea about your ProcessWire site, your users, or your gated content. That’s where this module jumps in. 🚀 Why another payment module? We at frameless Media often work on small client projects where setting up a full e-commerce shop would be complete overkill. Think: Coaches selling a few courses or workshops Businesses offering a handful of digital products or subscriptions Creators who just need a buy button on a landing page Stripe Payment Links are perfect for this. But: ProcessWire on its own doesn’t handle redirects, user handling, or gated delivery pages. So we built StripePaymentLinks – a lightweight drop-in module to connect Stripe with PW. What it does Handles the redirect back from Stripe Checkout that contains the session id Creates or updates the buyer’s user account Records purchases in a repeater field Manages access to “delivery pages” (only available after purchase) Auto-sends access mails (configurable: never / new users only / always) Provides Bootstrap-based modals for login, password reset, set-password Usage examples Example 1: Sales page + delivery page Sales page has a “Buy now” button (Stripe Payment Link). After checkout, the user is redirected to the delivery page, which is access-protected. → Module logs them in, grants access, and if they’re new: a set-password modal pops up. → An access mail with product links is sent. Example 2: Product without a delivery page Some products don’t need protected pages (e.g. a consulting slot or voucher). → The success redirect goes to a generic thank-you page. → The module shows an access summary block with purchased products and sends the mail. Example 3: Mixed purchase (thank-you + delivery page) A checkout with multiple items: e.g. a “simple product” plus an addon that has its own delivery page. → Thank-you page shows the addon link(s). → The access mail lists all purchased products. Source & License The module is open-source under the MIT License. 👉 GitHub: https://github.com/frameless-at/StripePaymentLinks 👉 ProcessWire modules directory: pending So yes: if you or your clients just need a few low-barrier buy buttons, not a full-blown webshop, this might be the module you’ve been looking for. If needed we can provide some screenshots and visual examples next week 😉 Happy to hear your thoughts, ideas, and testing feedback! Cheers, Mike
-
@Juergen I am experimenting with your module to see if it fits my needs, I was wondering if you forgot to include the "InputSelect" and "InputSelectMultiple" Classes in your module? I get an error when trying to create a select field and the class file is missing in the InputElements folder: Error Class "FrontendForms\InputSelect" not found
-
Interesting that those prices aren't listed! Here are a few data points for you; perhaps others can flesh this out with more, or maybe @ryan will post them officially! 😉 $39 -- ProFields $39 -- ListerPro (dev) $39 -- ProDevTools $35 -- FormBuilder (single) $14 -- "Likes" (single)
- 1 reply
-
- 2
-
-
enum TournamentType:string { case MYSTERY = "Mystery"; case PKO = "PKO"; case VANILLA = "Vanilla"; } class FilterSolvesForm extends AbstractFrontendForm { protected function buildForm(): void { $tournamentTypeSelect = new Select("tournamentType"); $tournamentTypeSelect->setLabel(__("Type de tournoi")); foreach (TournamentType::cases() as $tournamentType) { $tournamentTypeSelect->addOption($tournamentType->value, $tournamentType->value); } $this->add($tournamentTypeSelect); } } abstract class AbstractFrontendForm extends Form { public function __construct(string $id) { parent::__construct($id); $this->buildForm(); $this->addSubmit(); } private function addSubmit():void { $button = new Button('submit'); $button->setAttribute('value', __("Valider")); $this->add($button); } abstract protected function buildForm(): void; } // TEMPLATE PHP FILE $command = new SelectSolvesDatabaseCommand(1, 10); $filtersForm = new FilterSolvesForm("solvesFilterForm"); if ($filtersForm->isValid()) { // DevUtils::prettyPrintObject($filtersForm->getValue('tournamentType')); // $command->addFilter('tournamentType', $filtersForm->getValue('tournamentType')); } $filtersForm->showForm(true); $command->execute(); $solves = $command->getPaginatedSolves(); Twig::render('browse-solves', [ 'paginatedSolves' => $solves, 'filtersForm' => $filtersForm, ] );
-
bkno started following Pro module renewal cost
-
Please can you let me know the renewal cost for the Pro modules. Is it a percentage? I could only see the up-front price in cart and checkout.