diff options
author | cash <cash.costello@gmail.com> | 2012-02-04 17:08:05 -0500 |
---|---|---|
committer | cash <cash.costello@gmail.com> | 2012-02-04 17:08:05 -0500 |
commit | c578c639527fad98ae60676ea58860809462d4dc (patch) | |
tree | 152630c2b9db3ebba33075d1f7a530302e40ba67 /mod | |
parent | e428dbd281c22e65e8cc00d1095ce4564c9dd1bf (diff) | |
download | elgg-c578c639527fad98ae60676ea58860809462d4dc.tar.gz elgg-c578c639527fad98ae60676ea58860809462d4dc.tar.bz2 |
Fixes #1853 matching UTF8 characters in usernames
Diffstat (limited to 'mod')
-rw-r--r-- | mod/thewire/start.php | 2 | ||||
-rw-r--r-- | mod/thewire/tests/regex.php | 6 |
2 files changed, 7 insertions, 1 deletions
diff --git a/mod/thewire/start.php b/mod/thewire/start.php index 202e3d1d6..fdaf91355 100644 --- a/mod/thewire/start.php +++ b/mod/thewire/start.php @@ -219,7 +219,7 @@ function thewire_filter($text) { // usernames $text = preg_replace( - '/(^|[^\w])@([\w.]+)/', + '/(^|[^\w])@([\p{L}\p{Nd}._]+)/u', '$1<a href="' . $CONFIG->wwwroot . 'thewire/owner/$2">@$2</a>', $text); diff --git a/mod/thewire/tests/regex.php b/mod/thewire/tests/regex.php index f5487a422..c73e06bdc 100644 --- a/mod/thewire/tests/regex.php +++ b/mod/thewire/tests/regex.php @@ -127,6 +127,12 @@ class TheWireRegexTest extends ElggCoreUnitTest { $expected = "test (" . $this->getUserWireLink('user') . ") test"; $result = thewire_filter($text); $this->assertEqual($result, $expected); + + // utf8 characters + $text = "@tyúkanyó"; + $expected = $this->getUserWireLink('tyúkanyó'); + $result = thewire_filter($text); + $this->assertEqual($result, $expected); } /** |