119 |
('%\[\s*'. # [ |
('%\[\s*'. # [ |
120 |
'([a-z]+)\s*'. # (wordlink) |
'([a-z]+)\s*'. # (wordlink) |
121 |
':\s*'. # : |
':\s*'. # : |
122 |
'([^][<>"\'\\\\]+?)'. # (själva ordet) |
'([^][<>\\\\]+?)'. # (själva ordet) |
123 |
'\s*\]%ei', # ] |
'\s*\]%ei', # ] |
124 |
'wordlinksProc("\\1", "\\2")', |
'wordlinksProc("\\1", "\\2")', |
125 |
$doc); |
$doc); |
128 |
function wordlinksProc($name, $str) { |
function wordlinksProc($name, $str) { |
129 |
global $wordlinks; |
global $wordlinks; |
130 |
|
|
131 |
|
$str = stripslashes($str); |
132 |
$strenc = $str; |
$strenc = $str; |
|
if ($wordlinks[$name]['enc'] == 'susning') |
|
|
$strenc = wordlinksEncodingSusning($str); |
|
|
elseif ($wordlinks[$name]['enc'] == 'jargon') |
|
|
$strenc = wordlinksEncodingJargon($str); |
|
|
elseif ($wordlinks[$name]['enc'] == 'urlencode') |
|
|
$strenc = urlencode($str); |
|
133 |
|
|
134 |
$url = $wordlinks[$name]['url']; |
$url = $wordlinks[$name]['url']; |
135 |
if ($url == '') |
if ($url == '') |
136 |
return '*felaktig wordlink*'; |
return '*felaktig wordlink*'; |
137 |
|
|
138 |
|
switch ($wordlinks[$name]['enc']) { |
139 |
|
case 'susning': |
140 |
|
$strenc = wordlinksEncodingSusning($str); |
141 |
|
break; |
142 |
|
case 'jargon': |
143 |
|
$strenc = wordlinksEncodingJargon($str); |
144 |
|
break; |
145 |
|
case 'urlencode': |
146 |
|
$strenc = urlencode($str); |
147 |
|
break; |
148 |
|
} |
149 |
|
|
150 |
$url = ereg_replace(' WORD ', $strenc, $url); |
$url = ereg_replace(' WORD ', $strenc, $url); |
151 |
$url = "<a href=$url>$str</a>"; |
$url = "<a href=$url>$str</a>"; |
152 |
return $url; |
return $url; |
153 |
} |
} |
154 |
|
|
155 |
function wordlinksEncodingSusning($str) { |
function wordlinksEncodingSusning($str) { |
156 |
|
$str = preg_replace('/^([a-z])/e', "strtoupper('\\1')", $str); |
157 |
$str = urlencode($str); |
$str = urlencode($str); |
158 |
$str = ereg_replace('_', '%5F', $str); |
$str = ereg_replace('_', '%5F', $str); |
159 |
$str = ereg_replace('\+', '_', $str); |
$str = ereg_replace('\+', '_', $str); |