Bugzilla – Attachment 85821 Details for
Bug 15774
Additional fields for baskets
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 15774: Add permission for managing additional fields
Bug-15774-Add-permission-for-managing-additional-f.patch (text/plain), 11.72 KB, created by
Josef Moravec
on 2019-02-28 08:07:52 UTC
(
hide
)
Description:
Bug 15774: Add permission for managing additional fields
Filename:
MIME Type:
Creator:
Josef Moravec
Created:
2019-02-28 08:07:52 UTC
Size:
11.72 KB
patch
obsolete
>From 4b408acdc6e9f637a0c548c0ebae10e86ca90576 Mon Sep 17 00:00:00 2001 >From: Nick Clemens <nick@bywatersolutions.com> >Date: Tue, 18 Dec 2018 12:05:10 +0000 >Subject: [PATCH] Bug 15774: Add permission for managing additional fields > >To test: > 1 - Have three borrowers, one with order_manage permission, one with > edit_subscription permisson, andone with both > 2 - Apply patch, updatedatabase > 3 - Verify all three now have the manage_additional_fields permission > 4 - Visit the admin page with these users, they should all see the > 'Manage additional fields' link > 5 - Click the link > 6 - User with order_manage should see 'Order baskest' > 7 - User with edit_subscription should see 'Subscriptions' > 8 - User with both should see both > 9 - Remove the additional permissions from a user - they should see a > note about needing additional permissions > >Signed-off-by: Josef Moravec <josef.moravec@gmail.com> >--- > admin/additional-fields.pl | 15 ++++++++++++--- > .../Bug_15774_add_additional_fields_permissions.perl | 18 ++++++++++++++++++ > installer/data/mysql/userpermissions.sql | 1 + > .../intranet-tmpl/prog/en/includes/admin-menu.inc | 4 ++-- > .../intranet-tmpl/prog/en/includes/permissions.inc | 1 + > .../prog/en/modules/admin/additional-fields.tt | 12 ++++++++++-- > .../intranet-tmpl/prog/en/modules/admin/admin-home.tt | 6 +++++- > 7 files changed, 49 insertions(+), 8 deletions(-) > create mode 100644 installer/data/mysql/atomicupdate/Bug_15774_add_additional_fields_permissions.perl > >diff --git a/admin/additional-fields.pl b/admin/additional-fields.pl >index 5bc722c09d..1b306f1ad7 100755 >--- a/admin/additional-fields.pl >+++ b/admin/additional-fields.pl >@@ -26,19 +26,28 @@ use Koha::AdditionalFields; > > my $input = new CGI; > >+my %flagsrequired; >+$flagsrequired{parameters} = 'manage_additional_fields'; >+ >+my $tablename = $input->param('tablename'); >+my $op = $input->param('op') // ( $tablename ? 'list' : 'list_tables' ); >+ >+if( $op ne 'list_tables' ){ >+ $flagsrequired{acquisition} = 'order_manage' if $tablename eq 'aqbasket'; >+ $flagsrequired{serials} = 'edit_subscription' if $tablename eq 'subscription'; >+} >+ > my ( $template, $loggedinuser, $cookie ) = get_template_and_user( > { > template_name => "admin/additional-fields.tt", > query => $input, > type => "intranet", > authnotrequired => 0, >- flagsrequired => { parameters => 1 }, >+ flagsrequired => \%flagsrequired, > debug => 1, > } > ); > >-my $tablename = $input->param('tablename'); >-my $op = $input->param('op') // ( $tablename ? 'list' : 'list_tables' ); > my $field_id = $input->param('field_id'); > my @messages; > >diff --git a/installer/data/mysql/atomicupdate/Bug_15774_add_additional_fields_permissions.perl b/installer/data/mysql/atomicupdate/Bug_15774_add_additional_fields_permissions.perl >new file mode 100644 >index 0000000000..314bfdc67a >--- /dev/null >+++ b/installer/data/mysql/atomicupdate/Bug_15774_add_additional_fields_permissions.perl >@@ -0,0 +1,18 @@ >+$DBversion = 'XXX'; >+if( CheckVersion( $DBversion ) ) { >+ $dbh->do( q{ >+ INSERT IGNORE INTO permissions (module_bit,code,description) >+ VALUES >+ (3,'manage_additional_fields','Add, edit, or delete additional custom fields for baskets or subscriptions (also requires order_manage or edit_subscription permissions)') >+ }); >+ $dbh->do( q{ >+ INSERT INTO user_permissions (borrowernumber, module_bit, code) >+ SELECT borrowernumber, 3, 'manage_additional_fields' FROM borrowers WHERE borrowernumber IN (SELECT DISTINCT borrowernumber FROM user_permissions WHERE code = 'order_manage' OR code = 'edit_subscription'); >+ }); >+ $dbh->do( q{ >+ INSERT INTO user_permissions (borrowernumber, module_bit, code) >+ SELECT borrowernumber, 3, 'manage_additional_fields' FROM borrowers WHERE borrowernumber IN (SELECT borrowernumber FROM borrowers WHERE MOD(flags DIV POWER(2,11),2)=1 OR MOD(flags DIV POWER(2,15),2) =1); >+ }); >+ SetVersion( $DBversion ); >+ print "Upgrade to $DBversion done (Bug 15774 - Add permission for managing additional fields)\n"; >+} >diff --git a/installer/data/mysql/userpermissions.sql b/installer/data/mysql/userpermissions.sql >index 16b003ebd5..6876fad8ac 100644 >--- a/installer/data/mysql/userpermissions.sql >+++ b/installer/data/mysql/userpermissions.sql >@@ -31,6 +31,7 @@ INSERT INTO permissions (module_bit, code, description) VALUES > ( 3, 'manage_audio_alerts', 'Manage audio alerts'), > ( 3, 'manage_usage_stats', 'Manage usage statistics settings'), > ( 3, 'manage_mana', 'Manage Mana KB content sharing'), >+ ( 3, 'manage_additional_fields', 'Add, edit, or delete additional custom fields for baskets or subscriptions (also requires order_manage or edit_subscription permissions)'), > ( 4, 'edit_borrowers', 'Add, modify and view patron information'), > ( 4, 'view_borrower_infos_from_any_libraries', 'View patron infos from any libraries'), > ( 6, 'place_holds', 'Place holds for patrons'), >diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/admin-menu.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/admin-menu.inc >index b2f32420c7..1677280097 100644 >--- a/koha-tmpl/intranet-tmpl/prog/en/includes/admin-menu.inc >+++ b/koha-tmpl/intranet-tmpl/prog/en/includes/admin-menu.inc >@@ -110,7 +110,7 @@ > </ul> > [% END %] > >- [% IF ( CAN_user_parameters_manage_search_targets || CAN_user_parameters_manage_didyoumean || CAN_user_parameters_manage_column_config || CAN_user_parameters_manage_audio_alerts || ( CAN_user_parameters_manage_sms_providers && Koha.Preference('SMSSendDriver') == 'Email' ) || CAN_user_parameters_manage_usage_stats || CAN_user_parameters_manage_additional_fields_baskets || CAN_user_parameters_manage_additional_fields_subscriptions ) %] >+ [% IF ( CAN_user_parameters_manage_search_targets || CAN_user_parameters_manage_didyoumean || CAN_user_parameters_manage_column_config || CAN_user_parameters_manage_audio_alerts || ( CAN_user_parameters_manage_sms_providers && Koha.Preference('SMSSendDriver') == 'Email' ) || CAN_user_parameters_manage_usage_stats || CAN_user_parameters_manage_additional_fields ) %] > <h5>Additional parameters</h5> > <ul> > <!-- <li><a href="/cgi-bin/koha/admin/printers.pl">Network Printers</a></li> --> >@@ -135,7 +135,7 @@ > [% IF ( CAN_user_parameters_manage_mana ) %] > <li><a href="/cgi-bin/koha/admin/share_content.pl">Share content with Mana KB</a></li> > [% END %] >- [% IF ( CAN_user_parameters_manage_additional_fields_baskets || CAN_user_parameters_manage_additional_fields_subscriptions ) %] >+ [% IF ( CAN_user_parameters_manage_additional_fields ) %] > <li><a href="/cgi-bin/koha/admin/additional-fields.pl">Additional fields</a></li> > [% END %] > </ul> >diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/permissions.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/permissions.inc >index 9d538a34ad..e014db7395 100644 >--- a/koha-tmpl/intranet-tmpl/prog/en/includes/permissions.inc >+++ b/koha-tmpl/intranet-tmpl/prog/en/includes/permissions.inc >@@ -57,6 +57,7 @@ > [%- CASE 'manage_didyoumean' -%]<span>Manage Did you mean? configuration</span> > [%- CASE 'manage_column_config' -%]<span>Manage column configuration</span> > [%- CASE 'manage_audio_alerts' -%]<span>Manage audio alerts</span> >+ [%- CASE 'manage_additional_fields' -%]<span>Manage additional fields for baskets or subscriptions (requires edit_subscription or order_manage permissions)</span> > [%- CASE 'manage_sms_providers' -%]<span>Manage SMS cellular providers</span> > [%- CASE 'manage_usage_stats' -%]<span>Manage usage statistics settings</span> > [%- CASE 'manage_mana' -%]<span>Manage Mana KB content sharing</span> >diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/additional-fields.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/additional-fields.tt >index 3b5309cfe4..ad1ebb718d 100755 >--- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/additional-fields.tt >+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/additional-fields.tt >@@ -64,15 +64,23 @@ > [% END %] > > [% IF op == 'list_tables' %] >+ [% IF CAN_user_acquisitions_order_manage || CAN_user_serials_edit_subscription %] > <h3>Additional fields</h3> > <p>Select a table:</p> > [% BLOCK table_option %] > <li><a href="?tablename=[% value | uri %]">[% content | html %] (<tt>[% value | html %]</tt>)</a></li> > [% END %] > <ul> >- [% WRAPPER table_option value="aqbasket" %]Order baskets[% END %] >- [% WRAPPER table_option value="subscription" %]Subscriptions[% END %] >+ [% IF CAN_user_acquisition_order_manage %] >+ [% WRAPPER table_option value="aqbasket" %]Order baskets[% END %] >+ [% END %] >+ [% IF CAN_user_serials_edit_subscription %] >+ [% WRAPPER table_option value="subscription" %]Subscriptions[% END %] >+ [% END %] > </ul> >+ [% ELSE %] >+ Additional permissions in the acquisitions or serials modules are required for editing additional fields >+ [% END %] > [% ELSIF op == 'list' %] > <h3>Additional fields for '[% tablename | html %]'</h3> > [% IF fields %] >diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/admin-home.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/admin-home.tt >index ee1abfc808..a672b69afa 100644 >--- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/admin-home.tt >+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/admin-home.tt >@@ -174,7 +174,7 @@ > </dl> > [% END %] > >- [% IF ( ( CAN_user_parameters_manage_search_targets || CAN_user_parameters_manage_didyoumean || CAN_user_parameters_manage_column_config || CAN_user_parameters_manage_audio_alerts || CAN_user_parameters_manage_sms_providers && Koha.Preference('SMSSendDriver') == 'Email' ) || CAN_user_parameters_manage_usage_stats || CAN_user_parameters_manage_additional_fields_baskets || CAN_user_parameters_manage_additional_fields_subscriptions || CAN_user_parameters_manage_mana ) %] >+ [% IF ( ( CAN_user_parameters_manage_search_targets || CAN_user_parameters_manage_didyoumean || CAN_user_parameters_manage_column_config || CAN_user_parameters_manage_audio_alerts || CAN_user_parameters_manage_sms_providers && Koha.Preference('SMSSendDriver') == 'Email' ) || CAN_user_parameters_manage_usage_stats || CAN_user_parameters_manage_additional_fields || CAN_user_parameters_manage_mana ) %] > <h3>Additional parameters</h3> > <dl> > <!-- <dt><a href="/cgi-bin/koha/admin/printers.pl">Network Printers</a></dt> >@@ -203,11 +203,15 @@ > <dt><a href="/cgi-bin/koha/admin/usage_statistics.pl">Share your usage statistics</a></dt> > <dd>Share with the Koha community the usage statistics of your Koha installation.</dd> > [% END %] >+<<<<<<< HEAD > [% IF ( CAN_user_parameters_manage_mana ) %] > <dt><a href="/cgi-bin/koha/admin/share_content.pl">Share content with Mana KB</a></dt> > <dd>Share content (subscriptions, reports) with the Koha community</dd> > [% END %] > [% IF ( CAN_user_parameters_manage_additional_fields_baskets || CAN_user_parameters_manage_additional_fields_subscriptions ) %] >+======= >+ [% IF ( CAN_user_parameters_manage_additional_fields ) %] >+>>>>>>> Bug 15774: Add permission for managing additional fields > <dt><a href="/cgi-bin/koha/admin/additional-fields.pl">Additional fields</a></dt> > <dd>Add additional fields to certain tables</dd> > [% END %] >-- >2.11.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 15774
:
48224
|
53608
|
53609
|
72078
|
72079
|
72085
|
72086
|
75083
|
75084
|
75085
|
75086
|
75336
|
75354
|
75361
|
79976
|
79977
|
79978
|
79979
|
79980
|
79981
|
79982
|
80060
|
80061
|
80062
|
80063
|
80064
|
80065
|
80066
|
80680
|
81490
|
81491
|
81492
|
81493
|
81494
|
81495
|
81496
|
81497
|
81833
|
81837
|
81838
|
81839
|
81840
|
81841
|
81842
|
81843
|
81844
|
81845
|
81846
|
81847
|
81848
|
81849
|
81850
|
81851
|
81852
|
83349
|
83350
|
83351
|
83352
|
83353
|
83354
|
83355
|
83356
|
83357
|
83358
|
83359
|
83360
|
83361
|
83362
|
83363
|
83364
|
83444
|
83445
|
83446
|
83447
|
83448
|
83449
|
83450
|
83451
|
83452
|
83453
|
83454
|
83455
|
83456
|
83457
|
83458
|
83459
|
85333
|
85334
|
85335
|
85336
|
85337
|
85338
|
85339
|
85340
|
85341
|
85342
|
85343
|
85344
|
85345
|
85346
|
85347
|
85348
|
85792
|
85806
|
85807
|
85808
|
85809
|
85810
|
85811
|
85812
|
85813
|
85814
|
85815
|
85816
|
85817
|
85818
|
85819
|
85820
| 85821 |
85822
|
85823
|
85824
|
86411