]> git.mxchange.org Git - friendica.git/commitdiff
The title of bookmark links is now taken instead of the data that was fetched via...
authorMichael Vogel <icarus@dabo.de>
Sun, 27 Jul 2014 14:10:09 +0000 (16:10 +0200)
committerMichael Vogel <icarus@dabo.de>
Sun, 27 Jul 2014 14:10:09 +0000 (16:10 +0200)
include/bbcode.php
include/items.php

index 2f4b3df77eda9be256339d8292c3aad647380f5f..af14a57560b6c8d81d4af85b65c6e86634d7a45e 100644 (file)
@@ -64,7 +64,7 @@ function bb_attachment($Text, $plaintext = false, $tryoembed = true) {
                        else {
                                $text = sprintf('<span class="type-%s">', $type);
 
-                               $bookmark = array(sprintf('[bookmark=%s]%s[/bookmark]', $url, $title), $title, $url);
+                               $bookmark = array(sprintf('[bookmark=%s]%s[/bookmark]', $url, $title), $url, $title);
                                if ($tryoembed)
                                        $oembed = tryoembed($bookmark);
                                else
@@ -197,7 +197,8 @@ function stripcode_br_cb($s) {
 }
 
 function tryoembed($match){
-       $url = ((count($match)==2)?$match[1]:$match[2]);
+       //$url = ((count($match)==2)?$match[1]:$match[2]);
+       $url = $match[1];
 
        // Always embed the SSL version
        $url = str_replace(array("http://www.youtube.com/", "http://player.vimeo.com/"),
@@ -207,6 +208,9 @@ function tryoembed($match){
 
        $o = oembed_fetch_url($url);
 
+       if (isset($match[2]))
+               $o->title = $match[2];
+
        //echo "<pre>"; var_dump($match, $url, $o); killme();
 
        if ($o->type=="error") return $match[0];
@@ -792,7 +796,7 @@ function bbcode($Text,$preserve_nl = false, $tryoembed = true, $simplehtml = fal
 
        // Perform URL Search
        if ($tryoembed)
-               $Text = preg_replace_callback("/\[bookmark\=([^\]]*)\].*?\[\/bookmark\]/ism",'tryoembed',$Text);
+               $Text = preg_replace_callback("/\[bookmark\=([^\]]*)\](.*?)\[\/bookmark\]/ism",'tryoembed',$Text);
 
        if ($simplehtml == 5)
                $Text = preg_replace("/\[bookmark\=([^\]]*)\](.*?)\[\/bookmark\]/ism",'[url]$1[/url]',$Text);
index 5b8bb242b38d6b7204ddf7b6fac998082e1a777d..e9da49982baa5f09d2fccd79ff7843d1fe9ab12e 100644 (file)
@@ -939,7 +939,22 @@ function add_page_info_to_body($body, $texturl = false, $no_photos = false) {
        }
 
        if ($matches)
-               $body .= add_page_info($matches[1], $no_photos);
+               $footer = add_page_info($matches[1], $no_photos);
+
+       // Remove the link from the body if the link is attached at the end of the post
+       if (isset($footer) AND (trim($footer) != "") AND (strpos($footer, $matches[1]))) {
+               $removedlink = trim(str_replace($matches[1], "", $body));
+               if (strstr($body, $removedlink))
+                       $body = $removedlink;
+
+               $removedlink = trim(str_replace("[url]".$matches[1]."[/url]", "", $body));
+               if (strstr($body, $removedlink))
+                       $body = $removedlink;
+       }
+
+       // Add the page information to the bottom
+       if (isset($footer) AND (trim($footer) != ""))
+               $body .= $footer;
 
        return $body;
 }