From df4f77dadddc7bd756c3e4f72fa2fbe204cfff88 Mon Sep 17 00:00:00 2001 From: Friendika Date: Thu, 27 Jan 2011 03:46:09 -0800 Subject: roll version - now in alpha 2.1 --- mod/photos.php | 109 ++++++++++++++++++++++++++++++++++++++++++--------------- 1 file changed, 80 insertions(+), 29 deletions(-) (limited to 'mod') diff --git a/mod/photos.php b/mod/photos.php index e811ca395..ecf5031b3 100644 --- a/mod/photos.php +++ b/mod/photos.php @@ -1,5 +1,4 @@ $val) { + logger('mod/photos.php: photos_post(): $_REQUEST key: ' . $key . ' val: ' . $val , 'LOGGER_DEBUG'); +} + +foreach($_FILES AS $key => $val) { + logger('mod/photos.php: photos_post(): $_FILES key: ' . $key . ' val: ' . $val , 'LOGGER_DEBUG'); +} + $can_post = false; $visitor = 0; @@ -466,18 +474,20 @@ function photos_post(&$a) { } - // default post action - upload a photo + /** + * default post action - upload a photo + */ - if(! x($_FILES,'userfile')) - killme(); + call_hooks('photo_post_init', $_POST); - if($_POST['partitionCount']) - $java_upload = true; - else - $java_upload = false; + /** + * Determine the album to use + */ + + $album = notags(trim($_REQUEST['album'])); + $newalbum = notags(trim($_REQUEST['newalbum'])); - $album = notags(trim($_POST['album'])); - $newalbum = notags(trim($_POST['newalbum'])); + logger('mod/photos.php: photos_post(): album= ' . $album . ' newalbum= ' . $newalbum , 'LOGGER_DEBUG'); if(! strlen($album)) { if(strlen($newalbum)) @@ -486,6 +496,16 @@ function photos_post(&$a) { $album = datetime_convert('UTC',date_default_timezone_get(),'now', 'Y'); } + /** + * + * We create a wall item for every photo, but we don't want to + * overwhelm the data stream with a hundred newly uploaded photos. + * So we will make one photo (the first one uploaded to this album) + * visible by default, the rest will become visible over time when and if + * they acquire comments, likes, dislikes, and/or tags + * + */ + $r = q("SELECT * FROM `photo` WHERE `album` = '%s' AND `uid` = %d", dbesc($album), intval($page_owner_uid) @@ -495,15 +515,25 @@ function photos_post(&$a) { else $visible = 0; + $str_group_allow = perms2str(((is_array($_REQUEST['group_allow'])) ? $_REQUEST['group_allow'] : explode(',',$_REQUEST['group_allow']))); + $str_contact_allow = perms2str(((is_array($_REQUEST['contact_allow'])) ? $_REQUEST['contact_allow'] : explode(',',$_REQUEST['contact_allow']))); + $str_group_deny = perms2str(((is_array($_REQUEST['group_deny'])) ? $_REQUEST['group_deny'] : explode(',',$_REQUEST['group_deny']))); + $str_contact_deny = perms2str(((is_array($_REQUEST['contact_deny'])) ? $_REQUEST['contact_deny'] : explode(',',$_REQUEST['contact_deny']))); - $str_group_allow = perms2str($_POST['group_allow']); - $str_contact_allow = perms2str($_POST['contact_allow']); - $str_group_deny = perms2str($_POST['group_deny']); - $str_contact_deny = perms2str($_POST['contact_deny']); + $ret = array('src' => '', 'filename' => '', 'filesize' => 0); - $src = $_FILES['userfile']['tmp_name']; - $filename = basename($_FILES['userfile']['name']); - $filesize = intval($_FILES['userfile']['size']); + call_hooks('photo_post_file',$ret); +logger('after post_file'); + if(x($ret,'src') && x($ret,'filesize')) { + $src = $ret['src']; + $filename = $ret['filename']; + $filesize = $ret['filesize']; + } + else { + $src = $_FILES['userfile']['tmp_name']; + $filename = basename($_FILES['userfile']['name']); + $filesize = intval($_FILES['userfile']['size']); + } $maximagesize = get_config('system','maximagesize'); @@ -513,10 +543,13 @@ function photos_post(&$a) { return; } + logger('mod/photos.php: photos_post(): loading the contents of ' . $src , 'LOGGER_DEBUG'); + $imagedata = @file_get_contents($src); $ph = new Photo($imagedata); if(! $ph->is_valid()) { + logger('mod/photos.php: photos_post(): unable to process image' , 'LOGGER_DEBUG'); notice( t('Unable to process image.') . EOL ); @unlink($src); killme(); @@ -524,7 +557,7 @@ function photos_post(&$a) { @unlink($src); - $width = $ph->getWidth(); + $width = $ph->getWidth(); $height = $ph->getHeight(); $smallest = 0; @@ -534,6 +567,7 @@ function photos_post(&$a) { $r = $ph->store($page_owner_uid, $visitor, $photo_hash, $filename, $album, 0 , 0, $str_contact_allow, $str_group_allow, $str_contact_deny, $str_group_deny); if(! $r) { + logger('mod/photos.php: photos_post(): image store failed' , 'LOGGER_DEBUG'); notice( t('Image upload failed.') . EOL ); killme(); } @@ -555,7 +589,6 @@ function photos_post(&$a) { // Create item container - $arr = array(); $arr['uid'] = $page_owner_uid; @@ -584,14 +617,13 @@ function photos_post(&$a) { $item_id = item_store($arr); - if(! $java_upload) { - goaway($a->get_baseurl() . '/' . $_SESSION['photo_return']); - return; // NOTREACHED - } + call_hooks('photo_post_end',intval($item_id)); - killme(); - return; // NOTREACHED + // addon uploaders should call "killme()" [e.g. exit] within the photo_post_end hook + // if they do not wish to be redirected + goaway($a->get_baseurl() . '/' . $_SESSION['photo_return']); + // NOTREACHED } @@ -737,6 +769,22 @@ function photos_content(&$a) { $celeb = ((($a->user['page-flags'] == PAGE_SOAPBOX) || ($a->user['page-flags'] == PAGE_COMMUNITY)) ? true : false); $albumselect .= ''; + + $uploader = ''; + + $ret = array('post_url' => $a->get_baseurl() . '/photos/' . $a->data['user']['nickname'], + 'addon_text' => $uploader, + 'default_upload' => true); + + + call_hooks('photo_upload_form',$ret); + + $default_upload = '
+
'; + + + + $tpl = load_view_file('view/photos_upload.tpl'); $o .= replace_macros($tpl,array( '$pagename' => t('Upload Photos'), @@ -744,14 +792,16 @@ function photos_content(&$a) { '$nickname' => $a->data['user']['nickname'], '$newalbum' => t('New album name: '), '$existalbumtext' => t('or existing album name: '), - '$filestext' => t('Select files to upload: '), '$albumselect' => $albumselect, '$permissions' => t('Permissions'), '$aclselect' => (($visitor) ? '' : populate_acl($a->user, $celeb)), + '$uploader' => $ret['addon_text'], + '$filestext' => t('Select files to upload: '), '$archive' => $a->get_baseurl() . '/jumploader_z.jar', '$nojava' => t('Use the following controls only if the Java uploader [above] fails to launch.'), - '$uploadurl' => $a->get_baseurl() . '/photos/' . $a->data['user']['nickname'], - '$submit' => t('Submit') + '$default' => (($ret['default_upload']) ? $default_upload : ''), + '$uploadurl' => $ret['post_url'] + )); return $o; @@ -1154,3 +1204,4 @@ function photos_content(&$a) { $o .= paginate($a); return $o; } + -- cgit v1.2.3 From e8a3166fa9caa1bdff90526886ae705bc44c4ac8 Mon Sep 17 00:00:00 2001 From: Friendika Date: Thu, 27 Jan 2011 03:50:56 -0800 Subject: Revert "roll version - now in alpha 2.1" This reverts commit df4f77dadddc7bd756c3e4f72fa2fbe204cfff88. --- mod/photos.php | 109 +++++++++++++++------------------------------------------ 1 file changed, 29 insertions(+), 80 deletions(-) (limited to 'mod') diff --git a/mod/photos.php b/mod/photos.php index ecf5031b3..e811ca395 100644 --- a/mod/photos.php +++ b/mod/photos.php @@ -1,4 +1,5 @@ $val) { - logger('mod/photos.php: photos_post(): $_REQUEST key: ' . $key . ' val: ' . $val , 'LOGGER_DEBUG'); -} -foreach($_FILES AS $key => $val) { - logger('mod/photos.php: photos_post(): $_FILES key: ' . $key . ' val: ' . $val , 'LOGGER_DEBUG'); -} +function photos_post(&$a) { $can_post = false; $visitor = 0; @@ -474,20 +466,18 @@ foreach($_FILES AS $key => $val) { } - /** - * default post action - upload a photo - */ - - call_hooks('photo_post_init', $_POST); + // default post action - upload a photo - /** - * Determine the album to use - */ + if(! x($_FILES,'userfile')) + killme(); - $album = notags(trim($_REQUEST['album'])); - $newalbum = notags(trim($_REQUEST['newalbum'])); + if($_POST['partitionCount']) + $java_upload = true; + else + $java_upload = false; - logger('mod/photos.php: photos_post(): album= ' . $album . ' newalbum= ' . $newalbum , 'LOGGER_DEBUG'); + $album = notags(trim($_POST['album'])); + $newalbum = notags(trim($_POST['newalbum'])); if(! strlen($album)) { if(strlen($newalbum)) @@ -496,16 +486,6 @@ foreach($_FILES AS $key => $val) { $album = datetime_convert('UTC',date_default_timezone_get(),'now', 'Y'); } - /** - * - * We create a wall item for every photo, but we don't want to - * overwhelm the data stream with a hundred newly uploaded photos. - * So we will make one photo (the first one uploaded to this album) - * visible by default, the rest will become visible over time when and if - * they acquire comments, likes, dislikes, and/or tags - * - */ - $r = q("SELECT * FROM `photo` WHERE `album` = '%s' AND `uid` = %d", dbesc($album), intval($page_owner_uid) @@ -515,25 +495,15 @@ foreach($_FILES AS $key => $val) { else $visible = 0; - $str_group_allow = perms2str(((is_array($_REQUEST['group_allow'])) ? $_REQUEST['group_allow'] : explode(',',$_REQUEST['group_allow']))); - $str_contact_allow = perms2str(((is_array($_REQUEST['contact_allow'])) ? $_REQUEST['contact_allow'] : explode(',',$_REQUEST['contact_allow']))); - $str_group_deny = perms2str(((is_array($_REQUEST['group_deny'])) ? $_REQUEST['group_deny'] : explode(',',$_REQUEST['group_deny']))); - $str_contact_deny = perms2str(((is_array($_REQUEST['contact_deny'])) ? $_REQUEST['contact_deny'] : explode(',',$_REQUEST['contact_deny']))); - $ret = array('src' => '', 'filename' => '', 'filesize' => 0); + $str_group_allow = perms2str($_POST['group_allow']); + $str_contact_allow = perms2str($_POST['contact_allow']); + $str_group_deny = perms2str($_POST['group_deny']); + $str_contact_deny = perms2str($_POST['contact_deny']); - call_hooks('photo_post_file',$ret); -logger('after post_file'); - if(x($ret,'src') && x($ret,'filesize')) { - $src = $ret['src']; - $filename = $ret['filename']; - $filesize = $ret['filesize']; - } - else { - $src = $_FILES['userfile']['tmp_name']; - $filename = basename($_FILES['userfile']['name']); - $filesize = intval($_FILES['userfile']['size']); - } + $src = $_FILES['userfile']['tmp_name']; + $filename = basename($_FILES['userfile']['name']); + $filesize = intval($_FILES['userfile']['size']); $maximagesize = get_config('system','maximagesize'); @@ -543,13 +513,10 @@ logger('after post_file'); return; } - logger('mod/photos.php: photos_post(): loading the contents of ' . $src , 'LOGGER_DEBUG'); - $imagedata = @file_get_contents($src); $ph = new Photo($imagedata); if(! $ph->is_valid()) { - logger('mod/photos.php: photos_post(): unable to process image' , 'LOGGER_DEBUG'); notice( t('Unable to process image.') . EOL ); @unlink($src); killme(); @@ -557,7 +524,7 @@ logger('after post_file'); @unlink($src); - $width = $ph->getWidth(); + $width = $ph->getWidth(); $height = $ph->getHeight(); $smallest = 0; @@ -567,7 +534,6 @@ logger('after post_file'); $r = $ph->store($page_owner_uid, $visitor, $photo_hash, $filename, $album, 0 , 0, $str_contact_allow, $str_group_allow, $str_contact_deny, $str_group_deny); if(! $r) { - logger('mod/photos.php: photos_post(): image store failed' , 'LOGGER_DEBUG'); notice( t('Image upload failed.') . EOL ); killme(); } @@ -589,6 +555,7 @@ logger('after post_file'); // Create item container + $arr = array(); $arr['uid'] = $page_owner_uid; @@ -617,13 +584,14 @@ logger('after post_file'); $item_id = item_store($arr); - call_hooks('photo_post_end',intval($item_id)); + if(! $java_upload) { + goaway($a->get_baseurl() . '/' . $_SESSION['photo_return']); + return; // NOTREACHED + } - // addon uploaders should call "killme()" [e.g. exit] within the photo_post_end hook - // if they do not wish to be redirected + killme(); + return; // NOTREACHED - goaway($a->get_baseurl() . '/' . $_SESSION['photo_return']); - // NOTREACHED } @@ -769,22 +737,6 @@ function photos_content(&$a) { $celeb = ((($a->user['page-flags'] == PAGE_SOAPBOX) || ($a->user['page-flags'] == PAGE_COMMUNITY)) ? true : false); $albumselect .= ''; - - $uploader = ''; - - $ret = array('post_url' => $a->get_baseurl() . '/photos/' . $a->data['user']['nickname'], - 'addon_text' => $uploader, - 'default_upload' => true); - - - call_hooks('photo_upload_form',$ret); - - $default_upload = '
-
'; - - - - $tpl = load_view_file('view/photos_upload.tpl'); $o .= replace_macros($tpl,array( '$pagename' => t('Upload Photos'), @@ -792,16 +744,14 @@ function photos_content(&$a) { '$nickname' => $a->data['user']['nickname'], '$newalbum' => t('New album name: '), '$existalbumtext' => t('or existing album name: '), + '$filestext' => t('Select files to upload: '), '$albumselect' => $albumselect, '$permissions' => t('Permissions'), '$aclselect' => (($visitor) ? '' : populate_acl($a->user, $celeb)), - '$uploader' => $ret['addon_text'], - '$filestext' => t('Select files to upload: '), '$archive' => $a->get_baseurl() . '/jumploader_z.jar', '$nojava' => t('Use the following controls only if the Java uploader [above] fails to launch.'), - '$default' => (($ret['default_upload']) ? $default_upload : ''), - '$uploadurl' => $ret['post_url'] - + '$uploadurl' => $a->get_baseurl() . '/photos/' . $a->data['user']['nickname'], + '$submit' => t('Submit') )); return $o; @@ -1204,4 +1154,3 @@ function photos_content(&$a) { $o .= paginate($a); return $o; } - -- cgit v1.2.3 From 076c25e1034f35e486bf5a38c186ab897de4e3b6 Mon Sep 17 00:00:00 2001 From: Friendika Date: Thu, 27 Jan 2011 03:52:18 -0800 Subject: Revert "Revert "roll version - now in alpha 2.1"" This reverts commit e8a3166fa9caa1bdff90526886ae705bc44c4ac8. --- mod/photos.php | 109 ++++++++++++++++++++++++++++++++++++++++++--------------- 1 file changed, 80 insertions(+), 29 deletions(-) (limited to 'mod') diff --git a/mod/photos.php b/mod/photos.php index e811ca395..ecf5031b3 100644 --- a/mod/photos.php +++ b/mod/photos.php @@ -1,5 +1,4 @@ $val) { + logger('mod/photos.php: photos_post(): $_REQUEST key: ' . $key . ' val: ' . $val , 'LOGGER_DEBUG'); +} + +foreach($_FILES AS $key => $val) { + logger('mod/photos.php: photos_post(): $_FILES key: ' . $key . ' val: ' . $val , 'LOGGER_DEBUG'); +} + $can_post = false; $visitor = 0; @@ -466,18 +474,20 @@ function photos_post(&$a) { } - // default post action - upload a photo + /** + * default post action - upload a photo + */ - if(! x($_FILES,'userfile')) - killme(); + call_hooks('photo_post_init', $_POST); - if($_POST['partitionCount']) - $java_upload = true; - else - $java_upload = false; + /** + * Determine the album to use + */ + + $album = notags(trim($_REQUEST['album'])); + $newalbum = notags(trim($_REQUEST['newalbum'])); - $album = notags(trim($_POST['album'])); - $newalbum = notags(trim($_POST['newalbum'])); + logger('mod/photos.php: photos_post(): album= ' . $album . ' newalbum= ' . $newalbum , 'LOGGER_DEBUG'); if(! strlen($album)) { if(strlen($newalbum)) @@ -486,6 +496,16 @@ function photos_post(&$a) { $album = datetime_convert('UTC',date_default_timezone_get(),'now', 'Y'); } + /** + * + * We create a wall item for every photo, but we don't want to + * overwhelm the data stream with a hundred newly uploaded photos. + * So we will make one photo (the first one uploaded to this album) + * visible by default, the rest will become visible over time when and if + * they acquire comments, likes, dislikes, and/or tags + * + */ + $r = q("SELECT * FROM `photo` WHERE `album` = '%s' AND `uid` = %d", dbesc($album), intval($page_owner_uid) @@ -495,15 +515,25 @@ function photos_post(&$a) { else $visible = 0; + $str_group_allow = perms2str(((is_array($_REQUEST['group_allow'])) ? $_REQUEST['group_allow'] : explode(',',$_REQUEST['group_allow']))); + $str_contact_allow = perms2str(((is_array($_REQUEST['contact_allow'])) ? $_REQUEST['contact_allow'] : explode(',',$_REQUEST['contact_allow']))); + $str_group_deny = perms2str(((is_array($_REQUEST['group_deny'])) ? $_REQUEST['group_deny'] : explode(',',$_REQUEST['group_deny']))); + $str_contact_deny = perms2str(((is_array($_REQUEST['contact_deny'])) ? $_REQUEST['contact_deny'] : explode(',',$_REQUEST['contact_deny']))); - $str_group_allow = perms2str($_POST['group_allow']); - $str_contact_allow = perms2str($_POST['contact_allow']); - $str_group_deny = perms2str($_POST['group_deny']); - $str_contact_deny = perms2str($_POST['contact_deny']); + $ret = array('src' => '', 'filename' => '', 'filesize' => 0); - $src = $_FILES['userfile']['tmp_name']; - $filename = basename($_FILES['userfile']['name']); - $filesize = intval($_FILES['userfile']['size']); + call_hooks('photo_post_file',$ret); +logger('after post_file'); + if(x($ret,'src') && x($ret,'filesize')) { + $src = $ret['src']; + $filename = $ret['filename']; + $filesize = $ret['filesize']; + } + else { + $src = $_FILES['userfile']['tmp_name']; + $filename = basename($_FILES['userfile']['name']); + $filesize = intval($_FILES['userfile']['size']); + } $maximagesize = get_config('system','maximagesize'); @@ -513,10 +543,13 @@ function photos_post(&$a) { return; } + logger('mod/photos.php: photos_post(): loading the contents of ' . $src , 'LOGGER_DEBUG'); + $imagedata = @file_get_contents($src); $ph = new Photo($imagedata); if(! $ph->is_valid()) { + logger('mod/photos.php: photos_post(): unable to process image' , 'LOGGER_DEBUG'); notice( t('Unable to process image.') . EOL ); @unlink($src); killme(); @@ -524,7 +557,7 @@ function photos_post(&$a) { @unlink($src); - $width = $ph->getWidth(); + $width = $ph->getWidth(); $height = $ph->getHeight(); $smallest = 0; @@ -534,6 +567,7 @@ function photos_post(&$a) { $r = $ph->store($page_owner_uid, $visitor, $photo_hash, $filename, $album, 0 , 0, $str_contact_allow, $str_group_allow, $str_contact_deny, $str_group_deny); if(! $r) { + logger('mod/photos.php: photos_post(): image store failed' , 'LOGGER_DEBUG'); notice( t('Image upload failed.') . EOL ); killme(); } @@ -555,7 +589,6 @@ function photos_post(&$a) { // Create item container - $arr = array(); $arr['uid'] = $page_owner_uid; @@ -584,14 +617,13 @@ function photos_post(&$a) { $item_id = item_store($arr); - if(! $java_upload) { - goaway($a->get_baseurl() . '/' . $_SESSION['photo_return']); - return; // NOTREACHED - } + call_hooks('photo_post_end',intval($item_id)); - killme(); - return; // NOTREACHED + // addon uploaders should call "killme()" [e.g. exit] within the photo_post_end hook + // if they do not wish to be redirected + goaway($a->get_baseurl() . '/' . $_SESSION['photo_return']); + // NOTREACHED } @@ -737,6 +769,22 @@ function photos_content(&$a) { $celeb = ((($a->user['page-flags'] == PAGE_SOAPBOX) || ($a->user['page-flags'] == PAGE_COMMUNITY)) ? true : false); $albumselect .= ''; + + $uploader = ''; + + $ret = array('post_url' => $a->get_baseurl() . '/photos/' . $a->data['user']['nickname'], + 'addon_text' => $uploader, + 'default_upload' => true); + + + call_hooks('photo_upload_form',$ret); + + $default_upload = '
+
'; + + + + $tpl = load_view_file('view/photos_upload.tpl'); $o .= replace_macros($tpl,array( '$pagename' => t('Upload Photos'), @@ -744,14 +792,16 @@ function photos_content(&$a) { '$nickname' => $a->data['user']['nickname'], '$newalbum' => t('New album name: '), '$existalbumtext' => t('or existing album name: '), - '$filestext' => t('Select files to upload: '), '$albumselect' => $albumselect, '$permissions' => t('Permissions'), '$aclselect' => (($visitor) ? '' : populate_acl($a->user, $celeb)), + '$uploader' => $ret['addon_text'], + '$filestext' => t('Select files to upload: '), '$archive' => $a->get_baseurl() . '/jumploader_z.jar', '$nojava' => t('Use the following controls only if the Java uploader [above] fails to launch.'), - '$uploadurl' => $a->get_baseurl() . '/photos/' . $a->data['user']['nickname'], - '$submit' => t('Submit') + '$default' => (($ret['default_upload']) ? $default_upload : ''), + '$uploadurl' => $ret['post_url'] + )); return $o; @@ -1154,3 +1204,4 @@ function photos_content(&$a) { $o .= paginate($a); return $o; } + -- cgit v1.2.3 From 620aae5b50df964463ddfe809feb226512c39b84 Mon Sep 17 00:00:00 2001 From: Friendika Date: Thu, 27 Jan 2011 03:55:40 -0800 Subject: still not quite ready for the big photos rollover --- mod/photos.php | 109 +++++++++++++++------------------------------------------ 1 file changed, 29 insertions(+), 80 deletions(-) (limited to 'mod') diff --git a/mod/photos.php b/mod/photos.php index ecf5031b3..e811ca395 100644 --- a/mod/photos.php +++ b/mod/photos.php @@ -1,4 +1,5 @@ $val) { - logger('mod/photos.php: photos_post(): $_REQUEST key: ' . $key . ' val: ' . $val , 'LOGGER_DEBUG'); -} -foreach($_FILES AS $key => $val) { - logger('mod/photos.php: photos_post(): $_FILES key: ' . $key . ' val: ' . $val , 'LOGGER_DEBUG'); -} +function photos_post(&$a) { $can_post = false; $visitor = 0; @@ -474,20 +466,18 @@ foreach($_FILES AS $key => $val) { } - /** - * default post action - upload a photo - */ - - call_hooks('photo_post_init', $_POST); + // default post action - upload a photo - /** - * Determine the album to use - */ + if(! x($_FILES,'userfile')) + killme(); - $album = notags(trim($_REQUEST['album'])); - $newalbum = notags(trim($_REQUEST['newalbum'])); + if($_POST['partitionCount']) + $java_upload = true; + else + $java_upload = false; - logger('mod/photos.php: photos_post(): album= ' . $album . ' newalbum= ' . $newalbum , 'LOGGER_DEBUG'); + $album = notags(trim($_POST['album'])); + $newalbum = notags(trim($_POST['newalbum'])); if(! strlen($album)) { if(strlen($newalbum)) @@ -496,16 +486,6 @@ foreach($_FILES AS $key => $val) { $album = datetime_convert('UTC',date_default_timezone_get(),'now', 'Y'); } - /** - * - * We create a wall item for every photo, but we don't want to - * overwhelm the data stream with a hundred newly uploaded photos. - * So we will make one photo (the first one uploaded to this album) - * visible by default, the rest will become visible over time when and if - * they acquire comments, likes, dislikes, and/or tags - * - */ - $r = q("SELECT * FROM `photo` WHERE `album` = '%s' AND `uid` = %d", dbesc($album), intval($page_owner_uid) @@ -515,25 +495,15 @@ foreach($_FILES AS $key => $val) { else $visible = 0; - $str_group_allow = perms2str(((is_array($_REQUEST['group_allow'])) ? $_REQUEST['group_allow'] : explode(',',$_REQUEST['group_allow']))); - $str_contact_allow = perms2str(((is_array($_REQUEST['contact_allow'])) ? $_REQUEST['contact_allow'] : explode(',',$_REQUEST['contact_allow']))); - $str_group_deny = perms2str(((is_array($_REQUEST['group_deny'])) ? $_REQUEST['group_deny'] : explode(',',$_REQUEST['group_deny']))); - $str_contact_deny = perms2str(((is_array($_REQUEST['contact_deny'])) ? $_REQUEST['contact_deny'] : explode(',',$_REQUEST['contact_deny']))); - $ret = array('src' => '', 'filename' => '', 'filesize' => 0); + $str_group_allow = perms2str($_POST['group_allow']); + $str_contact_allow = perms2str($_POST['contact_allow']); + $str_group_deny = perms2str($_POST['group_deny']); + $str_contact_deny = perms2str($_POST['contact_deny']); - call_hooks('photo_post_file',$ret); -logger('after post_file'); - if(x($ret,'src') && x($ret,'filesize')) { - $src = $ret['src']; - $filename = $ret['filename']; - $filesize = $ret['filesize']; - } - else { - $src = $_FILES['userfile']['tmp_name']; - $filename = basename($_FILES['userfile']['name']); - $filesize = intval($_FILES['userfile']['size']); - } + $src = $_FILES['userfile']['tmp_name']; + $filename = basename($_FILES['userfile']['name']); + $filesize = intval($_FILES['userfile']['size']); $maximagesize = get_config('system','maximagesize'); @@ -543,13 +513,10 @@ logger('after post_file'); return; } - logger('mod/photos.php: photos_post(): loading the contents of ' . $src , 'LOGGER_DEBUG'); - $imagedata = @file_get_contents($src); $ph = new Photo($imagedata); if(! $ph->is_valid()) { - logger('mod/photos.php: photos_post(): unable to process image' , 'LOGGER_DEBUG'); notice( t('Unable to process image.') . EOL ); @unlink($src); killme(); @@ -557,7 +524,7 @@ logger('after post_file'); @unlink($src); - $width = $ph->getWidth(); + $width = $ph->getWidth(); $height = $ph->getHeight(); $smallest = 0; @@ -567,7 +534,6 @@ logger('after post_file'); $r = $ph->store($page_owner_uid, $visitor, $photo_hash, $filename, $album, 0 , 0, $str_contact_allow, $str_group_allow, $str_contact_deny, $str_group_deny); if(! $r) { - logger('mod/photos.php: photos_post(): image store failed' , 'LOGGER_DEBUG'); notice( t('Image upload failed.') . EOL ); killme(); } @@ -589,6 +555,7 @@ logger('after post_file'); // Create item container + $arr = array(); $arr['uid'] = $page_owner_uid; @@ -617,13 +584,14 @@ logger('after post_file'); $item_id = item_store($arr); - call_hooks('photo_post_end',intval($item_id)); + if(! $java_upload) { + goaway($a->get_baseurl() . '/' . $_SESSION['photo_return']); + return; // NOTREACHED + } - // addon uploaders should call "killme()" [e.g. exit] within the photo_post_end hook - // if they do not wish to be redirected + killme(); + return; // NOTREACHED - goaway($a->get_baseurl() . '/' . $_SESSION['photo_return']); - // NOTREACHED } @@ -769,22 +737,6 @@ function photos_content(&$a) { $celeb = ((($a->user['page-flags'] == PAGE_SOAPBOX) || ($a->user['page-flags'] == PAGE_COMMUNITY)) ? true : false); $albumselect .= ''; - - $uploader = ''; - - $ret = array('post_url' => $a->get_baseurl() . '/photos/' . $a->data['user']['nickname'], - 'addon_text' => $uploader, - 'default_upload' => true); - - - call_hooks('photo_upload_form',$ret); - - $default_upload = '
-
'; - - - - $tpl = load_view_file('view/photos_upload.tpl'); $o .= replace_macros($tpl,array( '$pagename' => t('Upload Photos'), @@ -792,16 +744,14 @@ function photos_content(&$a) { '$nickname' => $a->data['user']['nickname'], '$newalbum' => t('New album name: '), '$existalbumtext' => t('or existing album name: '), + '$filestext' => t('Select files to upload: '), '$albumselect' => $albumselect, '$permissions' => t('Permissions'), '$aclselect' => (($visitor) ? '' : populate_acl($a->user, $celeb)), - '$uploader' => $ret['addon_text'], - '$filestext' => t('Select files to upload: '), '$archive' => $a->get_baseurl() . '/jumploader_z.jar', '$nojava' => t('Use the following controls only if the Java uploader [above] fails to launch.'), - '$default' => (($ret['default_upload']) ? $default_upload : ''), - '$uploadurl' => $ret['post_url'] - + '$uploadurl' => $a->get_baseurl() . '/photos/' . $a->data['user']['nickname'], + '$submit' => t('Submit') )); return $o; @@ -1204,4 +1154,3 @@ function photos_content(&$a) { $o .= paginate($a); return $o; } - -- cgit v1.2.3 From 33037754d80dce07e6d806b6cee6df56311bb954 Mon Sep 17 00:00:00 2001 From: Friendika Date: Thu, 27 Jan 2011 18:45:19 -0800 Subject: removed java photo uploader from mainline. Photo uploaders are now plugins, but a single item upload is available by default. --- mod/photos.php | 110 +++++++++++++++++++++++++++++++++++++++++---------------- 1 file changed, 79 insertions(+), 31 deletions(-) (limited to 'mod') diff --git a/mod/photos.php b/mod/photos.php index e811ca395..2a55fa5e9 100644 --- a/mod/photos.php +++ b/mod/photos.php @@ -1,5 +1,4 @@ $val) { + logger('mod/photos.php: photos_post(): $_REQUEST key: ' . $key . ' val: ' . $val , 'LOGGER_DEBUG'); +} + +foreach($_FILES AS $key => $val) { + logger('mod/photos.php: photos_post(): $_FILES key: ' . $key . ' val: ' . $val , 'LOGGER_DEBUG'); +} + $can_post = false; $visitor = 0; @@ -466,18 +474,20 @@ function photos_post(&$a) { } - // default post action - upload a photo + /** + * default post action - upload a photo + */ - if(! x($_FILES,'userfile')) - killme(); + call_hooks('photo_post_init', $_POST); - if($_POST['partitionCount']) - $java_upload = true; - else - $java_upload = false; + /** + * Determine the album to use + */ + + $album = notags(trim($_REQUEST['album'])); + $newalbum = notags(trim($_REQUEST['newalbum'])); - $album = notags(trim($_POST['album'])); - $newalbum = notags(trim($_POST['newalbum'])); + logger('mod/photos.php: photos_post(): album= ' . $album . ' newalbum= ' . $newalbum , 'LOGGER_DEBUG'); if(! strlen($album)) { if(strlen($newalbum)) @@ -486,6 +496,16 @@ function photos_post(&$a) { $album = datetime_convert('UTC',date_default_timezone_get(),'now', 'Y'); } + /** + * + * We create a wall item for every photo, but we don't want to + * overwhelm the data stream with a hundred newly uploaded photos. + * So we will make one photo (the first one uploaded to this album) + * visible by default, the rest will become visible over time when and if + * they acquire comments, likes, dislikes, and/or tags + * + */ + $r = q("SELECT * FROM `photo` WHERE `album` = '%s' AND `uid` = %d", dbesc($album), intval($page_owner_uid) @@ -495,15 +515,25 @@ function photos_post(&$a) { else $visible = 0; + $str_group_allow = perms2str(((is_array($_REQUEST['group_allow'])) ? $_REQUEST['group_allow'] : explode(',',$_REQUEST['group_allow']))); + $str_contact_allow = perms2str(((is_array($_REQUEST['contact_allow'])) ? $_REQUEST['contact_allow'] : explode(',',$_REQUEST['contact_allow']))); + $str_group_deny = perms2str(((is_array($_REQUEST['group_deny'])) ? $_REQUEST['group_deny'] : explode(',',$_REQUEST['group_deny']))); + $str_contact_deny = perms2str(((is_array($_REQUEST['contact_deny'])) ? $_REQUEST['contact_deny'] : explode(',',$_REQUEST['contact_deny']))); + + $ret = array('src' => '', 'filename' => '', 'filesize' => 0); - $str_group_allow = perms2str($_POST['group_allow']); - $str_contact_allow = perms2str($_POST['contact_allow']); - $str_group_deny = perms2str($_POST['group_deny']); - $str_contact_deny = perms2str($_POST['contact_deny']); + call_hooks('photo_post_file',$ret); - $src = $_FILES['userfile']['tmp_name']; - $filename = basename($_FILES['userfile']['name']); - $filesize = intval($_FILES['userfile']['size']); + if(x($ret,'src') && x($ret,'filesize')) { + $src = $ret['src']; + $filename = $ret['filename']; + $filesize = $ret['filesize']; + } + else { + $src = $_FILES['userfile']['tmp_name']; + $filename = basename($_FILES['userfile']['name']); + $filesize = intval($_FILES['userfile']['size']); + } $maximagesize = get_config('system','maximagesize'); @@ -513,10 +543,13 @@ function photos_post(&$a) { return; } + logger('mod/photos.php: photos_post(): loading the contents of ' . $src , 'LOGGER_DEBUG'); + $imagedata = @file_get_contents($src); $ph = new Photo($imagedata); if(! $ph->is_valid()) { + logger('mod/photos.php: photos_post(): unable to process image' , 'LOGGER_DEBUG'); notice( t('Unable to process image.') . EOL ); @unlink($src); killme(); @@ -524,7 +557,7 @@ function photos_post(&$a) { @unlink($src); - $width = $ph->getWidth(); + $width = $ph->getWidth(); $height = $ph->getHeight(); $smallest = 0; @@ -534,6 +567,7 @@ function photos_post(&$a) { $r = $ph->store($page_owner_uid, $visitor, $photo_hash, $filename, $album, 0 , 0, $str_contact_allow, $str_group_allow, $str_contact_deny, $str_group_deny); if(! $r) { + logger('mod/photos.php: photos_post(): image store failed' , 'LOGGER_DEBUG'); notice( t('Image upload failed.') . EOL ); killme(); } @@ -555,7 +589,6 @@ function photos_post(&$a) { // Create item container - $arr = array(); $arr['uid'] = $page_owner_uid; @@ -584,14 +617,13 @@ function photos_post(&$a) { $item_id = item_store($arr); - if(! $java_upload) { - goaway($a->get_baseurl() . '/' . $_SESSION['photo_return']); - return; // NOTREACHED - } + call_hooks('photo_post_end',intval($item_id)); - killme(); - return; // NOTREACHED + // addon uploaders should call "killme()" [e.g. exit] within the photo_post_end hook + // if they do not wish to be redirected + goaway($a->get_baseurl() . '/' . $_SESSION['photo_return']); + // NOTREACHED } @@ -737,6 +769,22 @@ function photos_content(&$a) { $celeb = ((($a->user['page-flags'] == PAGE_SOAPBOX) || ($a->user['page-flags'] == PAGE_COMMUNITY)) ? true : false); $albumselect .= ''; + + $uploader = ''; + + $ret = array('post_url' => $a->get_baseurl() . '/photos/' . $a->data['user']['nickname'], + 'addon_text' => $uploader, + 'default_upload' => true); + + + call_hooks('photo_upload_form',$ret); + + $default_upload = '
+
'; + + + + $tpl = load_view_file('view/photos_upload.tpl'); $o .= replace_macros($tpl,array( '$pagename' => t('Upload Photos'), @@ -744,14 +792,13 @@ function photos_content(&$a) { '$nickname' => $a->data['user']['nickname'], '$newalbum' => t('New album name: '), '$existalbumtext' => t('or existing album name: '), - '$filestext' => t('Select files to upload: '), '$albumselect' => $albumselect, '$permissions' => t('Permissions'), '$aclselect' => (($visitor) ? '' : populate_acl($a->user, $celeb)), - '$archive' => $a->get_baseurl() . '/jumploader_z.jar', - '$nojava' => t('Use the following controls only if the Java uploader [above] fails to launch.'), - '$uploadurl' => $a->get_baseurl() . '/photos/' . $a->data['user']['nickname'], - '$submit' => t('Submit') + '$uploader' => $ret['addon_text'], + '$default' => (($ret['default_upload']) ? $default_upload : ''), + '$uploadurl' => $ret['post_url'] + )); return $o; @@ -1154,3 +1201,4 @@ function photos_content(&$a) { $o .= paginate($a); return $o; } + -- cgit v1.2.3