All Activity
- Today
-
FireWire started following Image Hotspots
-
@cst989 If you attempted to dump {$this->moduleJsPath} from any method in Fluency besides of init() and it's null then init() isn't being called. If init() isn't being called then ProcessWire isn't initializing the module. If you are seeing the bookmarks page then ProcessWire sent you there and the Fluency asset will return a 302. In this case it looks like ready() is being called but init() isn't but I am guessing on that. That's controlled by ProcessWire. I think I need to reassess where things are being initialized in Fluency as far as init() vs ready() because I think there is some core behavior that is causing some confusion in a way that makes Fluency look like the culprit. If you're seeing a 302 bookmarks page I don't see how it could have anything to do with Fluency. There's no circumstance where any asset that is being loaded would cause the entire page to 302 because ProcessWire will not 302 the entire page due to a JavaScript file not loading correctly. The 302 page is causing the incorrect Fluency JS URL, not the other way around. Are you a superuser when you see the 302 page? If there are permission issues with users that attempt to view a page they don't have permissions for it can cause a redirect to the bookmarks page. It could also indicate something having to do with the login session. Have you tried logging out and logging back in? Again, this is something that ProcessWire controls.
- 292 replies
-
- translation
- language
-
(and 1 more)
Tagged with:
-
I've been considering accessibility constraints quite a bit lately, and in doing a little research, I haven't found any PHP-based PDF generation library supports the PDF/UA standard. With countries outside the US having more stringent accessibility and privacy standards, can PDFs generated through mPDF be considered accessible (with a little work on behalf of the developer)? I'm currently using mPDF in a smaller capacity, but RockPDF definitely offers some compelling features! RELATED: Unfortunately it seems that form fields are definitely not compatible from mPDF-generated PDFs due to the v1.4 PDF standard being used. I work in an industry that doesn't want to use the web, and desperately intends to keep digital documents, so I was looking to see if FormBuilder could be used to export as PDF, but that appears to not be the case (when accessibility is concerned). As most (open-source) PDF generation libraries have borrowed or forked code from one another, I doubt any would offer accessible/compatible forms.
-
Hi @nbcommunication I am again struck with this error message in my log and the instagram posts don't show up on the website anymore. I generated a new access token but it did not help. Is there away to renew the expired session?
-
module Fluency - The complete translation enhancement suite for ProcessWire
cst989 replied to FireWire's topic in Modules/Plugins
I think the content type might be a red herring. A similar thing happens to me in a DDEV setup... seems to be trying to download the JS file from /manage/page/edit/fluency.bundle.js?v=3.0.227. At this point ProcessWire 302s to the bookmarks webpage, which likely explains the MIME type mismatch. If I look in the code, it tries to load the js path from {$this->moduleJsPath} however if I dump that on my page, it returns nothing - so effectively it's trying to load the js file from <current_url>/fluency.bundle.js Since they should be set in init(), I guess this is not firing? This is my first time trying a multilingual site, I've only done the following so far: On an existing 3.0.227 PW site running PHP 8.2 Install language fields, language names and language tabs modules Added a second language Installed Fluency Added a Google Cloud API key Converted my title field to Title Multilanguage Edited a page There's no option to use Fluency with the title field, I only see the JS errors in console- 292 replies
-
- translation
- language
-
(and 1 more)
Tagged with:
-
adrian started following Image Hotspots
-
Attempt to read property 'title' of non-object
BFD Calendar replied to BFD Calendar's topic in API & Templates
As more or less expected our host says there are no problems or errors caused by them. In the server logs I see two repeated errors: [Tue Sep 30 22:46:25 2025] [X-OVHRequest-Id: 7bd91c71e88c4eaaf8f23be0ca59b7dd] [error] [client 34.174.180.159:0] [host www.birthfactdeathcalendar.net] AH10141: FastCGI: comm with server "/homez.863/birthfac/www/index.php" aborted: idle timeout (160 sec) [Tue Sep 30 22:46:25 2025] [X-OVHRequest-Id: 7bd91c71e88c4eaaf8f23be0ca59b7dd] [error] [client 34.174.180.159:0] [host www.birthfactdeathcalendar.net] AH10149: FastCGI: incomplete headers (0 bytes) received from server "/homez.863/birthfac/www/index.php" In the ProcessWire error log I see two repeated errors: Fatal Error: Uncaught Error: Class "FieldtypeText" not found in /wire/modules/Fieldtype/FieldtypePageTitle.module:17 Stack trace: and many: Error: Exception: SQLSTATE[HY000] [1203] User birthfacbfdcal already has more than 'max_user_connections' active connections In /wire/core/WireDatabasePDO.php line 549 In the Files-error log repeated: unlink: Unable to unlink file: /site/assets/cache/LazyCronLock.cache -
well, if you restrain the template access it won't be proposed to add/edit a page and a user who hs obnly access to certain templates/pages don't have access at all à the templates, this is a supreadmin feautre 🙂 have a look when logged as a non superadmin user
-
Thank you, my motive is to prevent people from having access to the templates not only the pages using that template.
-
virtualgadjo started following Hide template
-
Hi Ana, depending on what you need i would say yes 🙂 in the access tab of the template if you check the yes radio button, you will see the roles you've created and will be able to easily choose which one can have access to the pages using this template, job done 🙂 have a nice day
-
Robin S started following Image Hotspots
-
Image Hotspots Allows a Repeater field to be used to define hotspots on an image. Being able to add multiple fields of any type to the Repeater provides flexibility for the information you can store for a hotspot. Setup 1. Install the module. Two decimal fields will automatically be created on install: hotspot_x and hotspot_y. You can set custom hotspot and highlight colours in the module config if needed. 2. Create a "single" image field (i.e. maximum number of files = 1) that you will use store the image that will have hotspots defined on it. Add this field to a template. 3. Create a Repeater field and add the hotspot_x and hotspot_y fields to the Repeater. Add any other fields you need to store information about the hotspots you will create. Save the Repeater field. 4. In the "Details" tab of the Repeater field, expand the "Image Hotspots" section (this section appears for any Repeater field that has the hotspot_x and hotspot_y fields). For "Image field", select the image field you created in step 2. The "Image height" setting defines the maximum height of the image when displayed in Page Edit. 5. Add the Repeater field to the template you added the image field to in step 2. Usage in Page Edit When an image has been saved to the image field, the Repeater field will display a preview of the image at the top of the field. Click "Add New" to create a new hotspot. The hotspot appears at the top left of the image initially and can be moved by clicking and dragging it to the desired location on the image. The X/Y coordinates of the hotspot will be automatically updated as the hotspot is moved. For precise adjustments you can modify the X/Y coordinates directly and the hotspot position will be updated. To identify which Repeater item corresponds to a given hotspot, click on the hotspot. The corresponding Repeater item header will receive an orange outline. Click the hotspot again to remove the orange outline. To identify which hotspot corresponds to a given Repeater item, expand the Repeater item and focus either the X or Y coordinate fields. The corresponding hotspot will be highlighted in orange. On the frontend It's up to you to display the hotspots on the frontend in any way you need. The values of the hotspot_x and hotspot_y fields are percentages so when given absolution positioning over the image your hotspot markers can preserve their positions as the image scales up or down in a responsive layout. https://github.com/Toutouwai/ImageHotspots https://processwire.com/modules/image-hotspots/
-
Hello PW friends, Is it possible to hide a template and prevent all accesss to a template in the backend except certain users. Thank you
- Yesterday
-
Good luck to the Craft team, but to me it looks like they need to reinvent the wheel every now and then. Luckily, we have our own genius, Ryan, who figured that reinventing the wheel is not for everyone. At least not for us ;)
-
Thanks @zoeck - seems like the documentation for all this is spread all over the place which I don't think is helping Ryan get renewals. Honesty I would probably have renewed more often if I'd known about the cheaper price.
-
Well it looks like they're switching to Laravel for Craft CMS v6: https://craftcms.com/blog/laravel This is very interesting and speaks to the idea of the CMS and web application framework powering it being 2 separate projects (Craft, etc.) vs. it being built around each other (ProcessWire). In my opinion, ProcessWire wouldn't be what we all love about it if it had such a huge dependency.
-
Hi @Morphosis - glad you found a solution! Based on the module documentation on Github, you can also define this in your site/config.php using an array-based syntax. Choose whichever method you would prefer! Example: /** * Module: SearchEngine * * Override any module settings or other config values here. Anything set here * cannot be overridden. * */ $config->SearchEngine = [ // Render arguments affect the rendered output from the SearchEngine module. 'render_args' => [ // Various attributes used by the search form and results list when rendered. 'form_action' => '/search/', ] ];
-
I think @Pete may have run updates on the forum software. If that is the case, it may be related.
-
Have a look here: https://processwire.com/blog/posts/pw-3.0.80/#pro-module-renewals You just have to contact ryan 😉
-
Thanks @zoeck - that page does show: Renewal Terms $39/year But then (presumably because it's expired), when I click on "Upgrade", it says "ProDevTools (Agency) $170 upgrade charge (the difference in price). Optional $89/year yearly renewal of support and upgrades after first year." I don't think upgrade is the right option, but there are no other buttons/links on that first page that actually work - the others are links to the forum thread which I no longer have access to. I can get to a page that says: "1 x Renew: ProDevTools" but this invoice has expired so I can't pay. I guess if you don't renew before your original subscription expires, you can't get it for the renewal price. I don't know if that's intentional or a limit of the forum store?
-
BitPoet started following Disable "new page" functionality if parent page has insufficient data
-
Disable "new page" functionality if parent page has insufficient data
BitPoet replied to Sebastian's topic in API & Templates
Hook after Page::addable. $event->object will be the page to add a child to. Untested example code written off the top of my head: <?php namespace ProcessWire; // For ready.php wire()->addHookAfter('Page::addable', function(HookEvent $event) { $thisPage = $event->object; // Exit early if already disallowed if(! $event->return) return; // Only apply to pages with template article-list if($thisPage->template->name !== 'article-list') return; // Now check the fields on the page whether they allow // adding children. Adapt the field name to your use case. if($thisPage->dateslistrepeater->count() == 0) { $event->return = false; } }); This should disable the Add / Add Children button. You'll probably have to save the page after adding a repeater item before you can add children from the page editor. -
Mahmoud Arafat joined the community
-
I'm no longer maintaining any of my modules. If someone wants to take them over, let me know. It's been a long time since I first asked, but nobody has reached out.
-
@Peter Knight — if someone could fully take it over (along with any other modules that matter), that'd be the most ideal scenario. Imo, forking may as well be a new project… Larger PRs are a no-go I'm afraid, unless someone is willing to fully test them, in which case they may as well take a leap and become maintainer 🙃.
-
For me it is always 39$ for the renewal. Just go to this Page: https://processwire.com/talk/clients/purchases/ There should then be a “Renew now” button next to the text “Renew from $39” (only if a renewal is pending)
-
Thanks, for your experience on this, @FireWire! In fact I edited the post right after posting, but this is not unusual and I never faced this “hidden, must be approved” message before. A possible reason might be that the post contains an example output with a few fake mail addresses in it. This is the only one that would make sense to me. 🧐
- Last week
-
FireWire started following Bug or new feature? ;-)
-
@Mikel I can't remember the exact message that I was shown but after editing a post too quickly or too many times consecutively I was blocked from making changes or posting anything IIRC. I don't know how related that may be to your case but if you posted/edited things quickly it might be flagging the post as a security method to prevent malicious behavior. Best guess. May or may not be relevant. 🤷♂️