All Activity
- Past hour
-
szabesz started following MediaHub 1.16.0 released
-
Those "top bar features" are welcome, and so are the "library and inputfield" additions/changes. Thanks @Peter Knight!
- Today
-
Thanks, @millipedia. I used Audio Embed Textformatter in the past, in another site, together with Video Embed and so on (pdf, etc.). But it would be much simpler and more elegant to use a universal "insert media..." in TinyMCE. As a last resource, while I wait for a uniform solution, I'm using a Hanna code to embed the audio without forcing the person who is editing to deal with code. But I'm not completely satisfied with this partial solution, I confess.
-
You could use @teppo's Audio Embed Textformatter which converts URLs which reference audio files into an audio tag.
-
Ivan Gretsky started following How to restrict and lock Repeater Matrix types?
-
How to restrict and lock Repeater Matrix types?
Ivan Gretsky replied to howdytom's topic in Getting Started
I assume you want those other RM types that should not be editable by the user with the given role still to be shown in admin, but with all their fields being disabled. The best way to achieve this is via hooks. Look here or search for similar topics for inspiration. Check RestrictRepeaterMatrix's source code for another example. You need to get the InputfieldRepeaterMatrix field at some point (maybe after the renderReadyHook method), foreach through the blocks and change their fields' output based on your conditions. Sorry for no ready-to-copy-and-paste code)) -
Media plugin is enabled. The file is in the inputfield files in the page. It doesn't work. The files inputfield allows wav and mp3 extensions, amongst others.
-
David Karich started following It's not possible to upload a profile picture in the forum
-
howdytom started following TinyMCE strips out html <audio> tag?
-
I guess you have to enable the TinyMCE media plugin in your field settings → Input. It's in the Plugins section. Also, make sure to add the media type to the toolbar. Personally I try to avoid adding audio elements to the WYSIWYG editor. As a quick solution you could create a text field to reference a file path or add a file field which provide a upload option. <audio controls> <source src='{$file->url}' type='audio/mpeg'> </audio> Updated:
-
RuiVP started following TinyMCE strips out html <audio> tag?
-
I need to insert in a inputfield (textarea) a player for sound (either mp3 or wav). It seems TinyMCE strips out the tag <audio src="..."></audio>. Any ideas about what I'm missing?
-
howdytom started following How to restrict and lock Repeater Matrix types?
-
Hello, I need some advice on what is the best option to set permissions for Repeater Matrix. I am using a Repeater Matrix with multiple Repeater Matrix types in a template. The main Repeater_matrix_field consists of around 10 items with image, text fields and various layouts. What I am trying to do is to limit permissions and prevent a user role from editing. How can I restrict access to certain Repeater Matrix types so that all fields are locked except 2 Repeater Matrix types? Is that possible? Repeater_matrix_field structure: 1. Repeater Matrix item: Full size image field 2. Repeater Matrix Item Two Column text fields 3. and 4. Repeater Matrix Item. The only field that the user should be allowed to edit 5. Repeater Matrix Item: Text Teaser fields 6. Repeater Matrix Item: Full size image field 7. Repeater Matrix Item: Two Column text fields What is the most elegant way to set the permissions? Option A. I have looked into RestrictRepeaterMatrix module. However it still possible to modify and delete existing Repeater Matrix types. Option B. Usually I would add a separate field with individual permissions, but adding 2 more Repeater Matrix duplicates seems to be overkill. Also both fields are located in the middle of the Repeater Matrix field. The option to change the item order is essential. I hope this makes sense. I really appreciate any reply.
-
module New Textformatter: Smart Quotes for visible Text
Mikel replied to Mikel's topic in Modules/Plugins
Update: Custom Option – v 1.1.0 A while back, a kind soul forked this module to add Polish quotation marks. Small plot twist: Polish primary quotes are typographically identical to German ones („...“) – so the fork mostly added the word "Polish" to the dropdown. Hats off to the spirit, though. 🇵🇱🇩🇪 Taking the hint, we've now added a Custom option: pick it in the module config and you get two extra text fields where you define your own opening and closing characters. No more forking required when none of the presets fit — Polish, Klingon, or otherwise. 😉 Cheers, Mike -
GitSync – Keep your (private) modules in sync with GitHub
matjazp replied to Mikel's topic in Modules/Plugins
[manual] Sync "TracyDebugger" branch "master": 1121 remote, 987 local, 0 to update, 0 to delete (134 preserved via .gitignore/.gitattributes) Yep. Thanks for quick fix! -
GitSync – Keep your (private) modules in sync with GitHub
Mikel replied to Mikel's topic in Modules/Plugins
Sorry, @matjazp, that's a genuine data-loss bug on Windows, on us. Root cause: buildLocalFileMap was using SplFileInfo::getPathname() which returns backslash paths on Windows, while the remote tree uses forward slashes. So every subdirectory file looked simultaneously "new" (not in local) AND "deleted" (not in remote) because the key comparison failed. The ZIP path then wrote 980 files and the delete pass immediately removed the same 980 files via their backslash variant — which on NTFS resolves to the same file. That's exactly the "6 files left in root" pattern you saw. Fix is now in branch refactor-install-from-Github: relative paths are normalized to forward slashes in buildLocalFileMap regardless of OS. A few things to double-check before you retry: Sync GitSync branch "refactor-install-from-Github" to latest commit 0f1425e Make sure your manually-restored TracyDebugger matches the upstream master (which it should if you grabbed it from the GH repo directly) Run sync — log should show something like 0 to update, 0 to delete (134 preserved via .gitignore/.gitattributes) and "up to date" If your restore was from git clone rather than the GitHub ZIP, your local will have .gitattributes and docs/ present — those are now matched by the .gitattributes export-ignore filter, so they'll be preserved rather than deleted. Thanks for the precise log output — without the file-count math the Windows-only nature wouldn't have been obvious. Linux/macOS users were unaffected because SplFileInfo::getPathname() already returns forward slashes there. Cheers, Mike -
robert started following Web Developer Needed for HTML/CSS/JS Website Implementation
-
Hi Nomak, thanks for posting — this sounds like an interesting project. I'm Robert, a web developer based in Düsseldorf, Germany, doing both frontend and backend development. My frontend stack normally includes HTML, CSS (SASS/PostCSS), JavaScript (Alpine.js, htmx or Vue if needed), focusing on fully responsive (fluid) and accessible results. You can get a first impression of my work at robertweiss.de. I'm located in Germany and hold a valid EU VAT ID, so there would be no issues on the tax and legal side. I'd be happy to hear more about the project scope — for instance the size and complexity of the design, the number of templates/elements involved, and any specific interactions or animations expected. Knowing the budget you have in mind would also help me figure out if this could be a good fit for both of us. Looking forward to hearing from you! Best regards, Robert
-
Hi @Peter Knight Thanks for your reply! I have distinct mockups for the desktop version as well as for mobile - the tablet version must be derived from these mockups.
-
Ivan Gretsky started following Processwire online learning courses
-
I remember that there were some attempts to create courses on PW, but none of them really stuck in my memory. I think it is better to make one's way through tutorials and read through the docs. There are some videos that can be useful. These come to mind: https://www.youtube.com/watch?v=IHqnLQy9R1A - a really dated walkthrough I have once started with; everything looks different but the essence is the same) https://www.youtube.com/playlist?list=PLOrdUWNK38ibz8U_5Vq4zSPZfvFKzUuiT - a comparaison to WP
- 1 reply
-
- 2
-
-
GitSync – Keep your (private) modules in sync with GitHub
matjazp replied to Mikel's topic in Modules/Plugins
Thanks for the fast response. Unfortunatelly the sync screw up the TracyDebugger (Error: Failed opening required 'C:\inetpub\wwwroot\site\modules\TracyDebugger/tracy-2.12.x/src/tracy.php') and I had to restore it form the GH repo. In the logs: 2026-05-13 09:28:15 admin http://localhost/processwire/setup/gitsync/sync/ [manual] Sync "TracyDebugger" branch "master": 1121 remote, 987 local, 980 to update, 980 to delete (134 preserved via .gitignore/.gitattributes) 2026-05-13 09:28:23 admin http://localhost/processwire/setup/gitsync/sync/ Using ZIP archive for 980 file update(s) (>50 threshold) ... 980 files updated ... 2026-05-13 09:28:27 admin http://localhost/processwire/setup/gitsync/sync/ [manual] Synced "TracyDebugger" to branch "master" (commit 068bbd9) – 980 updated, 980 deleted Not sure what happened, but when the site failed with the exception, the TracyDebugger folder only had 6 files on the root. Other folders, like assets, panels, includes were all missing. It's odd since the log shows: 2026-05-10 18:25:51 admin http://localhost/processwire/setup/gitsync/sync/ Updated: panels/AdminToolsPanel.php (8396 bytes) ... 2026-05-10 18:25:47 admin http://localhost/processwire/setup/gitsync/sync/ Updated: includes/post_processors/AdminToolsPost.php (4138 bytes) Will try to debug later, I'm at work now 🙂 -
GitSync – Keep your (private) modules in sync with GitHub
Mikel replied to Mikel's topic in Modules/Plugins
Hi, @maximus, since we do not use OpenAI products (company policy) I haven´t tried Codex at all. But nevertheless, that workflow works — GitSync reacts to any git push, regardless of whether the commit comes from a human, CI, or an agent like Codex Cloud. @matjazp: Thanks for the detailed log — that pinpointed the problem clearly. Three fixes are now in main: PHP execution timeout lifted during sync (set_time_limit(0)). The 500 you hit was almost certainly PHP killing the script at 30–60 s, not GitHub timing out. Large diffs now use the ZIP archive endpoint. When more than 50 files need updating, GitSync fetches a single ZIP of the branch via /zipball/{ref} and copies from the extracted archive instead of hitting /git/blobs/{sha} once per file. Your 1115-file diff turns from ~1115 sequential HTTPS requests into 1 download plus local copies. GitSync now respects two sources at once: .gitignore (which spares Tracy's runtime files like logs/, dumps/, bluescreen/) and .gitattributes export-ignore (which keeps maintainer-excluded files like docs/ and .gitattributes itself off the live install). Both apply bidirectionally — files matching either are never added by the sync and never deleted from local. End result for TracyDebugger: install + first sync = "up to date" with zero unnecessary churn. Please switch to the GitSync branch refactor-install-from-Github in GitSync and give it another try — the log line for the sync should now show N to update, M to delete (P preserved via .gitignore/.gitattributes) – both N and M considerably lower than your original 1115/4430, and you'll also see Using ZIP archive for N file update(s) whenever the update count is above the 50-file threshold. We will merge the branch into main after some internal testing, so feedback is welcome 😉 Cheers, Mike -
Hi Are there any online learning courses for processwire available? many thanks.
-
GitSync – Keep your (private) modules in sync with GitHub
matjazp replied to Mikel's topic in Modules/Plugins
@Mikel, thanks for the clarification. Just for info, I've forked the ProcessWireUpgrade module and modified it so it can upgrade modules (and dev core) to the latest commit, even if there is no version bump. For the issues I have: the main issue is that the request timeout and I get http error 500 making the download incomplete. I have GH api key. 2026-05-13 05:12:16 admin http://localhost/processwire/setup/gitsync/sync/ [manual] Sync "TracyDebugger" branch "master": 1121 remote, 4437 local, 1115 to update, 4430 to delete 2026-05-13 05:12:17 admin http://localhost/processwire/setup/gitsync/sync/ Updated: .gitattributes (48 bytes) ... 2026-05-13 05:13:55 admin http://localhost/processwire/setup/gitsync/sync/ Updated: scripts/ace-editor/mode-batchfile.js (5187 bytes) All together it managed to fetch 268 files in ~100 seconds. -
LoginPassKey has undergone some changes. Latest version is 0.3.1 available at https://github.com/clipmagic/LoginPassKey As well as some 'under the hood' security upgrades, you can now login without entering a username/email. Simply click the 'Login with PassKey' button and if all the checks pass, you're automatically logged into either the admin area, or the frontend via LoginRegisterPro depending on your config/setup. A full list of the changes available at https://github.com/clipmagic/LoginPassKey/blob/main/CHANGELOG.md
- Yesterday
-
PW 3.0.261 – Core updates + AgentTools updates
adrian replied to ryan's topic in News & Announcements
Another heads up for folks. It's not a PW bug but maybe could be considered a deprecation. I started getting this error: # ProcessWire\\WireException: Unknown column name(s) for findRaw: date_format.id in /wire/core/Pages/PagesRaw/PagesRaw.php:1816 ```php 1813 | protected function unknownFieldsException(array $fieldNames, $context = '') { 1814 | if($context) $context = " $context"; 1815 | $s = "Unknown$context name(s) for findRaw: " . implode(', ', $fieldNames); ► 1816 | throw new WireException($s); 1817 | } 1818 | } ``` The issue is that I had a table field (date_format) and a findRaw() that tried to load this array of fields: ['id','format','countries'] However table fields have no "id" field. In previous versions of PW this was silently ignored, but now the refactor of PagesRaw into wire/core/Pages/PagesRaw/ added strict column validation in findCustomField(), resulting in that exception. Hope that helps someone! -
GitSync – Keep your (private) modules in sync with GitHub
maximus replied to Mikel's topic in Modules/Plugins
I think if you connect repositories to Codex Cloud, then configure GitSync on the server, it should work in auto-deployment mode. But I haven't checked. @Mikel you are try this chain? -
wbmnfktr started following PW 3.0.261 – Core updates + AgentTools updates
-
PW 3.0.261 – Core updates + AgentTools updates
wbmnfktr replied to ryan's topic in News & Announcements
Had a bit of fun with the latest DEV version and AgentTools version... yet ran into some issues. 1. I asked the Engineer to get a good grasp of the project, explained what it was for and what the Engineer should look at. Got this response: Refreshed the page, waited a bit and got what I was looking for. The result was on point and the next task was executed without issues, it wrote a migration and what i was looking for. 2. A bit later I asked the Engineer to answer a question I found here in the forums and got: Every request was using GLM 5.1 which can run long tasks and has tons of tools calls it can process. Just some findings I wanted to report. -
GitSync – Keep your (private) modules in sync with GitHub
Mikel replied to Mikel's topic in Modules/Plugins
Hi, @matjazp thanks for the report! We fixed it by removing the 3 calls. Just upgrade the module to 0.2.1 They solve different problems. ProcessWireUpgrade is for stable releases, GitSync is for branch-based development workflows. ProcessWireUpgrade pulls from the official modules.processwire.com directory and compares semantic version numbers. It can upgrade the ProcessWire core itself (master or dev branch) and existing installed modules, but it cannot install new modules that aren't already present, doesn't support private repositories, doesn't support arbitrary branches per module, and uses a pull model (no webhook / no auto-sync on push). Each upgrade is a full download. GitSync pulls from any GitHub repository — public or private (using a fine-grained Personal Access Token for the latter). It works at the branch and commit level rather than the release level, lets you switch any linked module to any branch, and detects changes by comparing git blob SHAs file-by-file, so only modified files are downloaded. It can install brand-new modules from a GitHub URL (even ones not listed in the official directory), supports private repos, and offers GitHub webhook integration for automatic sync on every push. It does not upgrade the ProcessWire core. When to use ProcessWireUpgrade: Production servers that should only move to officially released versions Upgrading the ProcessWire core itself Mostly relying on modules from the official directory When to use GitSync: Test/staging servers that should track a development branch (e.g. develop, feature-x) live Deploying your own modules from private repositories without FTP Installing GitHub-hosted modules that aren't (yet) in the official directory Auto-deploy on every git push via webhook They can be combined: use ProcessWireUpgrade for the core, and GitSync for modules that you develop yourself or that aren´t in the PW directory. To narrow this down — could you share: Which action failed? Install from GitHub, Link Module, or Sync/Upgrade of an already-linked TracyDebugger? The error or behavior you saw — blank page, timeout, rate-limit message, partial sync, etc. The last lines of the gitsync log under Setup > Logs > gitsync. Whether you have a GitHub Personal Access Token configured (without one you're capped at 60 API requests/hour). The file count alone (~1,250) shouldn't be a problem for a normal upgrade — only changed files are downloaded. But it would be a problem for a fresh Install from GitHub, where every file is fetched in its own API call. The log will tell us which case you hit. We just tested and ran into zero problems: We installed Tracy via the Modules page added it to GitSync via the dropdown synced master branch One known gotcha worth checking: TracyDebugger writes runtime files (logs, bluescreens, dumps) into its own module directory. GitSync deletes local files that don't exist in the remote repo, so a large toDelete list with permission-protected files could also cause the upgrade to fail mid-way. Cheers, Mike -
GitSync – Keep your (private) modules in sync with GitHub
matjazp replied to Mikel's topic in Modules/Plugins
@mikel, would you mind fixing the issue I reported? How your module compare to ProcessWireUpgrade module form Ryan? Just to let you know, I couldn't upgrade TracyDebugger. I guess to many files? I also successfuly upgraded NativeAnalytics, but the module didn't worked well, like something was missing, maybe incomplete download or something? Not sure how to debug...