From 3153129e2eb968a189a8a7050d06892cbc13c651 Mon Sep 17 00:00:00 2001 From: zotlabs Date: Sat, 24 Feb 2018 13:20:59 -0800 Subject: make the profile photo image picker work correctly with multiple profiles. --- Zotlabs/Module/Profile_photo.php | 19 ++++++++++++++++--- view/js/mod_profile_photo.js | 4 +++- view/tpl/profile_photo.tpl | 2 +- 3 files changed, 20 insertions(+), 5 deletions(-) diff --git a/Zotlabs/Module/Profile_photo.php b/Zotlabs/Module/Profile_photo.php index c772f0ed3..44b7c18c6 100644 --- a/Zotlabs/Module/Profile_photo.php +++ b/Zotlabs/Module/Profile_photo.php @@ -304,7 +304,7 @@ class Profile_photo extends \Zotlabs\Web\Controller { } $channel = \App::get_channel(); - + $pf = 0; $newuser = false; if(argc() == 2 && argv(1) === 'new') @@ -318,8 +318,8 @@ class Profile_photo extends \Zotlabs\Web\Controller { $resource_id = argv(2); - // When using an existing photo, we don't have a dialogue to offer a choice of profiles, - // so it gets attached to the default + + $pf = (($_REQUEST['pf']) ? intval($_REQUEST['pf']) : 0); $c = q("select id, is_default from profile where uid = %d", intval(local_channel()) @@ -331,6 +331,9 @@ class Profile_photo extends \Zotlabs\Web\Controller { $_REQUEST['profile'] = $c[0]['id']; $multi_profiles = false; } + else { + $_REQUEST['profile'] = $pf; + } $r = q("SELECT id, album, imgscale FROM photo WHERE uid = %d AND resource_id = '%s' ORDER BY imgscale ASC", intval(local_channel()), @@ -430,6 +433,16 @@ class Profile_photo extends \Zotlabs\Web\Controller { intval(local_channel()) ); + if($profiles) { + for($x = 0; $x < count($profiles); $x ++) { + $profiles[$x]['selected'] = false; + if($pf && $profiles[$x]['id'] == $pf) + $profiles[$x]['selected'] = true; + if((! $pf) && $profiles[$x]['is_default']) + $profiles[$x]['selected'] = true; + } + } + $importing = ((array_key_exists('importfile',\App::$data)) ? true : false); if(! x(\App::$data,'imagecrop')) { diff --git a/view/js/mod_profile_photo.js b/view/js/mod_profile_photo.js index 76b120684..832da764b 100644 --- a/view/js/mod_profile_photo.js +++ b/view/js/mod_profile_photo.js @@ -37,7 +37,9 @@ $.post("embedphotos/photolink", {href: href}, function(ddata) { if (ddata['status']) { - window.location.href = 'profile_photo/use/' + ddata['resource_id']; + var pf = $('#profile-photo-profiles').val(); + var prof = ((typeof pf !== 'undefined') ? '?f=&pf=' + pf : ''); + window.location.href = 'profile_photo/use/' + ddata['resource_id'] + prof; } else { window.console.log("{{$modalerrorlink}}" + ':' + ddata['errormsg']); } diff --git a/view/tpl/profile_photo.tpl b/view/tpl/profile_photo.tpl index 1f468c2e5..832f135f3 100755 --- a/view/tpl/profile_photo.tpl +++ b/view/tpl/profile_photo.tpl @@ -27,7 +27,7 @@
-- cgit v1.2.3 From d406e2aae20f20a7df6fc77d9317323de043c0f6 Mon Sep 17 00:00:00 2001 From: zotlabs Date: Sat, 24 Feb 2018 14:38:28 -0800 Subject: siteinfo.json - if hide_in_statistics is set only include the total channels count and no other statistical info --- include/network.php | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/include/network.php b/include/network.php index 0824183f7..f8cb68613 100644 --- a/include/network.php +++ b/include/network.php @@ -1617,13 +1617,16 @@ function get_site_info() { 'lastpoll' => get_config('system','lastpoll'), 'info' => (($site_info) ? $site_info : ''), 'channels_total' => $channels_total_stat, - 'channels_active_halfyear' => $channels_active_halfyear_stat, - 'channels_active_monthly' => $channels_active_monthly_stat, - 'local_posts' => $local_posts_stat, - 'local_comments' => $local_comments_stat, 'hide_in_statistics' => $hide_in_statistics ]; + if(! $hide_in_statistics) { + $data['channels_active_halfyear'] = $channels_active_halfyear_stat; + $data['channels_active_monthly'] = $channels_active_monthly_stat; + $data['local_posts'] = $local_posts_stat; + $data['local_comments'] = $local_comments_stat; + } + return $data; } -- cgit v1.2.3