openrat-cms

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs

commit 0edab9e1115a15fa2c115415e1281f884a2b6dcd
parent 0143fa525e0dfa9a4f9e418010422fbdd3e3a3da
Author: dankert <devnull@localhost>
Date:   Sat,  9 Dec 2006 17:57:07 +0100

Bugfix "quoting", Einbau Definitionslisten.

Diffstat:
serviceClasses/Line.class.php | 34++++++++++++++++++++++++++++------
1 file changed, 28 insertions(+), 6 deletions(-)

diff --git a/serviceClasses/Line.class.php b/serviceClasses/Line.class.php @@ -15,6 +15,7 @@ class Line var $source; // Der ursprüngliche Inhalt var $value; // Der textuelle Inhalt (sofern vorhanden) + var $isDefinition = false; // Definitionseintrag var $isList = false; // nicht-numerierte Liste var $isNumberedList = false; // numerierte Liste var $indent = 0; // Einschubtiefe der Liste @@ -25,14 +26,15 @@ class Line var $isTableOfContent = false; // Inhaltsverzeichnis - var $isTable = false; // Tabelle - var $isCode = false; // Code - var $isQuote = false; // Zitat - var $isQuotePraefix = false; // Zitatbeginn/-ende + var $isTable = false; // Tabelle + var $isCode = false; // Code + var $isQuote = false; // Zitat + var $isQuotePraefix = false; // Zitatbeginn/-ende var $isUnparsed = false; var $isEmpty = false; // Zeile ist leer + var $isNormal = false; // Zeile ist ohne besonderen Inhalt, d.h. keine Tabelle, kein Zitat, usw. @@ -75,6 +77,7 @@ class Line if ( substr($s,0,3*strlen($char))==str_repeat($char,3*strlen($char)) ) { $this->isHeadlineUnderline = true; + $this->isNormal = true; $this->level = intval($lev); } } @@ -82,8 +85,18 @@ class Line if ( $this->isAnErsterStelle($s,$text_markup['table-of-content']) ) { $this->isTableOfContent = true; + $this->isNumberedList = false; + $this->isList = false; $this->value = ''; } + elseif + ( $this->isHeadline || + $this->isHeadlineUnderline || + $this->isList || + $this->isNumberedList ) + { + ; + } elseif ( $this->isAnErsterStelle($s,$text_markup['table-cell-sep']) ) { $this->isTable = true; @@ -94,6 +107,10 @@ class Line $this->isCode = true; $this->value = ''; } + elseif ( strpos($s, $text_markup['definition-sep'])!== false ) + { + $this->isDefinition = true; + } elseif ( trim($s)==$text_markup['quote-line-begin'] ) { $this->isQuote = true; @@ -101,7 +118,8 @@ class Line elseif ( $this->isAnErsterStelle($s,$text_markup['quote']) && strlen(trim($s))>1 ) { $this->isQuotePraefix = true; - $this->level = strspn( str_replace(' ','',$s),$text_markup['quote'] ); + $this->value = ltrim(substr($s,strlen($text_markup['quote']))); + $this->level = strspn( str_replace(' ','',$s),$text_markup['quote'] ); } elseif ( $this->isAnErsterStelle($s,'`') ) { @@ -110,7 +128,11 @@ class Line } elseif ( $s == '' ) { - $this->isEmpty = true; + $this->isEmpty = true; + } + else + { + $this->isNormal = true; } }