diff options
author | Derf Null <derf@finalrewind.org> | 2023-05-24 21:41:51 +0200 |
---|---|---|
committer | Derf Null <derf@finalrewind.org> | 2023-05-24 21:41:51 +0200 |
commit | 7580497ceab15b80e9c6fcfd7b000a9e4d6fd0a7 (patch) | |
tree | 27145bea4c40f618c75ad97adca06e047a0a90c8 /lib | |
parent | ac816c09b23233c9e3de0f1b12cc905a921ca85a (diff) |
get_user_status_json_v1: expose visibility
Diffstat (limited to 'lib')
-rwxr-xr-x | lib/Travelynx.pm | 13 | ||||
-rwxr-xr-x | lib/Travelynx/Controller/Profile.pm | 5 |
2 files changed, 15 insertions, 3 deletions
diff --git a/lib/Travelynx.pm b/lib/Travelynx.pm index 5ae7a9f..2b51921 100755 --- a/lib/Travelynx.pm +++ b/lib/Travelynx.pm @@ -1695,7 +1695,9 @@ sub startup { $self->helper( 'get_user_status_json_v1' => sub { my ( $self, %opt ) = @_; - my $uid = $opt{uid}; + my $uid = $opt{uid}; + my $privacy = $opt{privacy} + // $self->users->get_privacy_by( uid => $uid ); my $status = $opt{status} // $self->get_user_status($uid); my $ret = { @@ -1737,6 +1739,15 @@ sub startup { id => $status->{train_id}, }, intermediateStops => [], + visibility => { + level => $status->{visibility} + // $privacy->{default_visibility}, + desc => ( + $status->{visibility_str} eq 'default' + ? $privacy->{default_visibility_str} + : $status->{visibility_str} + ), + } }; if ( not $opt{public} ) { diff --git a/lib/Travelynx/Controller/Profile.pm b/lib/Travelynx/Controller/Profile.pm index 6754159..925a1ff 100755 --- a/lib/Travelynx/Controller/Profile.pm +++ b/lib/Travelynx/Controller/Profile.pm @@ -410,8 +410,9 @@ sub user_status { json => { name => $name, status => $self->get_user_status_json_v1( - status => $status, - public => 1 + status => $status, + privacy => $user, + public => 1 ), version => $self->app->config->{version} // 'UNKNOWN', }, |