From ca46e2240082b0334ec4f4d5e5cf4868891816e8 Mon Sep 17 00:00:00 2001 From: Jonathan Druart <jonathan.druart@bugs.koha-community.org> Date: Tue, 22 Sep 2015 09:47:25 +0100 Subject: [PATCH] Bug 13632: Use an include file to display permissions This patch set moves the permissions' descriptions to the po files instead of having them in the DB. Test plan: 0/ Apply all patches 1/ Create a new installation 2/ Confirm the userflags and permissions tables are correctly populated 3/ Update the po file for a translated language 4/ Confirm you are able to translate the permissions descriptions 5/ Install the template files for this language 6/ Switch the interface to use this language and confirm the string are correctly translated. QA Note: At this point we could remove the userflags.flagdesc and permissions.description DB fields, but I would prefer to keep them: developers will know what the permission do without the need to go and see the include file (we have it in the sql files and so, in the DB). --- .../intranet-tmpl/prog/en/includes/permissions.inc | 103 +++++++++++++++++++++ .../prog/en/modules/members/member-flags.tt | 5 +- 2 files changed, 106 insertions(+), 2 deletions(-) create mode 100644 koha-tmpl/intranet-tmpl/prog/en/includes/permissions.inc diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/permissions.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/permissions.inc new file mode 100644 index 0000000..9db7388 --- /dev/null +++ b/koha-tmpl/intranet-tmpl/prog/en/includes/permissions.inc @@ -0,0 +1,103 @@ +[%- BLOCK main_permissions -%] + [% SWITCH name %] + [%- CASE 'superlibrarian' -%]<span>Access to all librarian functions</span> + [%- CASE 'circulate' -%]<span>Check out and check in items</span> + [%- CASE 'catalogue' -%]<span><b>Required for staff login.</b> Staff access, allows viewing of catalogue in staff client.</span> + [%- CASE 'parameters' -%]<span>Manage Koha system settings (Administration panel)</span> + [%- CASE 'borrowers' -%]<span>Add or modify patrons</span> + [%- CASE 'permissions' -%]<span>Set user permissions</span> + [%- CASE 'reserveforothers' -%]<span>Place and modify holds for patrons</span> + [%- CASE 'editcatalogue' -%]<span>Edit catalog (Modify bibliographic/holdings data)</span> + [%- CASE 'updatecharges' -%]<span>Manage patrons fines and fees</span> + [%- CASE 'acquisition' -%]<span>Acquisition and/or suggestion management</span> + [%- CASE 'management' -%]<span>Set library management parameters (deprecated)</span> + [%- CASE 'tools' -%]<span>Use all tools (expand for granular tools permissions)</span> + [%- CASE 'editauthorities' -%]<span>Edit authorities</span> + [%- CASE 'serials' -%]<span>Manage serial subscriptions</span> + [%- CASE 'reports' -%]<span>Allow access to the reports module</span> + [%- CASE 'staffaccess' -%]<span>Allow staff members to modify permissions for other staff members</span> + [%- CASE 'coursereserves' -%]<span>Course reserves</span> + [%- CASE 'plugins' -%]<span>Koha plugins</span> + [%- CASE 'lists' -%]<span>Lists</span> + [%- END -%] +[%- END -%] + +[%- BLOCK sub_permissions -%] + [% SWITCH name %] + [%- CASE 'circulate_remaining_permissions' -%]<span>Remaining circulation permissions</span> + [%- CASE 'force_checkout' -%]<span>Force checkout if a limitation exists</span> + [%- CASE 'manage_restrictions' -%]<span>Manage restrictions for accounts</span> + [%- CASE 'overdues_report' -%]<span>Execute overdue items report</span> + [%- CASE 'override_renewals' -%]<span>Override blocked renewals</span> + [%- CASE 'manage_circ_rules' -%]<span>manage circulation rules</span> + [%- CASE 'parameters_remaining_permissions' -%]<span>Remaining system parameters permissions</span> + [%- CASE 'modify_holds_priority' -%]<span>Modify holds priority</span> + [%- CASE 'place_holds' -%]<span>Place holds for patrons</span> + [%- CASE 'delete_all_items' -%]<span>Delete all items at once</span> + [%- CASE 'edit_catalogue' -%]<span>Edit catalog (Modify bibliographic/holdings data)</span> + [%- CASE 'edit_items' -%]<span>Edit items</span> + [%- CASE 'edit_items_restricted' -%]<span>Limit item modification to subfields defined in the SubfieldsToAllowForRestrictedEditing preference (please note that edit_item is still required)</span> + [%- CASE 'fast_cataloging' -%]<span>Fast cataloging</span> + [%- CASE 'remaining_permissions' -%]<span>Remaining permissions for managing fines and fees</span> + [%- CASE 'writeoff' -%]<span>Write off fines and fees</span> + [%- CASE 'budget_add_del' -%]<span>Add and delete budgets (but can't modify budgets)</span> + [%- CASE 'budget_manage' -%]<span>Manage budgets</span> + [%- CASE 'budget_manage_all' -%]<span>Manage all budgets</span> + [%- CASE 'budget_modify' -%]<span>Modify budget (can't create lines, but can modify existing ones)</span> + [%- CASE 'contracts_manage' -%]<span>Manage contracts</span> + [%- CASE 'group_manage' -%]<span>Manage orders & basketgroups</span> + [%- CASE 'order_manage' -%]<span>Manage orders & basket</span> + [%- CASE 'order_manage_all' -%]<span>Manage all orders and baskets, regardless of restrictions on them</span> + [%- CASE 'order_receive' -%]<span>Manage orders & basket</span> + [%- CASE 'period_manage' -%]<span>Manage periods</span> + [%- CASE 'planning_manage' -%]<span>Manage budget plannings</span> + [%- CASE 'vendors_manage' -%]<span>Manage vendors</span> + [%- CASE 'batch_upload_patron_images' -%]<span>Upload patron images in a batch or one at a time</span> + [%- CASE 'delete_anonymize_patrons' -%]<span>Delete old borrowers and anonymize circulation history (deletes borrower reading history)</span> + [%- CASE 'edit_calendar' -%]<span>Define days when the library is closed</span> + [%- CASE 'edit_news' -%]<span>Write news for the OPAC and staff interfaces</span> + [%- CASE 'edit_notice_status_triggers' -%]<span>Set notice/status triggers for overdue items</span> + [%- CASE 'edit_notices' -%]<span>Define notices</span> + [%- CASE 'edit_patrons' -%]<span>Perform batch modification of patrons</span> + [%- CASE 'edit_quotes' -%]<span>Edit quotes for quote-of-the-day feature</span> + [%- CASE 'export_catalog' -%]<span>Export bibliographic and holdings data</span> + [%- CASE 'import_patrons' -%]<span>Import patron data</span> + [%- CASE 'inventory' -%]<span>Perform inventory (stocktaking) of your catalog</span> + [%- CASE 'items_batchdel' -%]<span>Perform batch deletion of items</span> + [%- CASE 'items_batchmod' -%]<span>Perform batch modification of items</span> + [%- CASE 'items_batchmod_restricted' -%]<span>Limit batch item modification to subfields defined in the SubfieldsToAllowForRestrictedBatchmod preference (please note that items_batchmod is still required)</span> + [%- CASE 'label_creator' -%]<span>Create printable labels and barcodes from catalog and patron data</span> + [%- CASE 'manage_csv_profiles' -%]<span>Manage CSV export profiles</span> + [%- CASE 'manage_patron_lists' -%]<span>Add, edit and delete patron lists and their contents</span> + [%- CASE 'manage_staged_marc' -%]<span>Managed staged MARC records, including completing and reversing imports</span> + [%- CASE 'marc_modification_templates' -%]<span>Manage marc modification templates</span> + [%- CASE 'moderate_comments' -%]<span>Moderate patron comments</span> + [%- CASE 'moderate_tags' -%]<span>Moderate patron tags</span> + [%- CASE 'records_batchdel' -%]<span>Perform batch deletion of records (bibliographic or authority)</span> + [%- CASE 'records_batchmod' -%]<span>Perform batch modification of records (biblios or authorities)</span> + [%- CASE 'rotating_collections' -%]<span>Manage rotating collections</span> + [%- CASE 'schedule_tasks' -%]<span>Schedule tasks to run</span> + [%- CASE 'stage_marc_import' -%]<span>Stage MARC records into the reservoir</span> + [%- CASE 'upload_local_cover_images' -%]<span>Upload local cover images</span> + [%- CASE 'view_system_logs' -%]<span>Browse the system logs</span> + [%- CASE 'check_expiration' -%]<span>Check the expiration of a serial</span> + [%- CASE 'claim_serials' -%]<span>Claim missing serials</span> + [%- CASE 'create_subscription' -%]<span>Create a new subscription</span> + [%- CASE 'delete_subscription' -%]<span>Delete an existing subscription</span> + [%- CASE 'edit_subscription' -%]<span>Edit an existing subscription</span> + [%- CASE 'receive_serials' -%]<span>Serials receiving</span> + [%- CASE 'renew_subscription' -%]<span>Renew a subscription</span> + [%- CASE 'routing' -%]<span>Routing</span> + [%- CASE 'superserials' -%]<span>Manage subscriptions from any branch (only applies when IndependentBranches is used)</span> + [%- CASE 'create_reports' -%]<span>Create SQL reports</span> + [%- CASE 'execute_reports' -%]<span>Execute SQL reports</span> + [%- CASE 'add_reserves' -%]<span>Add course reserves</span> + [%- CASE 'delete_reserves' -%]<span>Remove course reserves</span> + [%- CASE 'manage_courses' -%]<span>Add, edit and delete courses</span> + [%- CASE 'configure' -%]<span>Configure plugins</span> + [%- CASE 'manage' -%]<span>Manage plugins ( install / uninstall )</span> + [%- CASE 'report' -%]<span>Use report plugins</span> + [%- CASE 'tool' -%]<span>Use tool plugins</span> + [%- CASE 'delete_public_lists' -%]<span>Delete public lists</span> + [%- END -%] +[%- END -%] diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/members/member-flags.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/members/member-flags.tt index c1e751e..f68027a 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/members/member-flags.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/members/member-flags.tt @@ -1,3 +1,4 @@ +[% PROCESS 'permissions.inc' %] [% INCLUDE 'doc-head-open.inc' %] <title>Koha › Patrons › Set permissions for [% surname %], [% firstname %]</title> <link rel="stylesheet" type="text/css" href="[% themelang %]/css/treeview/jquery.treeview.css"/> @@ -131,7 +132,7 @@ <input type="checkbox" id="flag-[% loo.bit %]" name="flag" value="[% loo.flag %]" onclick="toggleChildren(this)" /> [% END %] <label class="permissioncode" for="flag-[% loo.bit %]">[% loo.flag %]</label> - <span class="permissiondesc">[% loo.flagdesc %]</span> + <span class="permissiondesc">[% PROCESS main_permissions name=loo.flag %]</span> [% IF ( loo.sub_perm_loop ) %] <ul id="flag-[% loo.bit %]-children"> [% FOREACH sub_perm_loo IN loo.sub_perm_loop %] @@ -142,7 +143,7 @@ <input type="checkbox" id="[% sub_perm_loo.id %]" name="flag" value="[% sub_perm_loo.perm %]" onclick="toggleParent(this)" /> [% END %] <label class="permissioncode" for="[% sub_perm_loo.id %]">[% sub_perm_loo.code %]</label> - <span class="permissiondesc">[% sub_perm_loo.description %]</span> + <span class="permissiondesc">[% PROCESS sub_permissions name=sub_perm_loo.code %]</span> </li> [% END %] </ul> -- 2.1.0