Learn More





DNN Community Blog

The Community Blog is a personal opinion of community members and by no means the official standpoint of DNN Corp or DNN Platform. This is a place to express personal thoughts about DNNPlatform, the community and its ecosystem. Do you have useful information that you would like to share with the DNN Community in a featured article or blog? If so, please contact .

The use of the Community Blog is covered by our Community Blog Guidelines - please read before commenting or posting.

Solved the annoying A1ert Error

As many of you know by now - if you type a1ert into a forum post (Note- I am using the number 1 in place of the lower case l) - then all the content after the aforesaid word is removed.

See the following Gemini Posts:

DNN-8220 DotNetNuke.PortalSecurity.FilterString truncates posts based on the word 'a1ert'

FOR-7206 Forums module: the word "a1ert" disapears in Forum posts and subject

DNN- 7215 Page names containing the word "a1ert" become uneditable in 4.8.2

The problem was that a Regex filter introduced as part of a Security fix to remove any potential use of the javascript a1ert function was too agressive.

The Regex was as follows:


The problem with this Regex is that after the t there is .* - the . indicates any character and the * indicates 0-n, so anytext after the offending word was also matched and removed.

The goal of the Regex is to remove use-cases where the word is used as javascript but NOT the normal use of the word.

After much fighting with Regex today - it is not my favourite language - I figured out the correct Regex to use:

a1ert[\s(nbsp; )]*\([\s(nbsp; )]*'?[\s(nbsp; )]*"?[\s( nbsp;)]*'?[\s(nbsp; )]*"?[\s(nbsp; )]*\)

The main change is to use \s (ie any white space) rather than . (any character). 

In addition we have to include the HTML Entity nbsp; (actually this is preceded by an & in the actual regex, but the editor displays this as a "space"  )  as possible white space as the FCK Editor will replace extra spaces by  .

Anyway - to cut a long story short, the new filter will trap

  • a1ert   (  )
  • a1ert  (  '  '  )
  • a1ert      ( "")

and any combination with variable whitespace (0-n).

but NOT  a1ert when used in a normal word.

As this is a long standing annoyance I have checked this into the 4.9.0 codebase so it will be fixed in the 4.9.0 Release.



Comment Form

Only registered users may post comments.


2sic Daniel Mettler (124)
Aderson Oliveira (15)
Alec Whittington (11)
Alex Shirley (10)
Andrew Nurse (30)
Anthony Glenwright (5)
Antonio Chagoury (28)
Ash Prasad (21)
Ben Schmidt (1)
Benjamin Hermann (25)
Benoit Sarton (9)
Beth Firebaugh (12)
Bill Walker (36)
Bob Kruger (5)
Brian Dukes (2)
Brice Snow (1)
Bruce Chapman (20)
Bryan Andrews (1)
cathal connolly (55)
Charles Nurse (163)
Chris Hammond (203)
Chris Paterra (55)
Clinton Patterson (28)
Cuong Dang (21)
Daniel Bartholomew (2)
Dave Buckner (2)
David Poindexter (3)
David Rodriguez (2)
Doug Howell (11)
Erik van Ballegoij (30)
Ernst Peter Tamminga (74)
Geoff Barlow (6)
Gifford Watkins (3)
Gilles Le Pigocher (3)
Ian Robinson (7)
Israel Martinez (17)
Jan Blomquist (2)
Jan Jonas (3)
Jaspreet Bhatia (1)
Jenni Merrifield (6)
Joe Brinkman (269)
John Mitchell (1)
Jon Henning (14)
Jonathan Sheely (4)
Jordan Coopersmith (1)
Joseph Craig (2)
Kan Ma (1)
Keivan Beigi (3)
Ken Grierson (10)
Kevin Schreiner (6)
Leigh Pointer (31)
Lorraine Young (60)
Malik Khan (1)
Matthias Schlomann (15)
Mauricio Márquez (5)
Michael Doxsey (7)
Michael Tobisch (3)
Michael Washington (202)
Mike Horton (19)
Mitchel Sellers (28)
Nathan Rover (3)
Navin V Nagiah (14)
Néstor Sánchez (31)
Nik Kalyani (14)
Peter Donker (52)
Philip Beadle (135)
Philipp Becker (4)
Richard Dumas (22)
Robert J Collins (5)
Roger Selwyn (8)
Ruben Lopez (1)
Ryan Martinez (1)
Salar Golestanian (4)
Sanjay Mehrotra (9)
Scott McCulloch (1)
Scott S (11)
Scott Wilkinson (3)
Scott Willhite (97)
Sebastian Leupold (80)
Shaun Walker (237)
Shawn Mehaffie (17)
Stefan Cullmann (12)
Stefan Kamphuis (12)
Steve Fabian (31)
Timo Breumelhof (24)
Tony Henrich (3)
Torsten Weggen (2)
Vicenç Masanas (27)
Vincent Nguyen (3)
Vitaly Kozadayev (6)
Will Morgenweck (37)
Will Strohl (163)
William Severance (5)
Try Evoq
For Free
Start Free Trial
a Demo
See Evoq Live
Need More Information?