]> git.mxchange.org Git - friendica.git/blobdiff - include/api.php
I want HTML code!
[friendica.git] / include / api.php
index b77156dfaefbe6ea319f827dedbcb717cc126977..32579fe7d387959bb7972f5a116bdab9373aee7a 100644 (file)
                
                $start = $page*$count;
                
-       
+    $profile_url = $a->get_baseurl() . '/profile/' . $a->user['nickname'];
                if ($box=="sentbox") {
-                       $sql_extra = "`from-url`='%s'";
-               } else {
-                       $sql_extra = "`from-url`!='%s'";
+                       $sql_extra = "`from-url`='".dbesc( $profile_url )."'";
+               } elseif ($box=="conversation") {
+      $sql_extra = "`parent-uri`='".dbesc( $_GET["uri"] )  ."'";
+               } elseif ($box=="all") {
+      $sql_extra = "true";
+               } elseif ($box=="inbox") {
+                       $sql_extra = "`from-url`!='".dbesc( $profile_url )."'";
                }
                
                $r = q("SELECT * FROM `mail` WHERE uid=%d AND $sql_extra ORDER BY created DESC LIMIT %d,%d",
                                intval(local_user()),
-                               dbesc( $a->get_baseurl() . '/profile/' . $a->user['nickname'] ),
                                intval($start), intval($count)
-                          );
+               );
                
                $ret = Array();
                foreach($r as $item){
-                       switch ($box){
-                               case "inbox":
+                       if ($box == "inbox" || $item['from-url'] != $profile_url){
                                        $recipient = $user_info;
                                        $sender = api_get_user($a,$item['contact-id']);
-                                       break;
-                               case "sentbox":
+      } elseif ($box == "sentbox" || $item['from-url'] != $profile_url){
                                        $recipient = api_get_user($a,$item['contact-id']);
                                        $sender = $user_info;
-                                       break;
                        }
                                
-                       $ret[]=Array(
+                       $d=Array(
                                'id' => $item['id'],
                                'created_at'=> api_date($item['created']),
                                'sender_id'=> $sender['id'] ,
                                'sender_screen_name'=> $sender['screen_name'],
+                               'sender_profile_img'=> $item['from-photo'],
                                'sender'=> $sender,
                                'recipient_id'=> $recipient['id'],
                                'recipient_screen_name'=> $recipient['screen_name'],
                                'recipient'=> $recipient,
-                               
-                               'text'=> $item['title']."\n".html2plain(bbcode($item['body']), 0) ,
-                               
                        );
-                       
+      //don't send title to regular StatusNET requests to avoid confusing these apps
+                       if (isset($_GET["getText"])) {
+        $d['title'] = $item['title'] ;
+        if ($_GET["getText"] == "true") {
+          $d['text'] = bbcode($item['body']);
+        }
+      } else {
+        $d['text'] = $item['title']."\n".html2plain(bbcode($item['body']), 0);
+      }
+      if (isset($_GET["getUserObjects"]) && $_GET["getUserObjects"] == "false") {
+        unset($d['sender']); unset($d['recipient']);
+      }
+      $ret[]=$d;
                }
                
 
        function api_direct_messages_inbox(&$a, $type){
                return api_direct_messages_box($a, $type, "inbox");
        }
+       function api_direct_messages_all(&$a, $type){
+               return api_direct_messages_box($a, $type, "all");
+       }
+       function api_direct_messages_conversation(&$a, $type){
+               return api_direct_messages_box($a, $type, "conversation");
+       }
+       api_register_func('api/direct_messages/conversation','api_direct_messages_conversation',true);
+       api_register_func('api/direct_messages/all','api_direct_messages_all',true);
        api_register_func('api/direct_messages/sent','api_direct_messages_sentbox',true);
        api_register_func('api/direct_messages','api_direct_messages_inbox',true);