]> git.mxchange.org Git - friendica.git/blobdiff - include/bb2diaspora.php
truncate overflow text on acl selector items (3 themes)
[friendica.git] / include / bb2diaspora.php
index 92f492116f84b49c48325e597f90328febd665f7..ca0c961b371c365f575fcd9ffa0980c32884d1a7 100644 (file)
@@ -43,6 +43,11 @@ function bb2diaspora($Text,$preserve_nl = false) {
        $Text = str_replace("<", "&lt;", $Text);
        $Text = str_replace(">", "&gt;", $Text);
 
+       // If we find any event code, turn it into an event.
+       // After we're finished processing the bbcode we'll 
+       // replace all of the event code with a reformatted version.
+
+       $ev = bbtoevent($Text);
 
        if($preserve_nl)
                $Text = str_replace(array("\n","\r"), array('',''),$Text);
@@ -57,8 +62,9 @@ function bb2diaspora($Text,$preserve_nl = false) {
        // [img]pathtoimage[/img]
 
 
-       $Text = preg_replace("/\[url\]([$URLSearchString]*)\[\/url\]/", '[$1]($1)', $Text);
-       $Text = preg_replace("(\[url\=([$URLSearchString]*)\](.*?)\[/url\])", '[$2]($1)', $Text);
+       $Text = preg_replace("/\[url\]([$URLSearchString]*)\[\/url\]/ism", '[$1]($1)', $Text);
+       $Text = preg_replace("/\#\[url\=([$URLSearchString]*)\](.*?)\[\/url\]/ism", '[#$2]($1)', $Text);
+       $Text = preg_replace("/\[url\=([$URLSearchString]*)\](.*?)\[\/url\]/ism", '[$2]($1)', $Text);
 
 //     $Text = preg_replace("/\[img\](.*?)\[\/img\]/", t('Image/photo: ') . '$1', $Text);
 //     $Text = preg_replace("/\[img\](.*?)\[\/img\]/", t('image/photo'), $Text);
@@ -159,19 +165,20 @@ function bb2diaspora($Text,$preserve_nl = false) {
 
 
        // oembed tag
-//     $Text = oembed_bbcode2html($Text);
+       //      $Text = oembed_bbcode2html($Text);
 
        // If we found an event earlier, strip out all the event code and replace with a reformatted version.
 
-//     if(x($ev,'desc') && x($ev,'start')) {
-//             $sub = format_event_html($ev);
+       if(x($ev,'desc') && x($ev,'start')) {
 
-       //      $Text = preg_replace("/\[event\-description\](.*?)\[\/event\-description\]/is",$sub,$Text);
-               //$Text = preg_replace("/\[event\-start\](.*?)\[\/event\-start\]/is",'',$Text);
-//             $Text = preg_replace("/\[event\-finish\](.*?)\[\/event\-finish\]/is",'',$Text);
-//             $Text = preg_replace("/\[event\-location\](.*?)\[\/event\-location\]/is",'',$Text);
-//             $Text = preg_replace("/\[event\-adjust\](.*?)\[\/event\-adjust\]/is",'',$Text);
-//     }
+               $sub = format_event_diaspora($ev);
+       
+               $Text = preg_replace("/\[event\-description\](.*?)\[\/event\-description\]/is",$sub,$Text);
+               $Text = preg_replace("/\[event\-start\](.*?)\[\/event\-start\]/is",'',$Text);
+               $Text = preg_replace("/\[event\-finish\](.*?)\[\/event\-finish\]/is",'',$Text);
+               $Text = preg_replace("/\[event\-location\](.*?)\[\/event\-location\]/is",'',$Text);
+               $Text = preg_replace("/\[event\-adjust\](.*?)\[\/event\-adjust\]/is",'',$Text);
+       }
 
 
        
@@ -179,3 +186,37 @@ function bb2diaspora($Text,$preserve_nl = false) {
 
        return $Text;
 }
+
+function format_event_diaspora($ev) {
+
+       if(! ((is_array($ev)) && count($ev)))
+               return '';
+
+       $bd_format = t('l F d, Y \@ g:i A') ; // Friday January 18, 2011 @ 8 AM
+
+       $o = 'Friendika event notification:' . "\n";
+
+       $o .= '**' . bb2diaspora($ev['desc']) .  '**' . "\n";
+
+       $o .= t('Starts:') . ' ' 
+               . (($ev['adjust']) ? day_translate(datetime_convert('UTC', 'UTC', 
+                       $ev['start'] , $bd_format ))
+                       :  day_translate(datetime_convert('UTC', 'UTC', 
+                       $ev['start'] , $bd_format)))
+               . "\n";
+
+       if(! $ev['nofinish'])
+               $o .= t('Finishes:') . ' ' 
+                       . (($ev['adjust']) ? day_translate(datetime_convert('UTC', 'UTC', 
+                               $ev['finish'] , $bd_format ))
+                               :  day_translate(datetime_convert('UTC', 'UTC', 
+                               $ev['finish'] , $bd_format )))
+                       . "\n";
+
+       if(strlen($ev['location']))
+               $o .= t('Location:') . bb2diaspora($ev['location']) 
+                       . "\n";
+
+       $o .= "\n";
+       return $o;
+}