5 [% INCLUDE 'doc-head-open.inc' %]
6 <title>Koha › Administration › Library groups</title>
7 [% INCLUDE 'doc-head-close.inc' %]
8 [% Asset.css("lib/jquery/plugins/treetable/stylesheets/jquery.treetable.css") | $raw %]
11 <body id="admin_library_groups" class="admin">
12 [% INCLUDE 'header.inc' %]
13 [% INCLUDE 'cat-search.inc' %]
15 <div id="breadcrumbs">
16 <a href="/cgi-bin/koha/mainpage.pl">Home</a>
17 › <a href="/cgi-bin/koha/admin/admin-home.pl">Administration</a>
18 › <a href="/cgi-bin/koha/admin/library_groups.pl">Library groups</a>
22 <div class="dialog message group-added">
23 [% IF added.branchcode %]
24 [% added.library.branchname | $KohaSpan class = 'name' | $raw %] added to group.
26 Group [% added.title | $KohaSpan class = 'name' | $raw %] created.
30 <div class="dialog message group-deleted">
31 [% IF deleted.title %]
32 Group [% deleted.title | $KohaSpan class = 'name' | $raw %] has been deleted.
34 [% deleted.library | $KohaSpan class = 'name' | $raw %] has been removed from group.
37 [% ELSIF error_duplicate_title %]
38 <div class="dialog alert error-duplicate-group-title">
39 A group with the title [% error_duplicate_title | $KohaSpan class = 'name' | $raw %] already exists.
43 <div class="main container-fluid">
45 <div class="col-sm-10 col-sm-push-2">
48 <div id="toolbar" class="btn-toolbar">
49 <div class="btn-group">
50 <a id="add-group-root" class="btn btn-default add-group" href="#">
51 <i class="fa fa-plus"></i> Add group
56 <h2>Library groups</h2>
58 [% FOREACH root_group IN root_groups %]
59 <table class="library-groups">
63 <th>Features enabled</th>
66 [% PROCESS tree group=root_group %]
71 </div> <!-- /.col-sm-10.col-sm-push-2 -->
73 <div class="col-sm-2 col-sm-pull-10">
75 [% INCLUDE 'admin-menu.inc' %]
77 </div> <!-- /.col-sm-2.col-sm-pull-10 -->
80 <div id="add-group-modal" class="modal" tabindex="-1" role="dialog" aria-labelledby="add-group-modal-label" aria-hidden="true">
81 <form id="add-group-form" action="/cgi-bin/koha/admin/library_groups.pl" class="form-horizontal">
82 <div class="modal-dialog">
83 <div class="modal-content">
84 <div class="modal-header">
85 <h3 id="add-group-modal-label">Add group</h3>
87 <div class="modal-body">
88 <fieldset class="rows">
89 <input type="hidden" id="add-group-modal-parent-id" name="parent_id" value="" />
90 <input type="hidden" id="add-group-modal-action" name="action" value="add">
93 <label for="add-group-modal-title">Title: </label>
94 <input type="text" size="40" maxlength="100" name="title" id="add-group-modal-title" required="required" />
95 <span class="required">Required</span>
98 <label for="add-group-modal-description">Description: </label>
99 <input type="text" size="40" name="description" id="add-group-modal-description" />
103 <div id="root-group-features-add">
105 <div class="checkbox">
108 <input type="checkbox" name="ft_hide_patron_info" id="add-group-modal-ft_hide_patron_info" value="1" />
109 Limit patron data access by group
114 <input type="checkbox" name="ft_search_groups_opac" id="add-group-modal-ft_search_groups_opac" value="1" />
115 Use for OPAC search groups
120 <input type="checkbox" name="ft_search_groups_staff" id="add-group-modal-ft_search_groups_staff" value="1" />
121 Use for staff search groups
127 <div class="modal-footer">
128 <button type="submit" class="btn btn-default">Save</button>
129 <a href="#" class="cancel" data-dismiss="modal" aria-hidden="true">Cancel</a>
136 <div id="edit-group-modal" class="modal" tabindex="-1" role="dialog" aria-labelledby="edit-group-modal-label" aria-hidden="true">
137 <form id="edit-group-form" action="/cgi-bin/koha/admin/library_groups.pl" class="form-horizontal">
138 <div class="modal-dialog">
139 <div class="modal-content">
140 <div class="modal-header">
141 <h3 id="edit-group-modal-label">Edit group</h3>
143 <div class="modal-body">
144 <input type="hidden" id="edit-group-modal-id" name="id" value="" />
145 <input type="hidden" id="edit-group-modal-action" name="action" value="edit" />
146 <fieldset class="rows">
149 <label for="edit-group-modal-title">Title: </label>
150 <input type="text" size="40" maxlength="100" id="edit-group-modal-title" name="title" value="" required="required" />
151 <span class="required">Required</span>
155 <label for="edit-group-modal-description">Description: </label>
156 <input type="text" size="40" id="edit-group-modal-description" name="description" value="" />
160 <div id="root-group-features-edit">
162 <div class="checkbox">
165 <input type="checkbox" id="edit-group-modal-ft_hide_patron_info" name="ft_hide_patron_info" value="1" />
166 Limit patron data access by group
171 <input type="checkbox" id="edit-group-modal-ft_search_groups_opac" name="ft_search_groups_opac" value="1" />
172 Use for OPAC search groups
177 <input type="checkbox" id="edit-group-modal-ft_search_groups_staff" name="ft_search_groups_staff" value="1" />
178 Use for staff search groups
184 <div class="modal-footer">
185 <button type="submit" class="btn btn-default">Update</button>
186 <a href="#" class="cancel" data-dismiss="modal" aria-hidden="true">Cancel</a>
193 <div id="delete-group-modal" class="modal" tabindex="-1" role="dialog" aria-labelledby="delete-group-modal-label" aria-hidden="true">
194 <form action="/cgi-bin/koha/admin/library_groups.pl">
195 <div class="modal-dialog">
196 <div class="modal-content">
197 <input id="delete-group-modal-action" type="hidden" name="action" value="delete" />
198 <input id="delete-group-modal-id" type="hidden" name="id" value="" />
199 <div class="modal-header">
200 <h3 id="delete-group-modal-label">Delete group</h3>
202 <div class="modal-body">
203 Are you sure you want to delete <span id="delete-group-modal-title" class="name"></span>?
205 <div class="modal-footer">
206 <button type="submit" class="btn btn-danger"><i class="fa fa-trash"></i> Delete</button>
207 <button class="btn btn-default" data-dismiss="modal" aria-hidden="true">Cancel</button>
214 <div id="remove-library-modal" class="modal" tabindex="-1" role="dialog" aria-labelledby="remove-library-modal-label" aria-hidden="true">
215 <form action="/cgi-bin/koha/admin/library_groups.pl">
216 <div class="modal-dialog">
217 <div class="modal-content">
218 <input id="remove-library-modal-action" type="hidden" name="action" value="delete" />
219 <input id="remove-library-modal-id" type="hidden" name="id" value="" />
220 <div class="modal-header">
221 <h3 id="remove-library-modal-label">Remove library from group</h3>
223 <div class="modal-body">
224 Are you sure you want to remove <span id="remove-library-modal-library" class="name"></span> from <span id="remove-library-modal-group" class="name"></span>?
226 <div class="modal-footer">
227 <button type="submit" class="btn btn-danger"><i class="fa fa-trash"></i> Remove</button>
228 <button class="btn btn-default" data-dismiss="modal" aria-hidden="true">Cancel</button>
235 [% MACRO jsinclude BLOCK %]
236 [% Asset.js("lib/jquery/plugins/treetable/jquery.treetable.js") | $raw %]
238 $(document).ready(function() {
239 $('.library-groups').treetable({
241 initialState: 'expanded',
242 clickableNodeNames: true,
245 $('.add-group').on('click', function(e) {
247 var id = $(this).data('groupId');
251 $('.edit-group').on('click', function(e) {
253 var id = $(this).data('groupId');
254 var parent_id = $(this).data('groupParentId');
255 var title = $(this).data('groupTitle');
256 var description = $(this).data('groupDescription');
257 var ft_hide_patron_info = $(this).data('groupFt_hide_patron_info');
258 var ft_search_groups_opac = $(this).data('groupFt_search_groups_opac');
259 var ft_search_groups_staff = $(this).data('groupFt_search_groups_staff');
260 edit_group( id, parent_id, title, description, ft_hide_patron_info, ft_search_groups_opac, ft_search_groups_staff );
263 $('.delete-group').on('click', function(e) {
265 var id = $(this).data('groupId');
266 var title = $(this).data('groupTitle');
267 delete_group( id, title );
270 $('.remove-library').on('click', function(e) {
272 var id = $(this).data('groupId');
273 var library = $(this).data('groupLibrary');
274 var parent_title = $(this).data('groupParentTitle');
275 remove_library( id, library, parent_title );
277 $('#add-group-modal').on('shown.bs.modal', function() {
278 $('#add-group-modal-title').focus();
280 $('#edit-group-modal').on('shown.bs.modal', function() {
281 $('#edit-group-modal-title').focus();
285 function add_group( parent_id ) {
286 $('#add-group-modal-parent-id').val( parent_id );
288 $('#add-group-modal-description').val("");
289 $('#add-group-modal-title').val("");
292 $('#add-group-modal-ft_hide_patron_info').prop('checked', false);
293 $('#add-group-modal-ft_search_groups_opac').prop('checked', false);
294 $('#add-group-modal-ft_search_groups_staff').prop('checked', false);
296 $('#root-group-features-add').hide();
298 $('#root-group-features-add').show();
300 $('#add-group-modal').modal('show');
304 function edit_group( id, parent_id, title, description, ft_hide_patron_info, ft_search_groups_opac, ft_search_groups_staff ) {
305 $('#edit-group-modal-id').val( id );
306 $('#edit-group-modal-title').val( title );
307 $('#edit-group-modal-description').val( description );
310 $('#edit-group-modal-ft_hide_patron_info').prop('checked', false);
311 $('#edit-group-modal-ft_search_groups_opac').prop('checked', false);
312 $('#edit-group-modal-ft_search_groups_staff').prop('checked', false);
313 $('#root-group-features-edit').hide();
315 $('#edit-group-modal-ft_hide_patron_info').prop('checked', ft_hide_patron_info ? true : false );
316 $('#edit-group-modal-ft_search_groups_opac').prop('checked', ft_search_groups_opac ? true : false );
317 $('#edit-group-modal-ft_search_groups_staff').prop('checked', ft_search_groups_staff ? true : false );
318 $('#root-group-features-edit').show();
321 $('#edit-group-modal').modal('show');
324 function delete_group( id, title ) {
325 $('#delete-group-modal-title').html(title);
326 $('#delete-group-modal-id').val( id );
327 $('#delete-group-modal').modal('show');
330 function remove_library( id, library, parent_title ) {
331 $('#remove-library-modal-library').html( library );
332 $('#remove-library-modal-group').html(parent_title);
333 $('#remove-library-modal-id').val( id );
334 $('#remove-library-modal').modal('show');
340 [% INCLUDE 'intranet-bottom.inc' %]
343 <tr data-tt-id="[% group.id | html %]" data-tt-parent-id="[% group.parent_id | html %]">
345 [% IF group.branchcode %]
346 [% group.branchcode | html %]
348 [% group.title | html %]
352 [% IF group.branchcode %]
353 [% group.library.branchname | html %]
355 [% group.description | html %]
359 [% UNLESS group.branchcode %]
361 [% IF group.ft_hide_patron_info %]
362 <li>Hide patron's info for librarians outside of this group.</li>
364 [% IF group.ft_search_groups_opac %]
365 <li>Use for OPAC search groups</li>
367 [% IF group.ft_search_groups_staff %]
368 <li>Use for staff search groups</li>
374 [% IF group.branchcode %]
375 <button class="btn btn-default btn-xs remove-library" data-group-id="[% group.id | html %]" data-group-library="[% group.library.branchname | html %]" data-group-parent-title="[% group.parent.title | html %]" ><i class="fa fa-trash"></i> Remove from group</button>
377 <div class="btn-group">
378 <button class="btn btn-default btn-xs dropdown-toggle" data-toggle="dropdown"><i class="fa fa-wrench"></i> Actions <span class="caret"></span></button>
379 <ul class="dropdown-menu">
381 <a id="add-group-[% group.id | html %]" href="#" class="add-group" data-group-id="[% group.id | html %]">
382 <i class="fa fa-plus"></i> Add sub-group
387 <a class="edit-group" id="edit-group-[% group.id | html %]" href="#" data-group-id="[% group.id | html %]" data-group-parent-id="[% group.parent_id | html %]" data-group-title="[% group.title | html %]" data-group-description="[% group.description | html %]" data-group-ft_hide_patron_info="[% group.ft_hide_patron_info | html %]" data-group-ft_search_groups_opac="[% group.ft_search_groups_opac | html %]" data-group-ft_search_groups_staff="[% group.ft_search_groups_staff | html %]" >
388 <i class="fa fa-pencil"></i> Edit
393 <a class="delete-group" id="delete-group-[% group.id | html %]" href="#" data-group-id="[% group.id | html %]" data-group-title="[% group.title | html %]">
394 <i class="fa fa-trash"></i> Delete
400 <div class="btn-group">
401 <button class="btn btn-default btn-xs dropdown-toggle" data-toggle="dropdown"><i class="fa fa-plus"></i> Add library <span class="caret"></span></button>
402 <ul class="dropdown-menu">
403 [% FOREACH library IN group.libraries_not_direct_children %]
405 <a class="add-library" id="add-library[% library.id | html %]-[% group.id | html %]" href="/cgi-bin/koha/admin/library_groups.pl?action=add&parent_id=[% group.id | html %]&branchcode=[% library.id | html %]">
406 [% library.branchname | html %]
416 [% FOREACH g IN group.children %]
417 [% PROCESS tree group=g %]