]> git.mxchange.org Git - friendica.git/commitdiff
Merge remote-tracking branch 'upstream/master'
authorMichael Vogel <icarus@dabo.de>
Mon, 5 Aug 2013 18:32:02 +0000 (20:32 +0200)
committerMichael Vogel <icarus@dabo.de>
Mon, 5 Aug 2013 18:32:02 +0000 (20:32 +0200)
include/bbcode.php
include/html2plain.php
include/onepoll.php
include/poller.php
library/OAuth1.php
library/twitteroauth.php
mod/search.php

index eaf412c35394bfae5e09ba4de1e603b6fc1d426e..62759d192e00249cab054cbbf35fe220e8d9b3db 100644 (file)
@@ -262,9 +262,9 @@ function bb_ShareAttributes($match) {
         preg_match('/posted="(.*?)"/ism', $attributes, $matches);
         if ($matches[1] != "")
                 $posted = $matches[1];
-               $reldate = (($posted) ? " " . relative_date($posted) : ''); 
+               $reldate = (($posted) ? " " . relative_date($posted) : '');
 
-        $headline = '<div class="shared_header">';
+        $headline = '<br /><div class="shared_header">';
 
        if ($avatar != "")
                $headline .= '<img src="'.$avatar.'" height="32" width="32" >';
@@ -300,11 +300,64 @@ function bb_ShareAttributesSimple($match) {
         if ($matches[1] != "")
                 $profile = $matches[1];
 
-        $text = "<br />".html_entity_decode("&#x2672; ", ENT_QUOTES, 'UTF-8').' <a href="'.$profile.'">'.$author."</a>: <br />»".$match[2]."«";
+       $userid = GetProfileUsername($profile,$author);
+
+        $text = "<br />".html_entity_decode("&#x2672; ", ENT_QUOTES, 'UTF-8').' <a href="'.$profile.'">'.$userid."</a>: <br />»".$match[2]."«";
+
+        return($text);
+}
+function bb_ShareAttributesSimple2($match) {
+
+        $attributes = $match[1];
+
+        $author = "";
+        preg_match("/author='(.*?)'/ism", $attributes, $matches);
+        if ($matches[1] != "")
+                $author = html_entity_decode($matches[1],ENT_QUOTES,'UTF-8');
+
+        preg_match('/author="(.*?)"/ism', $attributes, $matches);
+        if ($matches[1] != "")
+                $author = $matches[1];
+
+        $profile = "";
+        preg_match("/profile='(.*?)'/ism", $attributes, $matches);
+        if ($matches[1] != "")
+                $profile = $matches[1];
+
+        preg_match('/profile="(.*?)"/ism', $attributes, $matches);
+        if ($matches[1] != "")
+                $profile = $matches[1];
+
+       $userid = GetProfileUsername($profile,$author);
+
+        $text = "<br />".html_entity_decode("&#x2672; ", ENT_QUOTES, 'UTF-8').' <a href="'.$profile.'">'.$userid."</a>: <br />".$match[2];
 
         return($text);
 }
 
+function GetProfileUsername($profile, $username) {
+       $friendica = preg_replace("=https?://(.*)/profile/(.*)=ism", "$2@$1", $profile);
+       if ($friendica != $profile)
+               return($friendica);
+
+       $diaspora = preg_replace("=https?://(.*)/u/(.*)=ism", "$2@$1", $profile);
+       if ($diaspora != $profile)
+               return($diaspora);
+
+       $StatusnetHost = preg_replace("=https?://(.*)/user/(.*)=ism", "$1", $profile);
+       if ($StatusnetHost != $profile) {
+               $StatusnetUser = preg_replace("=https?://(.*)/user/(.*)=ism", "$2", $profile);
+               if ($StatusnetUser != $profile) {
+                       $UserData = fetch_url("http://".$StatusnetHost."/api/users/show.json?user_id=".$StatusnetUser);
+                       $user = json_decode($UserData);
+                       if ($user)
+                               return($user->screen_name."@".$StatusnetHost);
+               }
+       }
+
+       return($username);
+}
+
        // BBcode 2 HTML was written by WAY2WEB.net
        // extended to work with Mistpark/Friendica - Mike Macgirvin
 
@@ -553,8 +606,10 @@ function bbcode($Text,$preserve_nl = false, $tryoembed = true, $simplehtml = fal
        // Shared content
        if (!$simplehtml)
                $Text = preg_replace_callback("/\[share(.*?)\](.*?)\[\/share\]/ism","bb_ShareAttributes",$Text);
-       else
+       elseif ($simplehtml == 1)
                $Text = preg_replace_callback("/\[share(.*?)\](.*?)\[\/share\]/ism","bb_ShareAttributesSimple",$Text);
+       elseif ($simplehtml == 2)
+               $Text = preg_replace_callback("/\[share(.*?)\](.*?)\[\/share\]/ism","bb_ShareAttributesSimple2",$Text);
 
        $Text = preg_replace("/\[crypt\](.*?)\[\/crypt\]/ism",'<br/><img src="' .$a->get_baseurl() . '/images/lock_icon.gif" alt="' . t('Encrypted content') . '" title="' . t('Encrypted content') . '" /><br />', $Text);
        $Text = preg_replace("/\[crypt=(.*?)\](.*?)\[\/crypt\]/ism",'<br/><img src="' .$a->get_baseurl() . '/images/lock_icon.gif" alt="' . t('Encrypted content') . '" title="' . '$1' . ' ' . t('Encrypted content') . '" /><br />', $Text);
index 677faa9d584b97d6605a3d5d5d7b0a89609692b2..07de829656b9e4a6d2a8630b589dcae35093f3e5 100644 (file)
@@ -220,6 +220,9 @@ function html2plain($html, $wraplength = 75, $compact = false)
                                //$message .= "\n[".($counter++)."] ".$url;
        }
 
+       $message = str_replace("\n«", "«\n", $message);
+       $message = str_replace("»\n", "\n»", $message);
+
        do {
                $oldmessage = $message;
                $message = str_replace("\n\n\n", "\n\n", $message);
index 6ff58af6b4e31899cdc3e8749d504345428e357d..f38f6b4c61d88fbf54528267d3940e52f64530d5 100644 (file)
@@ -42,7 +42,7 @@ function onepoll_run(&$argv, &$argc){
        load_hooks();
 
        logger('onepoll: start');
-       
+
        $manual_id  = 0;
        $generation = 0;
        $hub_update = false;
@@ -56,7 +56,17 @@ function onepoll_run(&$argv, &$argc){
                logger('onepoll: no contact');
                return;
        }
-       
+
+       // Test
+       $lockpath = get_config('system','lockpath');
+       if ($lockpath != '') {
+               $pidfile = new pidfile($lockpath, 'onepoll'.$contact_id.'.lck');
+               if($pidfile->is_already_running()) {
+                       logger("onepoll: Already running for contact ".$contact_id);
+                       exit;
+               }
+       }
+
 
        $d = datetime_convert();
 
index e85a4555d31286767b6e8ebb10bd37a8b81bf7fc..e927430ea9e7ef6ab2831a2b35869c85d7fb7503 100644 (file)
@@ -122,6 +122,9 @@ function poller_run(&$argv, &$argc){
                // clear cache for photos
                clear_cache($a->get_basepath(), $a->get_basepath()."/photo");
 
+               // clear smarty cache
+               clear_cache($a->get_basepath()."/view/smarty3/compiled", $a->get_basepath()."/view/smarty3/compiled");
+
                set_config('system','cache_last_cleared', time());
        }
 
index 53b905e7714a5cbdc3d8effc40157d554958ddb5..994962a8587a1a0e0be72d8a246502e9dedfc90f 100644 (file)
@@ -423,8 +423,11 @@ class OAuthRequest {
   /**
    * builds the data one would send in a POST request
    */
-  public function to_postdata() {
-    return OAuthUtil::build_http_query($this->parameters);
+  public function to_postdata($raw = false) {
+    if ($raw)
+      return($this->parameters);
+    else
+      return OAuthUtil::build_http_query($this->parameters);
   }
 
   /**
index 009ad56bd4a3b76a7048dafd7b2724e2118ce7ef..24e831a9244b517834aa400b4064af7774e390f5 100644 (file)
@@ -184,6 +184,8 @@ class TwitterOAuth {
     switch ($method) {
     case 'GET':
       return $this->http($request->to_url(), 'GET');
+    case 'UPLOAD':
+      return $this->http($request->get_normalized_http_url(), 'POST', $request->to_postdata(true));
     default:
       return $this->http($request->get_normalized_http_url(), $method, $request->to_postdata());
     }
index f7d235d4581dec743f4986d4fd1c35ecdd9b230c..ebb7dc70d261c053421f34468768c71c56cd8a99 100644 (file)
@@ -141,12 +141,13 @@ function search_content(&$a) {
 
        if($tag) {
                //$sql_extra = sprintf(" AND `term`.`term` = '%s' AND `term`.`otype` = %d AND `term`.`type` = %d",
-               //                      dbesc(protect_sprintf($search)), intval(TERM_OBJ_POST), intval(TERM_HASHTAG));
-               //$sql_table = "`term` LEFT JOIN `item` ON `item`.`id` = `term`.`oid` AND `item`.`uid` = `term`.`uid` ";
-
-               $sql_extra = sprintf(" AND EXISTS (SELECT * FROM `term` WHERE `item`.`id` = `term`.`oid` AND `item`.`uid` = `term`.`uid` AND `term`.`term` = '%s' AND `term`.`otype` = %d AND `term`.`type` = %d) GROUP BY `item`.`uri` ",
+               $sql_extra = sprintf(" AND `term`.`term` = '%s' AND `term`.`otype` = %d AND `term`.`type` = %d group by `item`.`uri` ",
                                        dbesc(protect_sprintf($search)), intval(TERM_OBJ_POST), intval(TERM_HASHTAG));
-               $sql_table = "`item` FORCE INDEX (`uri`) ";
+               $sql_table = "`term` LEFT JOIN `item` ON `item`.`id` = `term`.`oid` AND `item`.`uid` = `term`.`uid` ";
+
+               //$sql_extra = sprintf(" AND EXISTS (SELECT * FROM `term` WHERE `item`.`id` = `term`.`oid` AND `item`.`uid` = `term`.`uid` AND `term`.`term` = '%s' AND `term`.`otype` = %d AND `term`.`type` = %d) GROUP BY `item`.`uri` ",
+               //                      dbesc(protect_sprintf($search)), intval(TERM_OBJ_POST), intval(TERM_HASHTAG));
+               //$sql_table = "`item` FORCE INDEX (`uri`) ";
        } else {
                if (get_config('system','use_fulltext_engine')) {
                        $sql_extra = sprintf(" AND MATCH (`item`.`body`, `item`.`title`) AGAINST ('%s' in boolean mode) ", dbesc(protect_sprintf($search)));