Jonathan Druart
5825026448
This patch has been generated with the script provided on bug 21576. It only affects variable used in the href attribute of a link *when* href it the first attribute of the node (grep "a href") Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com> Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
289 lines
14 KiB
Text
289 lines
14 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' %]
|
|
|
|
[% Asset.css("css/datatables.css") | $raw %]
|
|
</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 <i>[% club_template.name | html %]</i> was updated.</p>
|
|
[% ELSE %]
|
|
<p>Club template <i>[% club_template.name | html %]</i> was saved.</p>
|
|
[% END %]
|
|
</div>
|
|
[% ELSIF club %]
|
|
<div class="dialog message">
|
|
[% IF stored == 'updated' %]
|
|
<p>Club <i>[% club.name | html %]</i> was updated.</p>
|
|
[% ELSE %]
|
|
<p>Club <i>[% club.name | html %]</i> 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-sm 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" href="#" onclick='ConfirmDeleteTemplate([% t.id | html %], "[% t.name | html %]", $(this) ); return false;'>
|
|
<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-sm 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-sm 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 %]
|
|
<table id="clubs-table">
|
|
<thead>
|
|
<tr>
|
|
<th>Name</th>
|
|
<th>Template</th>
|
|
<th>Description</th>
|
|
<th>Public enrollment</th>
|
|
<th>Email required</th>
|
|
<th>Library</th>
|
|
<th>Start date</th>
|
|
<th>End date</th>
|
|
<th>Enrolled patrons</th>
|
|
<th> </th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
[% FOREACH c IN clubs %]
|
|
<tr>
|
|
<td>[% c.name | html %]</td>
|
|
<td>[% c.club_template.name | html %]</td>
|
|
<td>[% c.description | html %]</td>
|
|
<td>
|
|
[% IF c.club_template.is_enrollable_from_opac %]
|
|
Yes
|
|
[% ELSE %]
|
|
No
|
|
[% END %]
|
|
</td>
|
|
<td>
|
|
[% IF c.club_template.is_email_required %]
|
|
Yes
|
|
[% ELSE %]
|
|
No
|
|
[% END %]
|
|
</td>
|
|
<td>[% Branches.GetName( c.branchcode ) | html %]</td>
|
|
<td>
|
|
[% IF c.date_start %]
|
|
[% c.date_start | $KohaDates %]
|
|
[% END %]
|
|
</td>
|
|
<td>
|
|
[% IF c.date_end %]
|
|
[% c.date_end | $KohaDates %]
|
|
[% END %]
|
|
</td>
|
|
<td>
|
|
[% c.club_enrollments.count | html %]
|
|
</td>
|
|
<td class="actions">
|
|
<div class="dropdown">
|
|
<a class="btn btn-default btn-xs dropdown-toggle" id="clubactions[% c.id | html %]" role="button" data-toggle="dropdown" href="#">
|
|
Actions <b class="caret"></b>
|
|
</a>
|
|
<ul class="dropdown-menu pull-right" role="menu" aria-labelledby="clubactions[% c.id | html %]">
|
|
[% IF ( c.club_enrollments.count ) %]
|
|
<li>
|
|
<a href="club-enrollments.pl?id=[% c.id | uri %]">
|
|
<i class="fa fa-list-ul"></i> Enrollments
|
|
</a>
|
|
</li>
|
|
[% ELSE %]
|
|
<li class="disabled">
|
|
<a href="club-enrollments.pl?id=[% c.id | uri %]">
|
|
<i class="fa fa-list-ul"></i> Enrollments
|
|
</a>
|
|
</li>
|
|
[% END %]
|
|
[% IF CAN_user_clubs_edit_clubs %]
|
|
<li>
|
|
<a href="clubs-add-modify.pl?id=[% c.id | uri %]">
|
|
<i class="fa fa-pencil"></i> Edit
|
|
</a>
|
|
</li>
|
|
<li>
|
|
<a href="#" onclick='ConfirmDeleteClub([% c.id | html %], "[% c.name | html %]", $(this) ); return false;'>
|
|
<i class="fa fa-trash"></i> Delete
|
|
</a>
|
|
</li>
|
|
[% END %]
|
|
</ul>
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
[% END %]
|
|
</tbody>
|
|
</table> <!-- /.clubs-table -->
|
|
[% 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": "four_button",
|
|
"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": "four_button",
|
|
"sDom": 'C<"top pager"ilpf><"#filter_c">tr<"bottom pager"ip>',
|
|
"aoColumnDefs": [
|
|
{ "aTargets": [ -1 ], "bSortable": false, "bSearchable": false },
|
|
]
|
|
} ));
|
|
});
|
|
|
|
function ConfirmDeleteTemplate( id, name, a ) {
|
|
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, a ) {
|
|
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'
|
|
});
|
|
}
|
|
}
|
|
</script>
|
|
[% END %]
|
|
|
|
[% INCLUDE 'intranet-bottom.inc' %]
|