Bugzilla – Attachment 35659 Details for
Bug 13662
Serial permissions: receive_serials
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 13662: Fix the serials.receive_serials permissions
Bug-13662-Fix-the-serialsreceiveserials-permission.patch (text/plain), 9.73 KB, created by
Jonathan Druart
on 2015-02-03 12:37:42 UTC
(
hide
)
Description:
Bug 13662: Fix the serials.receive_serials permissions
Filename:
MIME Type:
Creator:
Jonathan Druart
Created:
2015-02-03 12:37:42 UTC
Size:
9.73 KB
patch
obsolete
>From 6bfce21dd0f67b210a37f28b510d14db8c96e8d3 Mon Sep 17 00:00:00 2001 >From: Jonathan Druart <jonathan.druart@biblibre.com> >Date: Tue, 3 Feb 2015 13:25:47 +0100 >Subject: [PATCH] Bug 13662: Fix the serials.receive_serials permissions > >There are some issues with serial permissions. >For instance it's not possible to receive serials if the >edit_subscription is not set. >Also the toolbar is empty. > >Test plan: >1/ Set the serials => receive_serials permissions to a patron (and only >this one for the serials module). >2/ Verify you cannot create a new subscription, you can search >subscriptions but cannot edit them. >3/ On the serial result list, receive a serial (action > Serial >receive). >You can now change the status and receive it. >4/ On the serial collection, you can edit 1+ serials to reveice it. >5/ Set the serials => edit_subscription permission and confirm there is >no regression. > >QA note: I think we should introduce a C4::Serials::can_receive_serials >subroutine, to test the IndependentBranches pref, but I don't want to >add to much processing to check permissions. >--- > .../prog/en/includes/serials-toolbar.inc | 85 +++++++++++----------- > .../prog/en/modules/serials/serials-collection.tt | 2 +- > serials/serials-edit.pl | 1 + > 3 files changed, 44 insertions(+), 44 deletions(-) > >diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/serials-toolbar.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/serials-toolbar.inc >index d02781a..322cd9a 100644 >--- a/koha-tmpl/intranet-tmpl/prog/en/includes/serials-toolbar.inc >+++ b/koha-tmpl/intranet-tmpl/prog/en/includes/serials-toolbar.inc >@@ -34,58 +34,57 @@ > }); > //]]> > </script> >-<div id="toolbar" class="btn-toolbar"> > >- [% IF ( CAN_user_serials_create_subscription ) %] >+[% IF subscriptionid and ( CAN_user_serials_edit_subscription || CAN_user_serials_create_subscription || CAN_user_serials_delete_subscription || CAN_user_serials_receive_serials ) %] >+ <div id="toolbar" class="btn-toolbar"> > [% IF ( biblionumber_for_new_subscription ) %] > <div class="btn-group"><a id="newsubscription" class="btn btn-small" href="/cgi-bin/koha/serials/subscription-add.pl?biblionumber_for_new_subscription=[% biblionumber_for_new_subscription %]"><i class="icon-plus"></i> New subscription</a></div> > [% ELSE %] > <div class="btn-group"><a id="newsubscription" class="btn btn-small" href="/cgi-bin/koha/serials/subscription-add.pl"><i class="icon-plus"></i> New subscription</a></div> > [% END %] >- [% END %] > >- [% IF ( CAN_user_serials_edit_subscription || CAN_user_serials_create_subscription || CAN_user_serials_delete_subscription ) %] >- [% IF ( subscriptionid ) %] >- >- [% IF ( CAN_user_serials_edit_subscription || CAN_user_serials_create_subscription || CAN_user_serials_delete_subscription ) %] >- [% UNLESS ( cannotedit ) %] >- <div class="btn-group"> >- <button class="btn btn-small dropdown-toggle" data-toggle="dropdown"><i class="icon-pencil"></i> Edit <span class="caret"></span></button> >- <ul class="dropdown-menu"> >- [% IF ( cannotedit ) %] <li class="disabled"> [% ELSE %] >- <li> [% END %] >- <a href="/cgi-bin/koha/serials/subscription-add.pl?op=modify&subscriptionid=[% subscriptionid %]">Edit subscription</a></li> >- [% IF ( cannotedit ) %] <li class="disabled"> [% ELSE %] >- <li> [% END %] >- <a href="/cgi-bin/koha/serials/subscription-add.pl?op=dup&subscriptionid=[% subscriptionid %]">Edit as new (duplicate)</a></li> >- [% IF ( CAN_user_serials_delete_subscription ) %] >- [% IF ( cannotedit ) %] <li class="disabled"> [% ELSE %] >- <li> [% END %] >- <a href="#" id="deletesub">Delete subscription</a></li>[% END %] >- </ul> >- </div> >- [% END %] >+ [% IF ( CAN_user_serials_edit_subscription || CAN_user_serials_create_subscription || CAN_user_serials_delete_subscription ) %] >+ [% UNLESS ( cannotedit ) %] >+ <div class="btn-group"> >+ <button class="btn btn-small dropdown-toggle" data-toggle="dropdown"><i class="icon-pencil"></i> Edit <span class="caret"></span></button> >+ <ul class="dropdown-menu"> >+ [% IF ( cannotedit ) %] <li class="disabled"> [% ELSE %] >+ <li> [% END %] >+ <a href="/cgi-bin/koha/serials/subscription-add.pl?op=modify&subscriptionid=[% subscriptionid %]">Edit subscription</a></li> >+ [% IF ( cannotedit ) %] <li class="disabled"> [% ELSE %] >+ <li> [% END %] >+ <a href="/cgi-bin/koha/serials/subscription-add.pl?op=dup&subscriptionid=[% subscriptionid %]">Edit as new (duplicate)</a></li> >+ [% IF ( CAN_user_serials_delete_subscription ) %] >+ [% IF ( cannotedit ) %] <li class="disabled"> [% ELSE %] >+ <li> [% END %] >+ <a href="#" id="deletesub">Delete subscription</a></li>[% END %] >+ </ul> >+ </div> > [% END %] >+ [% END %] > >- [% UNLESS ( cannotedit ) %] >- [% UNLESS closed %] >- [% IF ( CAN_user_serials_renew_subscription ) %] >- <div class="btn-group"><a id="renew" class="btn btn-small" href="#" onclick="popup([% subscriptionid %])"><i class="icon-refresh"></i> Renew</a></div> >- [% END %] >- [% END %] >- [% IF ( CAN_user_serials_receive_serials ) %] >- [% UNLESS closed %] >- <div class="btn-group"><a id="receive" class="btn btn-small" href="/cgi-bin/koha/serials/serials-edit.pl?subscriptionid=[% subscriptionid %]&serstatus=1,3"><i class="icon-inbox"></i> Receive</a></div> >- [% END %] >- [% END %] >- [% IF CAN_user_serials_edit_subscription %] >- [% IF closed %] >- <div class="btn-group"><a id="reopen" class="btn btn-small" href="#"><i class="icon-repeat"></i> Reopen</a></div> >- [% ELSE %] >- <div class="btn-group"><a id="close" class="btn btn-small" href="#"><i class="icon-remove-circle"></i> Close</a></div> >- [% END %] >+ [% IF not cannotedit or CAN_user_serials_receive_serials %] >+ [% IF CAN_user_serials_renew_subscription and not closed %] >+ <div class="btn-group"><a id="renew" class="btn btn-small" href="#" onclick="popup([% subscriptionid %])"><i class="icon-refresh"></i> Renew</a></div> >+ [% END %] >+ [% IF CAN_user_serials_receive_serials and not closed %] >+ <div class="btn-group"><a id="receive" class="btn btn-small" href="/cgi-bin/koha/serials/serials-edit.pl?subscriptionid=[% subscriptionid %]&serstatus=1,3"><i class="icon-inbox"></i> Receive</a></div> >+ [% END %] >+ [% UNLESS cannotedit %] >+ [% IF closed %] >+ <div class="btn-group"><a id="reopen" class="btn btn-small" href="#"><i class="icon-repeat"></i> Reopen</a></div> >+ [% ELSE %] >+ <div class="btn-group"><a id="close" class="btn btn-small" href="#"><i class="icon-remove-circle"></i> Close</a></div> > [% END %] > [% END %] > [% END %] >- [% END %] >-</div> >+ </div> >+[% ELSIF CAN_user_serials_create_subscription %] >+ <div id="toolbar" class="btn-toolbar"> >+ [% IF ( biblionumber_for_new_subscription ) %] >+ <div class="btn-group"><a id="newsubscription" class="btn btn-small" href="/cgi-bin/koha/serials/subscription-add.pl?biblionumber_for_new_subscription=[% biblionumber_for_new_subscription %]"><i class="icon-plus"></i> New subscription</a></div> >+ [% ELSE %] >+ <div class="btn-group"><a id="newsubscription" class="btn btn-small" href="/cgi-bin/koha/serials/subscription-add.pl"><i class="icon-plus"></i> New subscription</a></div> >+ [% END %] >+ </div> >+[% END %] >diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/serials/serials-collection.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/serials/serials-collection.tt >index 0114e1e..4b56b05 100644 >--- a/koha-tmpl/intranet-tmpl/prog/en/modules/serials/serials-collection.tt >+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/serials/serials-collection.tt >@@ -219,7 +219,7 @@ $(document).ready(function() { > [% UNLESS ( loop.odd ) %]<tr class="highlight">[% ELSE %]<tr>[% END %] > [% IF ( CAN_user_serials_receive_serials ) %] > <td> >- [% IF ( serial.cannotedit ) %] >+ [% UNLESS CAN_user_serials_receive_serials %] > disabled > [% ELSE %] > [% IF ( serial.subscriptionexpired ) %] >diff --git a/serials/serials-edit.pl b/serials/serials-edit.pl >index d9b97a6..500dc72 100755 >--- a/serials/serials-edit.pl >+++ b/serials/serials-edit.pl >@@ -153,6 +153,7 @@ foreach my $serialid (@serialids) { > ) > || $serinfo->{'cannotedit'} > ); >+ $serinfo->{editdisable} = 0 if C4::Auth::haspermission( C4::Context->userenv->{id}, { serials => 'receive_serials' } ); > $serinfo->{editdisable} ||= ($serinfo->{status8} and $serinfo->{closed}); > push @serialdatalist, $serinfo; > $processedserialid{$serialid} = 1; >-- >2.1.0
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 13662
:
35659
|
36121
|
36138
|
36323