Mentions 2.0 — the @mention plugin, revived for PHP 8 and e107 v2
Mentions turns usernames written with an `@` (like `@admin`) in comments, chatbox posts and forum posts into links to the matching user profile. It also pops up a username auto-completion list as you type `@`, and can notify mentioned users by e-mail.
@ (like @admin) in comments, chatbox posts and forum posts into links to the matching user profile. It also pops up a username auto-completion list as you type @, and can notify mentioned users by e-mail.
The original plugin by Arun S. Sekher (v1.6.4) had stopped working on modern setups — among other things it threw a fatal error on the admin page under PHP 8. We've adopted and updated it. Mentions 2.0 runs on PHP 7.4–8.4 and current e107 v2.
Highlights of this release
- Security: the auto-complete endpoint is hardened — input length capped, values escaped with
toDB(),LIKEwildcards neutralized, result count limited in SQL, and banned users excluded. Debug logging no longer writes plaintext usernames or e-mail content into a web-accessible folder; it is off by default and writes to the protected e107 system log when enabled. - Fixed the PHP 8 fatal error when opening the plugin admin page
- Comment notifications now actually register (a string-vs-integer comparison meant the check was always false)
- Event callbacks for chatbox, comment and forum converted to static entry points — were unreliable/fatal on PHP 8
- Notification e-mail loop rewritten (no more skipped users or "undefined array key" warnings); PHP 8.1+ deprecations cleaned up
Tested on e107 Lite 2.4.0, in: chatbox, chatbox menu, forum quick answer, and comments.
Two limitations inherited from upstream: non-latin usernames are not matched by the parser, and an @word inside a forum title can affect the rest of the thread's rendering.
Get it
Install via GithubSync, or download directly from the repository:
https://github.com/Jimako-e107-plugins/e107-mentions-plugin
Thanks
Big thanks to Arun S. Sekher for the original Mentions plugin.