Lucas Gass
a02bd4f71c
Signed-off-by: Owen Leonard <oleonard@myacpl.org> Signed-off-by: Julian Maurice <julian.maurice@biblibre.com> Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org> Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
229 lines
9.8 KiB
Text
229 lines
9.8 KiB
Text
[% USE raw %]
|
|
[% USE Asset %]
|
|
[% USE KohaDates %]
|
|
[% USE Branches %]
|
|
[% USE Koha %]
|
|
[% SET footerjs = 1 %]
|
|
[% INCLUDE 'doc-head-open.inc' %]
|
|
<title>Koha › Tools › Patron clubs</title>
|
|
[% INCLUDE 'doc-head-close.inc' %]
|
|
|
|
</head>
|
|
|
|
<body id="clubs_clubs" class="clubs">
|
|
[% INCLUDE 'header.inc' %]
|
|
[% INCLUDE 'cat-search.inc' %]
|
|
<div id="breadcrumbs"><a href="/cgi-bin/koha/mainpage.pl">Home</a> › <a href="/cgi-bin/koha/tools/tools-home.pl">Tools</a> › Patron clubs</div>
|
|
|
|
<div class="main container-fluid">
|
|
<div class="row">
|
|
<div class="col-sm-10 col-sm-push-2">
|
|
<main>
|
|
|
|
<h1>Patron clubs</h1>
|
|
|
|
[% IF club_template %]
|
|
<div class="dialog message">
|
|
[% IF stored == 'updated' %]
|
|
<p>Club template <em>[% club_template.name | html %]</em> was updated.</p>
|
|
[% ELSE %]
|
|
<p>Club template <em>[% club_template.name | html %]</em> was saved.</p>
|
|
[% END %]
|
|
</div>
|
|
[% ELSIF club %]
|
|
<div class="dialog message">
|
|
[% IF stored == 'updated' %]
|
|
<p>Club <em>[% club.name | html %]</em> was updated.</p>
|
|
[% ELSE %]
|
|
<p>Club <em>[% club.name | html %]</em> was saved.</p>
|
|
[% END %]
|
|
</div>
|
|
[% END %]
|
|
|
|
<h3>Club templates</h3>
|
|
|
|
[% IF CAN_user_clubs_edit_templates %]
|
|
<div class="btn-toolbar">
|
|
<div class="btn-group">
|
|
<a class="btn btn-default" href="templates-add-modify.pl"><i class="fa fa-plus"></i> New club template</a>
|
|
</div>
|
|
</div>
|
|
[% END %]
|
|
|
|
[% IF club_templates %]
|
|
<table id="club-templates-table">
|
|
<thead>
|
|
<tr>
|
|
<th>Name</th>
|
|
<th>Description</th>
|
|
<th>Public enrollment</th>
|
|
<th>Email required</th>
|
|
<th>Library</th>
|
|
<th>Actions</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
[% FOREACH t IN club_templates %]
|
|
<tr>
|
|
<td>[% t.name | html %]</td>
|
|
<td>[% t.description | html %]</td>
|
|
<td>
|
|
[% IF t.is_enrollable_from_opac %]
|
|
Yes
|
|
[% ELSE %]
|
|
No
|
|
[% END %]
|
|
</td>
|
|
<td>
|
|
[% IF t.is_email_required %]
|
|
Yes
|
|
[% ELSE %]
|
|
No
|
|
[% END %]
|
|
</td>
|
|
<td>[% Branches.GetName( t.branchcode ) | html %]</td>
|
|
<td class="actions">
|
|
[% IF CAN_user_clubs_edit_templates %]
|
|
<a class="btn btn-xs btn-default" style="white-space:nowrap" href="/cgi-bin/koha/clubs/templates-add-modify.pl?id=[% t.id | html %]">
|
|
<i class="fa fa-pencil"></i> Edit
|
|
</a>
|
|
<a class="btn btn-xs btn-default delete_template" href="#" data-id="[% t.id | html %]" data-name="[% t.name | html %]">
|
|
<i class="fa fa-trash"></i> Delete
|
|
</a>
|
|
[% END %]
|
|
</td>
|
|
</tr>
|
|
[% END %]
|
|
</tbody>
|
|
</table>
|
|
[% ELSE %]
|
|
<div class="dialog message">No club templates defined.</div>
|
|
[% END %]
|
|
|
|
<h3>Clubs</h3>
|
|
|
|
[% IF CAN_user_clubs_edit_clubs %]
|
|
<div class="btn-toolbar">
|
|
<div class="btn-group">
|
|
[% IF club_templates %]
|
|
<button class="btn btn-default dropdown-toggle" data-toggle="dropdown"><i class="fa fa-plus"></i> New club <span class="caret"></span></button>
|
|
[% ELSE %]
|
|
<button disabled="disabled" class="btn btn-default dropdown-toggle" data-toggle="dropdown"><i class="fa fa-plus"></i> New club <span class="caret"></span></button>
|
|
[% END %]
|
|
<ul class="dropdown-menu">
|
|
[% FOREACH t IN club_templates %]
|
|
<li><a href="/cgi-bin/koha/clubs/clubs-add-modify.pl?club_template_id=[% t.id | uri %]">[% t.name | html %]</a></li>
|
|
[% END %]
|
|
</ul>
|
|
</div>
|
|
</div>
|
|
[% END %]
|
|
|
|
[% IF clubs %]
|
|
[% INCLUDE 'clubs-table.inc' %]
|
|
[% ELSE %]
|
|
[% IF club_templates %]
|
|
<div class="dialog message">No clubs defined.</div>
|
|
[% ELSE %]
|
|
<div class="dialog message">No clubs defined. A club template must be defined before a club can be defined.</div>
|
|
[% END %]
|
|
[% END %]
|
|
|
|
</main>
|
|
</div> <!-- /.col-sm-10.col-sm-push-2 -->
|
|
|
|
<div class="col-sm-2 col-sm-pull-10">
|
|
<aside>
|
|
[% INCLUDE 'tools-menu.inc' %]
|
|
</aside>
|
|
</div> <!-- /.col-sm-2.col-sm-pull-10 -->
|
|
</div> <!-- /.row -->
|
|
|
|
[% MACRO jsinclude BLOCK %]
|
|
[% INCLUDE 'datatables.inc' %]
|
|
[% Asset.js("js/tools-menu.js") | $raw %]
|
|
<script>
|
|
$(document).ready(function() {
|
|
tTable = $('#club-templates-table').dataTable($.extend(true, {}, dataTablesDefaults, {
|
|
"sPaginationType": "full",
|
|
"sDom": 'C<"top pager"ilpf><"#filter_c">tr<"bottom pager"ip>',
|
|
"aoColumnDefs": [
|
|
{ "aTargets": [ -1 ], "bSortable": false, "bSearchable": false },
|
|
]
|
|
} ));
|
|
|
|
cTable = $('#clubs-table').dataTable($.extend(true, {}, dataTablesDefaults, {
|
|
"sPaginationType": "full",
|
|
"sDom": 'C<"top pager"ilpf><"#filter_c">tr<"bottom pager"ip>',
|
|
"aoColumnDefs": [
|
|
{ "aTargets": [ -1 ], "bSortable": false, "bSearchable": false },
|
|
]
|
|
} ));
|
|
|
|
$(".delete_club").on("click", function(e){
|
|
e.preventDefault();
|
|
var club_id = $(this).data("id");
|
|
var club_name = $(this).data("name");
|
|
ConfirmDeleteClub( club_id, club_name );
|
|
});
|
|
|
|
$(".delete_template").on("click", function(e){
|
|
e.preventDefault();
|
|
var template_id = $(this).data("id");
|
|
var template_name = $(this).data("name");
|
|
ConfirmDeleteTemplate( template_id, template_name );
|
|
});
|
|
|
|
$(".club_hold_search").on("click", function(e){
|
|
e.preventDefault;
|
|
var club_id = $(this).data("id");
|
|
SearchToHold( club_id );
|
|
});
|
|
});
|
|
|
|
function ConfirmDeleteTemplate( id, name ) {
|
|
if ( confirm( _("Are you sure you want to delete the club template %s? This will delete all clubs using this template and cancel patron enrollments" ).format(name) ) ) {
|
|
$.ajax({
|
|
type: "POST",
|
|
url: '/cgi-bin/koha/svc/club/template/delete',
|
|
data: { id: id },
|
|
success: function( data ) {
|
|
if ( data.success ) {
|
|
location.reload();
|
|
} else {
|
|
alert(_("Unable to delete template!"));
|
|
}
|
|
},
|
|
dataType: 'json'
|
|
});
|
|
}
|
|
}
|
|
|
|
function ConfirmDeleteClub( id, name ) {
|
|
if ( confirm( _("Are you sure you want to delete the club %s? This will cancel all patron enrollments in this club." ).format(name) ) ) {
|
|
$.ajax({
|
|
type: "POST",
|
|
url: '/cgi-bin/koha/svc/club/delete',
|
|
data: { id: id },
|
|
success: function( data ) {
|
|
if ( data.success ) {
|
|
location.reload();
|
|
} else {
|
|
alert(_("Unable to delete club!"));
|
|
}
|
|
},
|
|
dataType: 'json'
|
|
});
|
|
}
|
|
}
|
|
|
|
function SearchToHold(club_id) {
|
|
var date = new Date();
|
|
date.setTime(date.getTime() + (10 * 60 * 1000));
|
|
$.cookie("holdforclub", club_id, { path: "/", expires: date });
|
|
location.href="/cgi-bin/koha/catalogue/search.pl";
|
|
}
|
|
</script>
|
|
[% END %]
|
|
|
|
[% INCLUDE 'intranet-bottom.inc' %]
|