Project

General

Profile

« Previous | Next » 

Revision 680

Added by doc almost 17 years ago

module output_filter: added word boundary for the mailto regex part to avoid problems with text mails and mailto mails in one single line

View differences:

trunk/CHANGELOG
10 10
# = Bugfix
11 11
! = Update/Change
12 12

  
13
------------------------------------- 2.7.0 -------------------------------------
14
09-Feb-2008
13
------------------------------------- 2.7.0 -------------------------------------
14
09-Feb-2008 Christian Sommer
15
!	output_filter: added word boundary for the mailto regex part
16
09-Feb-2008 Thomas Hornwik
15 17
!	jsadmin: added latest changes from swen, fixes most (or all?) issues.
16 18
08-Feb-2008 Matthias Gallas
17 19
+	added kewyword id to all new files
18 20
08-Feb-2008 Christian Sommer
19 21
-	Removed admin module mail_filter
20 22
+	Added revised version of the output filter module
21
08-Feb-2008 Thomas Hornik
22
!	module news: set focus on captcha-field if user have to re-enter captcha
23
08-Feb-2008 Thomas Hornik

24
!	module news: set focus on captcha-field if user have to re-enter captcha

23 25
!	Changed maxlength of captcha-fields - don't tell the bots how many chars we want to have.
24 26
-	Removed unused function is_access_denied() from search
25 27
04-Feb-2008 Thomas Hornik
trunk/wb/modules/output_filter/filter-routines.php
89 89
		define('OUTPUT_FILTER_DOT_REPLACEMENT', $filter_settings['dot_replacement']);
90 90
		
91 91
		// first search part to find all mailto email addresses
92
		$pattern = '#(<a.*?href\s*?=\s*?"\s*?mailto\s*?:\s*?)([A-Z0-9._%+-]+@(?:[A-Z0-9-]+\.)+[A-Z]{2,4})([^"]*?)"([^>]*>)(.*?)</a>';
92
		$pattern = '#\b(<a.*?href\s*?=\s*?"\s*?mailto\s*?:\s*?)([A-Z0-9._%+-]+@(?:[A-Z0-9-]+\.)+[A-Z]{2,4})([^"]*?)"([^>]*>)(.*?)</a>\b';
93 93
		// second part to find all non mailto email addresses
94 94
		$pattern .= '|\b([A-Z0-9._%+-]+@(?:[A-Z0-9-]+\.)+[A-Z]{2,4})\b#i';
95 95
		/*
96
		Sub 1:(<a.*?href\s*?=\s*?"\s*?mailto\s*?:\s*?)					-->	"<a id="yyy" class="xxx" href = " mailto :" ignoring white spaces
96
		Sub 1:\b(<a.*?href\s*?=\s*?"\s*?mailto\s*?:\s*?)				-->	"<a id="yyy" class="xxx" href = " mailto :" ignoring white spaces
97 97
		Sub 2:([A-Z0-9._%+-]+@(?:[A-Z0-9-]+\.)+[A-Z]{2,4})			-->	the email address in the mailto: part of the mail link
98 98
		Sub 3:([^"]*?)"																					--> possible ?Subject&cc... stuff attached to the mail address
99 99
		Sub 4:([^>]*>)																					--> all class or id statements after the mailto but before closing ..>
100
		Sub 5:(.*?)</a>																					--> the mailto text; all characters between >xxxxx</a>
100
		Sub 5:(.*?)</a>\b																				--> the mailto text; all characters between >xxxxx</a>
101 101
		Sub 6:|\b([A-Z0-9._%+-]+@(?:[A-Z0-9-]+\.)+[A-Z]{2,4})\b	--> email addresses which may appear in the text (require word boundaries)
102 102
		*/
103 103
			

Also available in: Unified diff