[Phpcms-plugins-cvs] lexiword lexiword.php,1.1.1.1,1.2
Brought to you by:
mjahn
From: Martin J. <mj...@us...> - 2004-07-27 13:15:03
|
Update of /cvsroot/phpcms-plugins/lexiword In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23607 Modified Files: lexiword.php Log Message: fixed some little bugs Index: lexiword.php =================================================================== RCS file: /cvsroot/phpcms-plugins/lexiword/lexiword.php,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -d -r1.1.1.1 -r1.2 --- lexiword.php 22 Apr 2004 08:05:49 -0000 1.1.1.1 +++ lexiword.php 27 Jul 2004 13:14:54 -0000 1.2 @@ -2,9 +2,9 @@ /** * LexiWord - Plugin für phpCMS * -* @author: Martin Jahn <ma...@ma...> +* @author: Martin Jahn <mj...@us...> * @license: GPL -* @version: 0.2beta +* @version: $Id$ * @package lexiword * * Das Plugin erkennt in einer Contentdatei alle vorkommenden Begriffe aus einer Glossardatei. @@ -47,15 +47,24 @@ * * 5. Fertig ;-) Gucken ob es funktioniert :-) **/ +/* +* $Log$ +* Revision 1.2 2004/07/27 13:14:54 mjahn +* fixed some little bugs +* +*/ /** +* 2004-07-27 +* Bugfix: +* Links werden nun richtig ersetzt +* Suchbegriffe können nun auch Leerzeichen beinhalten. +* * 2004-04-19 * Bugfix: * Die Begriffe wurden bisher mit der Schreibweise ersetzt, * wie sie in der Glossardatei steht. Ab sofort wird die Schreibweise * so beibehalten, wie sie vorgefunden wird -* Bugfix: -* **/ @@ -111,7 +120,7 @@ * * Die Namen der Tags müssen mit | getrennt werden. **/ -$ignoreTags = 'a|link|q|code'; +$ignoreTags = 'a|link|q|code|h2'; /* ############################################## @@ -141,9 +150,9 @@ * eventuell an eigene Formatierungen in der Glossardatei anpassen */ preg_match_all('$<dt>(.*?)</dt>\s*?<dd>(.*?)</dd>(\s*?<dd>.*?([http://|mailto:|ftp://]+://[^\s<>"]+).*?</dd>)*$sm',$lexikon,$entries); -/* echo '<!--'; + echo '<!--'; print_r($entries); - echo '-->';*/ + echo '-->'; /** * $entries ist ein Array * @@ -159,18 +168,18 @@ /** * erstelle die Arrays für Suchen und Ersetzen */ - for ($i = 0; $i<$max; $i++) { - $search[] = trim($entries[1][$i]); + for ($i = 0; $i<$max; $i++) { + $search[] = trim($entries[1][$i]); if (isset($entries[4][$i]) && trim($entries[4][$i])!='') { - $item = str_replace(array('%desc', '%link'),array(trim($entries[2][$i]),trim($entries[1][$i]), trim($entries[4][$i])) ,$formatlink); + $item = str_replace(array('%desc', '%link'), array (trim ($entries [2] [$i]), trim ($entries [4] [$i])), $formatlink); } else { - $item = str_replace(array('%desc'),array(trim($entries[2][$i]),trim($entries[1][$i])) ,$format); + $item = str_replace(array('%desc'),array(trim($entries[2][$i]),trim($entries[1][$i])) ,$format); } - $replace[] = $item; - } + $replace[] = $item; + } - foreach ($fields as $field) { - if (isset($PageContent->{$field})) { + foreach ($fields as $field) { + if (isset($PageContent->{$field})) { $content = join('',$PageContent->{$field}); // Ersetze die phpcms-Variablen, so daß sie in der RegEx wegen /e nicht mit ausgewertet werden @@ -183,7 +192,7 @@ if (trim($content)!='') { $max = count($search); for ($i=0; $i<$max; $i++) { - $s = $search[$i]; + $s = str_replace (' ', '\s', $search[$i]); $r = $replace[$i]; /* Auslesen des Textes aus dem Contentfeld */ if ($match_only_whole_words) { @@ -219,7 +228,5 @@ * klar singular/plural-Erkennung... ;-) * plus: Bindestriche gelten als Trenner zwischen zwei Worten... * Quotes und Klammern dito... -* Ausschluß von durch zwei Marken definierter Bereiche (z.B. innerhalb von Überschriften, Links, etc.) -* möglichst konfigurierbar **/ ?> \ No newline at end of file |