diff options
author | friendica <info@friendica.com> | 2015-03-16 15:33:08 -0700 |
---|---|---|
committer | friendica <info@friendica.com> | 2015-03-16 15:33:08 -0700 |
commit | 52374bcd6e5726828219bed7a8c04f5456b167d5 (patch) | |
tree | d085bfc5976fb22c22c4520b3ae66aa8966385f5 /mod | |
parent | 4212a1f589862a9129d6856cb71a5911b40b7496 (diff) | |
download | volse-hubzilla-52374bcd6e5726828219bed7a8c04f5456b167d5.tar.gz volse-hubzilla-52374bcd6e5726828219bed7a8c04f5456b167d5.tar.bz2 volse-hubzilla-52374bcd6e5726828219bed7a8c04f5456b167d5.zip |
phase one of the great file storage unification - use one button for uploads of any type (image or attachment). We'll sort out which one it is and deal with it appropriately.
Diffstat (limited to 'mod')
-rw-r--r-- | mod/wall_attach.php | 31 |
1 files changed, 29 insertions, 2 deletions
diff --git a/mod/wall_attach.php b/mod/wall_attach.php index 47c097416..465c3e1cc 100644 --- a/mod/wall_attach.php +++ b/mod/wall_attach.php @@ -2,15 +2,42 @@ require_once('include/attach.php'); require_once('include/identity.php'); +require_once('include/photos.php'); function wall_attach_post(&$a) { if(argc() > 1) $channel = get_channel_by_nick(argv(1)); - else + elseif($_FILES['media']) { + require_once('include/api.php'); + $user_info = api_get_user($a); + $nick = $user_info['screen_name']; + $channel = get_channel_by_nick($user_info['screen_name']); + } + + if(! $channel) killme(); - $r = attach_store($channel,get_observer_hash()); + $observer = $a->get_observer(); + + + if($_FILES['userfile']['tmp_name']) { + $x = getimagesize($_FILES['userfile']['tmp_name']); + if(($x) && ($x[2] === IMG_GIF || $x[2] === IMG_JPG || $x[2] === IMG_JPEG || $x[2] === IMG_PNG)) { + $args = array( 'source' => 'editor', 'visible' => 0, 'contact_allow' => array($channel['channel_hash'])); + $ret = photo_upload($channel,$observer,$args); + if($ret['success']) { + echo "\n\n" . $ret['body'] . "\n\n"; + killme(); + } + if($using_api) + return; + notice($ret['message']); + killme(); + } + } + + $r = attach_store($channel,(($observer) ? $observer['xchan_hash'] : '')); if(! $r['success']) { notice( $r['message'] . EOL); |