]> git.mxchange.org Git - friendica.git/commitdiff
waitman gobble media upload via api patch
authorfriendica <info@friendica.com>
Wed, 22 Feb 2012 07:35:50 +0000 (23:35 -0800)
committerfriendica <info@friendica.com>
Wed, 22 Feb 2012 07:35:50 +0000 (23:35 -0800)
include/api.php
mod/wall_upload.php

index 04f95ebd914bcc0aa3cc391d4234e0b04330b52f..28d6c3f4bda5919ef0a3cf167ca9e01c9ea6ca08 100755 (executable)
                return null;
        }
 
-       // TODO - media uploads
+/*Waitman Gobble Mod*/
+        function api_statuses_mediap(&$a, $type) {
+                if (local_user()===false) {
+                        logger('api_statuses_update: no user');
+                        return false;
+                }
+                $user_info = api_get_user($a);
+
+                $_REQUEST['type'] = 'wall';
+                $_REQUEST['profile_uid'] = local_user();
+                $_REQUEST['api_source'] = true;
+                $txt = urldecode(requestdata('status'));
+
+                require_once('library/HTMLPurifier.auto.php');
+                require_once('include/html2bbcode.php');
+
+                if((strpos($txt,'<') !== false) || (strpos($txt,'>') !== false)) {
+                       $txt = html2bb_video($txt);
+                       $config = HTMLPurifier_Config::createDefault();
+                        $config->set('Cache.DefinitionImpl', null);
+                       $purifier = new HTMLPurifier($config);
+                        $txt = $purifier->purify($txt);
+               }
+               $txt = html2bbcode($txt);
+               
+                $a->argv[1]=$user_info['screen_name']; //should be set to username?
+               
+               $_REQUEST['hush']='yeah'; //tell wall_upload function to return img info instead of echo
+                require_once('mod/wall_upload.php');
+               $bebop = wall_upload_post($a);
+                
+               //now that we have the img url in bbcode we can add it to the status and insert the wall item.
+                $_REQUEST['body']=$txt."\n\n".$bebop;
+                require_once('mod/item.php');
+                item_post($a);
+
+                // this should output the last post (the one we just posted).
+                return api_status_show($a,$type);
+        }
+        api_register_func('api/statuses/mediap','api_statuses_mediap', true);
+/*Waitman Gobble Mod*/
+
+
        function api_statuses_update(&$a, $type) {
                if (local_user()===false) {
                        logger('api_statuses_update: no user');
index 278c2135476648cc2723ac64f7420877cc45fb24..64f174a78e4763a58e445d153a21a4de73643ed1 100755 (executable)
@@ -101,10 +101,24 @@ function wall_upload_post(&$a) {
 
        $basename = basename($filename);
 
-       if(local_user() && intval(get_pconfig(local_user(),'system','plaintext')))
-               echo  "\n\n" . '[url=' . $a->get_baseurl() . '/photos/' . $page_owner_nick . '/image/' . $hash . '][img]' . $a->get_baseurl() . "/photo/{$hash}-{$smallest}.jpg[/img][/url]\n\n";
-       else
-               echo  '<br /><br /><a href="' . $a->get_baseurl() . '/photos/' . $page_owner_nick . '/image/' . $hash . '" ><img src="' . $a->get_baseurl() . "/photo/{$hash}-{$smallest}.jpg\" alt=\"$basename\" /></a><br /><br />";
+
+/* mod Waitman Gobble NO WARRANTY */
+
+//if we get the signal then return the image url info in BBCODE, otherwise this outputs the info and bails (for the ajax image uploader on wall post)
+        if ($_REQUEST['hush']!='yeah') {
+
+               /*existing code*/
+               if(local_user() && intval(get_pconfig(local_user(),'system','plaintext')))
+                       echo  "\n\n" . '[url=' . $a->get_baseurl() . '/photos/' . $page_owner_nick . '/image/' . $hash . '][img]' . $a->get_baseurl() . "/photo/{$hash}-{$smallest}.jpg[/img][/url]\n\n";
+               else
+                       echo  '<br /><br /><a href="' . $a->get_baseurl() . '/photos/' . $page_owner_nick . '/image/' . $hash . '" ><img src="' . $a->get_baseurl() . "/photo/{$hash}-{$smallest}.jpg\" alt=\"$basename\" /></a><br /><br />";
+               /*existing code*/
+               
+       } else {
+                $m = '[url=' . $a->get_baseurl() . '/photos/' . $page_owner_nick . '/image/' . $hash . '][img]' . $a->get_baseurl() . "/photo/{$hash}-{$smallest}.jpg[/img][/url]";
+               return($m);
+        }
+/* mod Waitman Gobble NO WARRANTY */
 
        killme();
        // NOTREACHED