]> git.mxchange.org Git - friendica.git/blobdiff - mod/share.php
added spaces (space-time!) and TODO that x() is maybe proper way?
[friendica.git] / mod / share.php
index 8358f67169ab84e88b37196e9d047d65570b2685..36a4d5945fcb4cc7b7bb07d8e862324104fa083b 100644 (file)
@@ -1,48 +1,48 @@
 <?php
-
-require_once('include/bbcode.php');
-
-function share_init(&$a) {
+function share_init(App $a) {
 
        $post_id = (($a->argc > 1) ? intval($a->argv[1]) : 0);
        if((! $post_id) || (! local_user()))
                killme();
 
-       $r = q("SELECT item.*, contact.network FROM `item` 
-               left join contact on `item`.`contact-id` = `contact`.`id` 
+       $r = q("SELECT item.*, contact.network FROM `item`
+               inner join contact on `item`.`contact-id` = `contact`.`id`
                WHERE `item`.`id` = %d AND `item`.`uid` = %d LIMIT 1",
 
                intval($post_id),
                intval(local_user())
        );
-       if(! count($r) || ($r[0]['private'] == 1))
+       if(! dbm::is_result($r) || ($r[0]['private'] == 1))
                killme();
 
-       if (intval(get_config('system','new_share'))) {
-               if (strpos($r[0]['body'], "[/share]") !== false) {
-                       $pos = strpos($r[0]['body'], "[share");
-                       $o = substr($r[0]['body'], $pos);
-               } else {
-                       $o = "[share author='".str_replace("'", "&#039;",$r[0]['author-name']).
-                               "' profile='".$r[0]['author-link'].
-                               "' avatar='".$r[0]['author-avatar'].
-                               "' link='".$r[0]['plink'].
-                               "' posted='".$r[0]['created']."']\n";
-                       if($r[0]['title'])
-                               $o .= '[b]'.$r[0]['title'].'[/b]'."\n";
-                       $o .= $r[0]['body'];
-                       $o.= "[/share]";
-               }
+       if (strpos($r[0]['body'], "[/share]") !== false) {
+               $pos = strpos($r[0]['body'], "[share");
+               $o = substr($r[0]['body'], $pos);
        } else {
-               $o = '';
+               $o = share_header($r[0]['author-name'], $r[0]['author-link'], $r[0]['author-avatar'], $r[0]['guid'], $r[0]['created'], $r[0]['plink']);
 
-               $o .= "\xE2\x99\xb2" . ' [url=' . $r[0]['author-link'] . ']' . $r[0]['author-name'] . '[/url]' . "\n";
                if($r[0]['title'])
-                       $o .= '[b]' . $r[0]['title'] . '[/b]' . "\n";
-               $o .= $r[0]['body'] . "\n" ;
-
-               $o .= (($r[0]['plink']) ? '[url=' . $r[0]['plink'] . ']' . t('link') . '[/url]' . "\n" : '');
+                       $o .= '[b]'.$r[0]['title'].'[/b]'."\n";
+               $o .= $r[0]['body'];
+               $o.= "[/share]";
        }
+
        echo $o;
        killme();
 }
+
+function share_header($author, $profile, $avatar, $guid, $posted, $link) {
+       $header = "[share author='".str_replace(array("'", "[", "]"), array("&#x27;", "&#x5B;", "&#x5D;"),$author).
+               "' profile='".str_replace(array("'", "[", "]"), array("&#x27;", "&#x5B;", "&#x5D;"),$profile).
+               "' avatar='".str_replace(array("'", "[", "]"), array("&#x27;", "&#x5B;", "&#x5D;"),$avatar);
+
+       if ($guid)
+               $header .= "' guid='".str_replace(array("'", "[", "]"), array("&#x27;", "&#x5B;", "&#x5D;"),$guid);
+
+       if ($posted)
+               $header .= "' posted='".str_replace(array("'", "[", "]"), array("&#x27;", "&#x5B;", "&#x5D;"),$posted);
+
+       $header .= "' link='".str_replace(array("'", "[", "]"), array("&#x27;", "&#x5B;", "&#x5D;"),$link)."']";
+
+       return $header;
+}