Kyle M Hall
95429af685
This features would add the ability to create clubs which patrons may be enrolled in. It would be particularly useful for tracking summer reading programs, book clubs and other such clubs. Test Plan: 1) Apply this patch 2) Run updatedatabase.pl 3) Ensure your staff user has the new 'Patron clubs' permissions 4) Under the tools menu, click the "Patron clubs" link 5) Create a new club template * Here you can add fields that can be filled out at the time a new club is created based on the template, or a new enrollment is created for a given club based on the template. 6) Create a new club based on that template 7) Attempt to enroll a patron in that club 8) Create a club with email required set 9) Attempt to enroll a patron without an email address in that club 10) Create a club that is enrollable from the OPAC 11) Attempt to enroll a patron in that club 12) Attempt to cancel a club enrollment from the OPAC 13) Attempt to cancel a club enrollment from the staff interface Followed test plan, works as expected. Signed-off-by: Marc Véron <veron@veron.ch> Signed-off-by: Nick Clemens <nick@bywatersolutions.com> Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
60 lines
1.7 KiB
Perl
Executable file
60 lines
1.7 KiB
Perl
Executable file
#!/usr/bin/perl
|
|
|
|
# Copyright 2013 ByWater Solutions
|
|
#
|
|
# This file is part of Koha.
|
|
#
|
|
# Koha is free software; you can redistribute it and/or modify it
|
|
# under the terms of the GNU General Public License as published by
|
|
# the Free Software Foundation; either version 3 of the License, or
|
|
# (at your option) any later version.
|
|
#
|
|
# Koha is distributed in the hope that it will be useful, but
|
|
# WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
# GNU General Public License for more details.
|
|
#
|
|
# You should have received a copy of the GNU General Public License
|
|
# along with Koha; if not, see <http://www.gnu.org/licenses>.
|
|
|
|
use Modern::Perl;
|
|
|
|
use CGI;
|
|
|
|
use C4::Auth;
|
|
use C4::Output;
|
|
|
|
use Koha::Clubs;
|
|
use Koha::Club::Templates;
|
|
|
|
my $cgi = new CGI;
|
|
|
|
my ( $template, $loggedinuser, $cookie ) = get_template_and_user(
|
|
{
|
|
template_name => "clubs/clubs.tt",
|
|
query => $cgi,
|
|
type => "intranet",
|
|
authnotrequired => 0,
|
|
flagsrequired => { clubs => '*' },
|
|
}
|
|
);
|
|
|
|
my $stored = $cgi->param('stored');
|
|
my $club_template_id = $cgi->param('club_template_id');
|
|
my $club_id = $cgi->param('club_id');
|
|
|
|
my $club_template = $club_template_id ? Koha::Club::Templates->find( $club_template_id ) : undef;
|
|
my $club = $club_id ? Koha::Clubs->find( $club_id ) : undef;
|
|
|
|
my @club_templates = Koha::Club::Templates->search();
|
|
my @clubs = Koha::Clubs->search();
|
|
|
|
$template->param(
|
|
stored => $stored,
|
|
club_template => $club_template,
|
|
club => $club,
|
|
club_templates => \@club_templates,
|
|
clubs => \@clubs,
|
|
);
|
|
|
|
output_html_with_http_headers( $cgi, $cookie, $template->output );
|