[Koha-patches] [PATCH] MT2938 : Adds a permission for editing items
Henri-Damien LAURENT
henridamien.laurent at biblibre.com
Tue Feb 16 22:05:15 CET 2010
This adds a granular permission : edit_items
Conflicts solved:
cataloguing/additem.pl
kohaversion.pl
---
catalogue/updateitem.pl | 1 +
cataloguing/additem.pl | 4 ++--
.../data/mysql/en/mandatory/userpermissions.sql | 1 +
.../mysql/fr-FR/1-Obligatoire/userpermissions.sql | 1 +
installer/data/mysql/updatedatabase.pl | 7 +++++++
.../prog/en/modules/catalogue/moredetail.tmpl | 2 +-
kohaversion.pl | 2 +-
7 files changed, 14 insertions(+), 4 deletions(-)
diff --git a/catalogue/updateitem.pl b/catalogue/updateitem.pl
index 7b0b673..f270ddf 100755
--- a/catalogue/updateitem.pl
+++ b/catalogue/updateitem.pl
@@ -57,6 +57,7 @@ for ($damaged,$itemlost,$wthdrawn) {
# modify MARC item if input differs from items table.
my $item_changes = {};
if (defined $itemnotes) { # i.e., itemnotes parameter passed from form
+ my ($loggedinuser, $cookie, $sessionID) = checkauth($cgi, 0, {editcatalogue => 'edit_items'}, 'intranet');
if ((not defined $item_data_hashref->{'itemnotes'}) or $itemnotes ne $item_data_hashref->{'itemnotes'}) {
$item_changes->{'itemnotes'} = $itemnotes;
}
diff --git a/cataloguing/additem.pl b/cataloguing/additem.pl
index bf2deef..19962bf 100755
--- a/cataloguing/additem.pl
+++ b/cataloguing/additem.pl
@@ -80,11 +80,11 @@ my $frameworkcode = &GetFrameworkCode($biblionumber);
# Defining which userflag is needing according to the framework currently used
my $userflags;
if (defined $input->param('frameworkcode')) {
- $userflags = ($input->param('frameworkcode') eq 'FA') ? "fast_cataloging" : "edit_catalogue";
+ $userflags = ($input->param('frameworkcode') eq 'FA') ? "fast_cataloging" : "edit_items";
}
if (not defined $userflags) {
- $userflags = ($frameworkcode eq 'FA') ? "fast_cataloging" : "edit_catalogue";
+ $userflags = ($frameworkcode eq 'FA') ? "fast_cataloging" : "edit_items";
}
my ($template, $loggedinuser, $cookie)
diff --git a/installer/data/mysql/en/mandatory/userpermissions.sql b/installer/data/mysql/en/mandatory/userpermissions.sql
index fc9f305..b07b0ad 100644
--- a/installer/data/mysql/en/mandatory/userpermissions.sql
+++ b/installer/data/mysql/en/mandatory/userpermissions.sql
@@ -3,6 +3,7 @@ INSERT INTO permissions (module_bit, code, description) VALUES
( 1, 'override_renewals', 'Override blocked renewals'),
( 9, 'edit_catalogue', 'Edit catalog (Modify bibliographic/holdings data)'),
( 9, 'fast_cataloging', 'Fast cataloging'),
+ ( 9, 'edit_items', 'Edit Items'),
(11, 'vendors_manage', 'Manage vendors'),
(11, 'contracts_manage', 'Manage contracts'),
(11, 'period_manage', 'Manage periods'),
diff --git a/installer/data/mysql/fr-FR/1-Obligatoire/userpermissions.sql b/installer/data/mysql/fr-FR/1-Obligatoire/userpermissions.sql
index 4e1902d..3111d2d 100644
--- a/installer/data/mysql/fr-FR/1-Obligatoire/userpermissions.sql
+++ b/installer/data/mysql/fr-FR/1-Obligatoire/userpermissions.sql
@@ -2,6 +2,7 @@ INSERT INTO permissions (module_bit, code, description) VALUES
( 1, 'circulate_remaining_permissions', 'Remaining circulation permissions'),
( 1, 'override_renewals', 'Override blocked renewals'),
( 9, 'edit_catalogue', 'Editer le catalogue'),
+ ( 9, 'edit_items', 'Editer les exemplaires'),
( 9, 'fast_cataloging', 'Catalogage rapide'),
(13, 'edit_news', 'Write news for the OPAC and staff interfaces'),
(13, 'label_creator', 'Create printable labels and barcodes from catalog and patron data'),
diff --git a/installer/data/mysql/updatedatabase.pl b/installer/data/mysql/updatedatabase.pl
index 52a341a..44fbe97 100755
--- a/installer/data/mysql/updatedatabase.pl
+++ b/installer/data/mysql/updatedatabase.pl
@@ -3445,6 +3445,13 @@ if (C4::Context->preference("Version") < TransformToNum($DBversion)) {
SetVersion ($DBversion);
}
+$DBversion = '3.01.00.118';
+if (C4::Context->preference('Version') < TransformToNum($DBversion)){
+ $dbh->do("INSERT INTO `permissions` (`module_bit` , `code` , `description`) VALUES ('9', 'edit_items', 'Edit items');");
+ print "Upgrade to $DBversion done (Added 'Edit Items' permission)\n";
+ SetVersion ($DBversion);
+}
+
$DBversion = '3.02.00.015';
if (C4::Context->preference("Version") < TransformToNum($DBversion)) {
$dbh->do('ALTER TABLE `categories` ADD COLUMN `enrolmentperioddate` DATE NULL DEFAULT NULL AFTER `enrolmentperiod`');
diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/moredetail.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/moredetail.tmpl
index 72c9b0b..7088203 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/moredetail.tmpl
+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/catalogue/moredetail.tmpl
@@ -163,7 +163,7 @@
<!-- TMPL_IF NAME="card2" --><li><span class="label">Previous Borrower:</span> <a href="/cgi-bin/koha/circ/circulation.pl?borrowernumber=<!-- TMPL_VAR NAME="borrower2" -->"><!-- TMPL_VAR NAME="card2" --></a> </li><!-- /TMPL_IF -->
<li><span class="label">Paid for?:</span> <!-- TMPL_VAR NAME="paidfor" --> </li>
<li><span class="label">Public Note:</span>
- <!-- TMPL_IF NAME="CAN_user_circulate" -->
+ <!-- TMPL_IF NAME="CAN_user_editcatalogue_edit_items" -->
<form class="inline" action="updateitem.pl" method="post"><input type="hidden" name="biblionumber" value="<!-- TMPL_VAR Name="biblionumber" -->" />
<input type="hidden" name="biblioitemnumber" value="<!-- TMPL_VAR Name="biblioitemnumber" -->" /><input type="hidden" name="itemnumber" value="<!-- TMPL_VAR Name="itemnumber" -->" />
<textarea name="itemnotes" rows="2" cols="30"><!-- TMPL_VAR NAME="itemnotes" --></textarea><input type="submit" name="submit" class="submit" value="Update" />
diff --git a/kohaversion.pl b/kohaversion.pl
index 9fc1a85..0af7061 100644
--- a/kohaversion.pl
+++ b/kohaversion.pl
@@ -10,7 +10,7 @@
use strict;
sub kohaversion {
- our $VERSION = '3.01.00.117';
+ our $VERSION = '3.01.00.118';
# version needs to be set this way
# so that it can be picked up by Makefile.PL
# during install
--
1.6.3.3
More information about the Koha-patches
mailing list