diff --git a/installer/data/mysql/atomicupdate/bug_22868.perl b/installer/data/mysql/atomicupdate/bug_22868.perl
new file mode 100644
index 0000000000..ab4853dc45
--- /dev/null
+++ b/installer/data/mysql/atomicupdate/bug_22868.perl
@@ -0,0 +1,19 @@
+$DBversion = 'XXX'; # will be replaced by the RM
+if( CheckVersion( $DBversion ) ) {
+ $dbh->do(q{
+ INSERT IGNORE INTO `userflags` (`bit`, `flag`, `flagdesc`, `defaulton`)
+ VALUES (12, 'suggestions', 'Suggestion management', 0)
+ });
+
+ $dbh->do(q{
+ UPDATE permissions SET module_bit=12
+ WHERE code="suggestions_manage"
+ });
+
+ $dbh->do(q{
+ UPDATE borrowers SET flags = flags + (1<<12) WHERE flags & (1 << 11)
+ });
+
+ SetVersion( $DBversion );
+ print "Upgrade to $DBversion done (Bug 22868 - Move suggestions_manage subpermission out of acquisition permission)\n";
+}
diff --git a/installer/data/mysql/userflags.sql b/installer/data/mysql/userflags.sql
index 68235994c5..817e91a870 100644
--- a/installer/data/mysql/userflags.sql
+++ b/installer/data/mysql/userflags.sql
@@ -8,7 +8,8 @@ INSERT INTO userflags (bit, flag, flagdesc, defaulton) VALUES
(6,'reserveforothers','Place and modify holds for patrons',0),
(9,'editcatalogue','Edit catalog (Modify bibliographic/holdings data)',0),
(10,'updatecharges','Manage patrons fines and fees',0),
-(11,'acquisition','Acquisition and/or suggestion management',0),
+(11,'acquisition','Acquisition management',0),
+(12,'suggestions','Suggestion management',0),
(13,'tools','Use all tools (expand for granular tools permissions)',0),
(14,'editauthorities','Edit authorities',0),
(15,'serials','Manage serial subscriptions',0),
diff --git a/installer/data/mysql/userpermissions.sql b/installer/data/mysql/userpermissions.sql
index ba1061e91c..b9ee7bb7d4 100644
--- a/installer/data/mysql/userpermissions.sql
+++ b/installer/data/mysql/userpermissions.sql
@@ -42,7 +42,6 @@ INSERT INTO permissions (module_bit, code, description) VALUES
(10, 'writeoff', 'Write off fines and fees'),
(10, 'remaining_permissions', 'Remaining permissions for managing fines and fees'),
(11, 'currencies_manage', 'Manage currencies and exchange rates'),
- (11, 'suggestions_manage', 'Manage purchase suggestions'),
(11, 'vendors_manage', 'Manage vendors'),
(11, 'contracts_manage', 'Manage contracts'),
(11, 'period_manage', 'Manage budgets'),
@@ -56,6 +55,7 @@ INSERT INTO permissions (module_bit, code, description) VALUES
(11, 'budget_add_del', 'Add and delete funds (but can''t modify funds)'),
(11, 'budget_manage_all', 'Manage all funds'),
(11, 'edi_manage', 'Manage EDIFACT transmissions'),
+ (12, 'suggestions_manage', 'Manage purchase suggestions'),
(13, 'edit_news', 'Write news for the OPAC and staff interfaces'),
(13, 'label_creator', 'Create printable labels and barcodes from catalog and patron data'),
(13, 'edit_calendar', 'Define days when the library is closed'),
diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/acquisitions-menu.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/acquisitions-menu.inc
index f5ef2e4579..de132ec66f 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/includes/acquisitions-menu.inc
+++ b/koha-tmpl/intranet-tmpl/prog/en/includes/acquisitions-menu.inc
@@ -4,7 +4,7 @@
- Acquisitions home
[% IF ( CAN_user_acquisition_order_receive ) %]- Late orders
[% END %]
- [% IF ( suggestion && CAN_user_acquisition_suggestions_manage ) %]- Suggestions
[% END %]
+ [% IF ( suggestion && CAN_user_suggestions_suggestions_manage ) %]- Suggestions
[% END %]
- Invoices
[% IF CAN_user_acquisition_edi_manage %]
- EDIFACT messages
diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/circ-menu.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/circ-menu.inc
index 8f76a9fe68..27a962212b 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/includes/circ-menu.inc
+++ b/koha-tmpl/intranet-tmpl/prog/en/includes/circ-menu.inc
@@ -117,7 +117,7 @@
[% END %]
[% END %]
- [% IF CAN_user_acquisition_suggestions_manage %]
+ [% IF CAN_user_suggestions_suggestions_manage %]
[% IF ( suggestionsview ) %]- [% ELSE %]
- [% END %]Purchase suggestions
[% END %]
[% IF CAN_user_borrowers_edit_borrowers && useDischarge %]
diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/permissions.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/permissions.inc
index 4e4a09a96e..d7fff59151 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/includes/permissions.inc
+++ b/koha-tmpl/intranet-tmpl/prog/en/includes/permissions.inc
@@ -9,7 +9,8 @@
[%- CASE 'reserveforothers' -%]Place and modify holds for patrons
[%- CASE 'editcatalogue' -%]Edit catalog (Modify bibliographic/holdings data)
[%- CASE 'updatecharges' -%]Manage patrons fines and fees
- [%- CASE 'acquisition' -%]Acquisition and/or suggestion management
+ [%- CASE 'acquisition' -%]Acquisition management
+ [%- CASE 'suggestions' -%]Suggestions management
[%- CASE 'tools' -%]Use all tools (expand for granular tools permissions)
[%- CASE 'editauthorities' -%]Edit authorities
[%- CASE 'serials' -%]Manage serial subscriptions
diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/acqui-home.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/acqui-home.tt
index 087d23836e..365bc594e1 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/acqui-home.tt
+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/acqui/acqui-home.tt
@@ -50,7 +50,7 @@
-[% IF ( CAN_user_acquisition_suggestions_manage && suggestion && suggestions_count ) %]
+[% IF ( CAN_user_suggestions_suggestions_manage && suggestion && suggestions_count ) %]
[% END %]
- [% IF ( CAN_user_acquisition_suggestions_manage && pendingsuggestions ) %]
+ [% IF ( CAN_user_suggestions_suggestions_manage && pendingsuggestions ) %]
Suggestions pending approval:
diff --git a/members/purchase-suggestions.pl b/members/purchase-suggestions.pl
index 8e4b76ad59..d8b4a86ae5 100755
--- a/members/purchase-suggestions.pl
+++ b/members/purchase-suggestions.pl
@@ -35,7 +35,7 @@ my ( $template, $loggedinuser, $cookie ) = get_template_and_user(
query => $input,
type => "intranet",
authnotrequired => 0,
- flagsrequired => { acquisition => 'suggestions_manage' },
+ flagsrequired => { suggestions => 'suggestions_manage' },
debug => 1,
}
);
diff --git a/suggestion/suggestion.pl b/suggestion/suggestion.pl
index 845ed0ecca..985e9cca97 100755
--- a/suggestion/suggestion.pl
+++ b/suggestion/suggestion.pl
@@ -111,7 +111,7 @@ my ( $template, $borrowernumber, $cookie, $userflags ) = get_template_and_user(
template_name => "suggestion/suggestion.tt",
query => $input,
type => "intranet",
- flagsrequired => { acquisition => 'suggestions_manage' },
+ flagsrequired => { suggestions => 'suggestions_manage' },
}
);