X-Git-Url: http://git.polytechnique.org/?a=blobdiff_plain;f=classes%2Fminiwiki.php;h=5af13647960b16f27e7a283abc28feca006af0af;hb=acbd98040d096aeb4cb2b5c5ec1f465a9146446e;hp=5b7bdbc93697488dc21efbc6e1e68625a146becb;hpb=1ea2ce3a43f0b4220b71b793a9477732b52c2e85;p=platal.git
diff --git a/classes/miniwiki.php b/classes/miniwiki.php
index 5b7bdbc..5af1364 100644
--- a/classes/miniwiki.php
+++ b/classes/miniwiki.php
@@ -32,6 +32,11 @@ class MiniWiki
// retours à la ligne avec \\
MiniWiki::Markup("/\\\\(?".">(\\\\*))\n/e", "str_repeat('
\n',strlen('$1'))", "str_repeat('\n',strlen('$1'))", "ligne1\\\\\nligne2");
+ // * unordered list
+ MiniWiki::Markup("/(^|\n)\*(([^\n]*(\n|$))(\*[^\n]*(\n|$))*)/se", "'
- '.str_replace(\"\\n*\",'
- ','$2').'
'", "'$0'", "* element1\n* element2\n* element3");
+ // # unordered list
+ MiniWiki::Markup("/(^|\n)#(([^\n]*(\n|$))(#[^\n]*(\n|$))*)/se", "'- '.str_replace(\"\\n#\",'
- ','$2').'
'", "'$0'", "# element1\n# element2\n# element3");
+
// bold, italic and others
// ''' bold '''
MiniWiki::Markup("/'''(.*?)'''/",'$1','*$1*', "'''gras'''");
@@ -50,8 +55,8 @@ class MiniWiki
// {- strikeout -}
MiniWiki::Markup("/\\{-(.*?)-\\}/",'$1','-$1-', "{-suppression-}");
// {color| colored text |}
- MiniWiki::Markup("/\{([a-z]+|\#[0-9a-f]{3,6})\|(.*?)\|\}/i", "$2", "$2",
- "{red|rouge|} {#ff0|jaune|} {#0000ff|bleu|}");
+ MiniWiki::Markup("/%([a-z]+|\#[0-9a-f]{3,6})%(.*?)%%/i", "$2", "$2",
+ "%red% texte en rouge %%\\\\\n%#ff0% texte en jaune %%\\\\\n%#0000ff% texte en bleu %%");
// [+ big +] [++ bigger ++] [+++ even bigger +++] ...
MiniWiki::Markup("/\\[(([-+])+)(.*?)\\1\\]/e","'$3'", "'$3'", "[+ grand +]\n\n[++ plus grand ++]\n\n[+++ encore plus grand +++]");
@@ -61,16 +66,11 @@ class MiniWiki
MiniWiki::$title_index = MiniWiki::Markup('/(\n|^)(!+)([^\n]*)/se', "'$1$3'",
"'$1$3'", "!titre1\n\n!!titre2\n\n!!!titre3");
- // * unordered list
- MiniWiki::Markup("/(^|\n)\*(([^\n]*(\n|$))(\*[^\n]*(\n|$))*)/se", "'- '.str_replace(\"\\n*\",'
- ','$2').'
'", "$0", "* element1\n* element2\n* element3");
- // # unordered list
- MiniWiki::Markup("/(^|\n)#(([^\n]*(\n|$))(#[^\n]*(\n|$))*)/se", "'- '.str_replace(\"\\n#\",'
- ','$2').'
'", "$0", "# element1\n# element2\n# element3");
-
// links
- MiniWiki::Markup('/((?:https?|ftp):\/\/(?:[\.\,\;\!\:]*[\w@~%$£µ&i#\-+=_\/\?])*)/ui', '\\0', '[\\0]');
- MiniWiki::Markup('/(\s|^|\\[\\[)www\.((?:[\.\,\;\!\:]*[\w@~%$£µ&i#\-+=_\/\?])*)/iu', '\\1www.\\2', '[http://www.\\2]');
- MiniWiki::Markup('/(?:mailto:)?([a-z0-9.\-+_]+@([\-.+_]?[a-z0-9])+)/i', '\\0', '[mailto:\\0]');
- MiniWiki::Markup('/\\[\\[\\s*.*<\/a>\\s*\|([^\\]]+)\\]\\]/i', '\\2', '\\2 [\\1]', "[[http://www.example.com|Mon site web]]\n\nhttp://www.example.com\n\ntest@example.com");
+ MiniWiki::Markup('/((?:https?|ftp):\/\/(?:[\.\,\;\!\:]*[\w@~%$£µ&i#\-+=_\/\?])*)/ui', '\\0', '<\\0>');
+ MiniWiki::Markup('/(\s|^|\\[\\[)www\.((?:[\.\,\;\!\:]*[\w@~%$£µ&i#\-+=_\/\?])*)/iu', '\\1www.\\2', '');
+ MiniWiki::Markup('/(?:mailto:)?([a-z0-9.\-+_]+@([\-.+_]?[a-z0-9])+)/i', '\\0', '<\\0>');
+ MiniWiki::Markup('/\\[\\[\\s*.*<\/a>\\s*\|([^\\]]+)\\]\\]/i', '\\2', '\\2 <\\1>', "[[http://www.example.com|Mon site web]]\n\nhttp://www.example.com\n\ntest@example.com");
// paragraphs and empty lines
MiniWiki::Markup("/\n\n/", '', "\n\n", "paragraphe1\n\nparagraphe2");
@@ -144,6 +144,11 @@ class MiniWiki
$oldrule12 = MiniWiki::$replacementHTML[MiniWiki::$title_index];
MiniWiki::$replacementHTML[MiniWiki::$title_index] = "'$0'";
}
+ //$text = trim($wiki);
+ //foreach (MiniWiki::$patternsWiki as $key=>$pattern) {
+ // echo $key . " - " . $pattern . "\n";
+ // $text = preg_replace($pattern, MiniWiki::$replacementText[$key], $text);
+ //}
$text = preg_replace(MiniWiki::$patternsWiki, MiniWiki::$replacementText, trim($wiki));
if (!$title) {
MiniWiki::$replacementHTML[MiniWiki::$title_index] = $oldrule12;