X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=rt%2Fshare%2Fhtml%2FTicket%2FElements%2FBookmark;h=97dc2bc8dc986942691a331106a2fe5f21bc7296;hp=30c9a4356e9958bb9e0ccc794e2fe74217871736;hb=de9d037528895f7151a9aead6724ce2df95f9586;hpb=a6fe07e49e3fc12169e801b1ed6874c3a5bd8500 diff --git a/rt/share/html/Ticket/Elements/Bookmark b/rt/share/html/Ticket/Elements/Bookmark index 30c9a4356..97dc2bc8d 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-2012 Best Practical Solutions, LLC +%# This software is Copyright (c) 1996-2017 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') %> % }