From f78bc355e0e2f3af09467e40cf3bba34f57d40c1 Mon Sep 17 00:00:00 2001 From: x2003bruneau Date: Sat, 2 Sep 2006 13:53:37 +0000 Subject: [PATCH] Fix URL catcher for events Add URL catching for users' free text git-svn-id: svn+ssh://murphy/home/svn/platal/trunk@835 839d8a87-29fc-0310-9880-83ba4fa771e5 --- modules/events.php | 8 ++++---- modules/profile.php | 2 ++ templates/fiche.tpl | 2 +- 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/modules/events.php b/modules/events.php index 35fe2e9..af01c70 100644 --- a/modules/events.php +++ b/modules/events.php @@ -176,10 +176,10 @@ class EventsModule extends PLModule $page->assign('action', strtolower($action)); if ($action == 'Confirmer') { - $texte = preg_replace('/((http|ftp)+(s)?:\/\/[^<>\s]+)/i', - '\\0', $texte); - $texte = preg_replace('/([^,\s]+@[^,\s]+)/i', - '\\0', $texte); + $texte = preg_replace('/((?:https?|ftp):\/\/(?:\.*,*[a-z@0-9~%$£µ&i#\-+=_\/\?])*)/i', + '\\0', $texte); + $texte = preg_replace('/(?:mailto:)?([a-z0-9.\-+_]+@([\-.+_]?[a-z0-9])+)/i', + '\\0', $texte); require_once 'validations.inc.php'; $evtreq = new EvtReq($titre, $texte, $promo_min, $promo_max, $peremption, $valid_mesg, S::v('uid')); diff --git a/modules/profile.php b/modules/profile.php index 5e9fcb9..1a6c1b8 100644 --- a/modules/profile.php +++ b/modules/profile.php @@ -190,6 +190,8 @@ class ProfileModule extends PLModule $new = Env::v('modif') == 'new'; $user = get_user_details($login, S::v('uid'), $view); + $user['freetext'] = preg_replace('/((?:https?|ftp):\/\/(?:&|\.*,*[a-z@0-9~%$£µ&i#\-+=_\/\?])*)/i', + '\\0', $user['freetext']); $title = $user['prenom'] . ' ' . empty($user['nom_usage']) ? $user['nom'] : $user['nom_usage']; $page->assign('xorg_title', $title); diff --git a/templates/fiche.tpl b/templates/fiche.tpl index 10ec182..78689f7 100644 --- a/templates/fiche.tpl +++ b/templates/fiche.tpl @@ -116,7 +116,7 @@ function chgMainWinLoc( strPage ) { {if $x.gpxs_join}
Groupe(s) X : {$x.gpxs_join|smarty:nodefaults}
{/if} {/if} {if $x.web}
Site Web : {$x.web}
{/if} - {if $x.freetext}
Commentaires :
{$x.freetext|nl2br}
{/if} + {if $x.freetext}
Commentaires :
{$x.freetext|nl2br|smarty:nodefaults}
{/if} {if $x.adr} -- 2.1.4