X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=rt%2Fshare%2Fhtml%2FTicket%2FElements%2FBookmark;h=bede3326c070162f6ccfcae6d702f554b2f90a21;hp=28034c50e7c7f587ea875553b7c702615fe0efea;hb=187086c479a09629b7d180eec513fb7657f4e291;hpb=0fb307c305e4bc2c9c27dc25a3308beae3a4d33c diff --git a/rt/share/html/Ticket/Elements/Bookmark b/rt/share/html/Ticket/Elements/Bookmark index 28034c50e..bede3326c 100644 --- a/rt/share/html/Ticket/Elements/Bookmark +++ b/rt/share/html/Ticket/Elements/Bookmark @@ -2,7 +2,7 @@ %# %# COPYRIGHT: %# -%# This software is Copyright (c) 1996-2011 Best Practical Solutions, LLC +%# This software is Copyright (c) 1996-2018 Best Practical Solutions, LLC %# %# %# (Except where explicitly superseded by other copyright notices) @@ -46,48 +46,28 @@ %# %# END BPS TAGGED BLOCK }}} <%INIT> -my $bookmarks = $session{'CurrentUser'}->UserObj->FirstAttribute('Bookmarks'); -$bookmarks = $bookmarks->Content if $bookmarks; -$bookmarks ||= {}; +my $ticket = RT::Ticket->new( $session{'CurrentUser'} ); +$ticket->Load( $id ); -my $bookmarked = $bookmarks->{ $id }; # we still not sure if it's undef - -my @ids; -if ( $Toggle || !$bookmarked ) { - my $ticket = RT::Ticket->new( $session{'CurrentUser'} ); - $ticket->Load( $id ); - return unless $id = $ticket->id; - - @ids = ($id, $ticket->Merged); +my $is_bookmarked; +if ($Toggle) { + $is_bookmarked = $session{'CurrentUser'}->UserObj->ToggleBookmark($ticket); } - -if ( $Toggle ) { - if ( grep $bookmarks->{ $_ }, @ids ) { - delete $bookmarks->{ $_ } foreach @ids; - $bookmarked = 0; - } else { - $bookmarks->{ $id } = 1; - $bookmarked = 1; - } - $session{'CurrentUser'}->UserObj->SetAttribute( - Name => 'Bookmarks', - Content => $bookmarks, - ); -} elsif ( !$bookmarked ) { - $bookmarked = grep $bookmarks->{ $_ }, @ids; +else { + $is_bookmarked = $session{'CurrentUser'}->UserObj->HasBookmark($ticket); } <%ARGS> $id $Toggle => 0 - + % my $url = RT->Config->Get('WebPath') ."/Helpers/Toggle/TicketBookmark?id=". $id; - -% if ( $bookmarked ) { -<% loc('Remove Bookmark') %> + +% if ( $is_bookmarked ) { +<% loc('Remove Bookmark') %> % } else { -<% loc('Add Bookmark') %> +<% loc('Add Bookmark') %> % }