Kyle M Hall
92782d3832
This development will add the ability for a new patron to register himself or herself. The self-registration will attempt to match this newly inputted data to any existing patrons and if any possible matches are found, ask if the patron is sure he or she doesn't already have an account at the library. A system preference may be set to prevent patron self-registration if the system detects the possibility that the person may already have an account. Once the patron has registered, passing a captcha (or similar bot-stopper), the patron will then be optionally verified a second time via email. At this point, the patron will be able to print a temporary library card (optional by system preference), and will be provided any details necessary to access electronic resources (this body of text would be a template in the slips and notices system). At the library's choice, this new patron would either be set to a temporary patron status (patron type set via system preference), or a fully-fledged patron (allow patron type to be determined by age and/or other attributes). Assuming the library uses temporary patron types for OPAC registrations, this patron will next enter a queue and would need to physically enter the library to verify himself and become a fully-fledged patron (most likely by bringing in physical proof of address, etc.). The librarian would look up the patron record and modify the patron type. If a temporary patron has not been verified within a certain time frame (defined by a system preference), the patron record will be deleted from the system via a cron job. For registered patrons, the system will allow each person to also update his or her personal data via the OPAC. When a patron updates his or her information, the changes will be entered into a queue to be verified by a librarian (preventing a patron from inputting obviously bogus data). The staff client home page will display the number of patron records with changes awaiting approval. A librarian would then be able to click through a list of modification requests, and approve or deny each (with approval and denial alerts being sent to the patron via the standard messaging system). NEW SYSTEM PREFERENCES * PatronSelfRegistration * PatronSelfRegistrationDetectDuplicates * PatronSelfRegistrationVerifyByEmail * PatronSelfRegistrationPrintTemporaryCard * PatronSelfRegistrationUseTemporaryStatus * PatronSelfRegistrationExpireTemporaryAccountsDelay NEW NOTICE * Verify by email notice NEW SLIP * Temporary card slip NEW CRON JOB * delete_expired_opac_registrations.pl - Deletes patrons that have not been upgraded from the temporary status within the specified delay * delete_unverified_opac_registrations.pl - Deletes the unverified patrons based on the length of time specified in the PatronSelfRegistrationExpireTemporaryAccountsDelay The patron will register from self_registration.pl, linked off opac-main.pl if enabled. The registration page will be translatable to other languages in the same way that existing templates are. Test Plan: 1) Enable PatronSelfRegistration 2) Set PatronSelfRegistrationExpireTemporaryAccountsDelay to a number of days 3) Create a self-registered borrower category 4) Set PatronSelfRegistrationUseTemporaryStatus 5) Set PatronSelfRegistrationVerifyByEmail to "Don't require" 6) Go to OPAC, log out if logged in. 7) You should see the "Register here" link below the login box 8) Attempt to register yourself 9) Verify you can log in with your temporary password. 10) Set PatronSelfRegistrationVerifyByEmail to "Require" 11) Attempt another self-registration 12) Check the messages table, you should see a new message with a verification link. 13) Copy and paste the link into a web browser to verify the registration 14) Log in with the given credentials to verify the account was created. Test Plan - Part 2 - Borrower Modifications 1) Log in to OPAC, go to "my personal details" tab. 2) Make some modifications to your details. 3) Repeat steps 1 and 2 for two more borrowers. 4) Log in to Koha intranet with a user that can modify borrowers. 5) At the bottom of mainpage.pl, you should see: Patrons requesting modifications: 3 6) Click the link 7) Approve one change, deny a different one, and ignore the third, then submit. 8) Check the records, you should see the changes take affect on the approved one, and no changes to the other two. You should also see "Patrons requesting modifications: 1" at the bottom of mainpage.pl now. Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com> Signed-off-by: Owen Leonard <oleonard@myacpl.org> Bug 7067 - OPAC Borrower Self Registration - Followup * Rename PatronSelfRegistrationUseTemporaryStatus to PatronSelfRegistrationDefaultCategory * Hide register link unless PatronSelfRegistrationDefaultCategory is set. * Add invalid token page * Add documentation and switches to cron scripts * Add required fields check for editing exiting patrons * Don't force require email address for existing patrons when PatronSelfRegistrationVerifyByEmail is enabled. Signed-off-by: Owen Leonard <oleonard@myacpl.org> Passed-QA-by: Jonathan Druart <jonathan.druart@biblibre.com> Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
686 lines
16 KiB
Perl
686 lines
16 KiB
Perl
package C4::Installer::PerlDependencies;
|
|
|
|
use warnings;
|
|
use strict;
|
|
|
|
our $PERL_DEPS = {
|
|
'XML::LibXSLT' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '1.59'
|
|
},
|
|
'Text::CSV::Encoded' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '0.09'
|
|
},
|
|
'Storable' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '2.20'
|
|
},
|
|
'PDF::API2' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '2'
|
|
},
|
|
'Text::CSV_XS' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '0.32'
|
|
},
|
|
'Schedule::At' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '1.06'
|
|
},
|
|
'MIME::Lite' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '3'
|
|
},
|
|
'GD' => {
|
|
'usage' => 'Patron Images Feature',
|
|
'required' => '0',
|
|
'min_ver' => '2.39'
|
|
},
|
|
'List::MoreUtils' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '0.21'
|
|
},
|
|
'DBI' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '1.53'
|
|
},
|
|
'Net::Z3950::ZOOM' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '1.16'
|
|
},
|
|
'Biblio::EndnoteStyle' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '0.05'
|
|
},
|
|
'Date::Calc' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '5.4'
|
|
},
|
|
'Mail::Sendmail' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '0.79'
|
|
},
|
|
'DBD::mysql' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '4.004'
|
|
},
|
|
'XML::LibXML' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '1.59'
|
|
},
|
|
'POE' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '0.9999'
|
|
},
|
|
'Email::Date' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '1.103'
|
|
},
|
|
'HTML::Scrubber' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '0.08'
|
|
},
|
|
'XML::Dumper' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '0.81'
|
|
},
|
|
'URI::Escape' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '1.36'
|
|
},
|
|
'Unicode::Normalize' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '0.32'
|
|
},
|
|
'Text::Wrap' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '2005.082401'
|
|
},
|
|
'Test' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '1.25'
|
|
},
|
|
'Locale::PO' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '0.17'
|
|
},
|
|
'LWP::Simple' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '1.41'
|
|
},
|
|
'DBD::SQLite2' => {
|
|
'usage' => 'Offline Circulation Feature',
|
|
'required' => '0',
|
|
'min_ver' => '0.33'
|
|
},
|
|
'SMS::Send' => {
|
|
'usage' => 'SMS Messaging Feature',
|
|
'required' => '0',
|
|
'min_ver' => '0.05'
|
|
},
|
|
'XML::SAX::ParserFactory' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '1.01'
|
|
},
|
|
'Test::Harness' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '2.56'
|
|
},
|
|
'PDF::API2::Util' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '2'
|
|
},
|
|
'Class::Accessor' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '0.3'
|
|
},
|
|
'HTTP::OAI' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '3.2'
|
|
},
|
|
'LWP::UserAgent' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '2.033'
|
|
},
|
|
'MIME::Base64' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '3.07'
|
|
},
|
|
'Algorithm::CheckDigits' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '0.5'
|
|
},
|
|
'Net::LDAP' => {
|
|
'usage' => 'LDAP Interface Feature',
|
|
'required' => '0',
|
|
'min_ver' => '0.33'
|
|
},
|
|
'PDF::Reuse' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '0.33'
|
|
},
|
|
'DateTime' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '0.58'
|
|
},
|
|
'DateTime::TimeZone' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '1.20'
|
|
},
|
|
'DateTime::Format::DateParse' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '0.04'
|
|
},
|
|
'DateTime::Format::MySQL' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '0.04'
|
|
},
|
|
'DateTime::Set' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '0.28'
|
|
},
|
|
'DateTime::Event::ICal' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '0.08'
|
|
},
|
|
'Readonly' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '1.03'
|
|
},
|
|
'Readonly::XS' => {
|
|
'usage' => 'Core',
|
|
'required' => '0',
|
|
'min_ver' => '1.02'
|
|
},
|
|
'Graphics::Magick' => {
|
|
'usage' => 'Patron Card Creator Feature',
|
|
'required' => '0',
|
|
'min_ver' => '1.3.05'
|
|
},
|
|
'MARC::Charset' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '0.98'
|
|
},
|
|
'Memoize::Memcached' => {
|
|
'usage' => 'Memcached Feature (Experimental)',
|
|
'required' => '0',
|
|
'min_ver' => '0.03'
|
|
},
|
|
'Cache::Memcached::Fast' => {
|
|
'usage' => 'Caching',
|
|
'required' => '0',
|
|
'min_ver' => '0.17'
|
|
},
|
|
'CHI' => {
|
|
'usage' => 'Caching',
|
|
'required' => '0',
|
|
'min_ver' => '0.36'
|
|
},
|
|
'CHI::Driver::Memcached' => {
|
|
'usage' => 'Caching',
|
|
'required' => '0',
|
|
'min_ver' => '0.12'
|
|
},
|
|
'Net::LDAP::Filter' => {
|
|
'usage' => 'LDAP Interface Feature',
|
|
'required' => '0',
|
|
'min_ver' => '0.14'
|
|
},
|
|
'Text::CSV' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '0.01'
|
|
},
|
|
'PDF::Table' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '0.9.3'
|
|
},
|
|
'CGI' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '3.15'
|
|
},
|
|
'Class::Factory::Util' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '1.6'
|
|
},
|
|
'List::Util' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '1.18'
|
|
},
|
|
'Lingua::Stem::Snowball' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '0.952'
|
|
},
|
|
'Time::localtime' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '1.02'
|
|
},
|
|
'Digest::SHA' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '5.43'
|
|
},
|
|
'MARC::Crosswalk::DublinCore' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '0.02'
|
|
},
|
|
'CGI::Session::Serialize::yaml' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '4.2'
|
|
},
|
|
'CGI::Carp' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '1.29'
|
|
},
|
|
'Getopt::Long' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '2.35'
|
|
},
|
|
'Term::ANSIColor' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '1.1'
|
|
},
|
|
'Getopt::Std' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '1.05'
|
|
},
|
|
'Data::Dumper' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '2.121'
|
|
},
|
|
'Lingua::Stem' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '0.82'
|
|
},
|
|
'MIME::QuotedPrint' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '3.07'
|
|
},
|
|
'IPC::Cmd' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '0.46'
|
|
},
|
|
'HTTP::Cookies' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '1.39'
|
|
},
|
|
'HTTP::Request::Common' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '1.26'
|
|
},
|
|
'PDF::Reuse::Barcode' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '0.05'
|
|
},
|
|
'Test::More' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '0.8'
|
|
},
|
|
'GD::Barcode::UPCE' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '1.1'
|
|
},
|
|
'Text::Iconv' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '1.7'
|
|
},
|
|
'File::Temp' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '0.16'
|
|
},
|
|
'Date::Manip' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '5.44'
|
|
},
|
|
'Locale::Language' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '2.07'
|
|
},
|
|
'PDF::API2::Simple' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '1'
|
|
},
|
|
'XML::RSS' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '1.31'
|
|
},
|
|
'XML::Simple' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '2.14'
|
|
},
|
|
'PDF::API2::Page' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '2'
|
|
},
|
|
'CGI::Session' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '4.2'
|
|
},
|
|
'CGI::Session::Driver::memcached' => {
|
|
'usage' => 'Memcached Feature (Experimental)',
|
|
'required' => '0',
|
|
'min_ver' => '0.04',
|
|
},
|
|
'POSIX' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '1.09'
|
|
},
|
|
'Digest::MD5' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '2.36'
|
|
},
|
|
'Authen::CAS::Client' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '0.05'
|
|
},
|
|
'Data::ICal' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '0.13'
|
|
},
|
|
'MARC::Record' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '2'
|
|
},
|
|
'Locale::Currency::Format' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '1.28'
|
|
},
|
|
'Number::Format' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '1.52'
|
|
},
|
|
'YAML::Syck' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '0.71'
|
|
},
|
|
'Time::HiRes' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '1.86'
|
|
},
|
|
'MARC::File::XML' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '0.88'
|
|
},
|
|
'XML::SAX::Writer' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '0.44'
|
|
},
|
|
'JSON' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '2.07'
|
|
},
|
|
'YAML' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '0.71'
|
|
},
|
|
'UNIVERSAL::require' => {
|
|
'usage' => 'SipServer',
|
|
'required' => '0',
|
|
'min_ver' => '0.13',
|
|
},
|
|
'Net::Server' => {
|
|
'usage' => 'SipServer',
|
|
'required' => '0',
|
|
'min_ver' => '0.97',
|
|
},
|
|
'Business::ISBN' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '2.05',
|
|
},
|
|
'Template' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '2.22',
|
|
},
|
|
'Gravatar::URL' => {
|
|
'usage' => 'Photos in OPAC reviews',
|
|
'required' => '0',
|
|
'min_ver' => '1.03',
|
|
},
|
|
'Modern::Perl' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '1.03',
|
|
},
|
|
'DateTime::Format::ICal' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '0.09',
|
|
},
|
|
'Template::Plugin::HtmlToText' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '0.03',
|
|
},
|
|
'Data::Paginator' => {
|
|
'usage' => 'Core',
|
|
'required' => '0',
|
|
'min_ver' => '0.04',
|
|
},
|
|
'Data::Pagination' => {
|
|
'usage' => 'Core',
|
|
'required' => '0',
|
|
'min_ver' => '0.44',
|
|
},
|
|
'JSON::Any' => {
|
|
'usage' => 'Core',
|
|
'required' => '0',
|
|
'min_ver' => '1.28',
|
|
},
|
|
'MooseX::Storage' => {
|
|
'usage' => 'Core',
|
|
'required' => '0',
|
|
'min_ver' => '0.30',
|
|
},
|
|
'MooseX::Types' => {
|
|
'usage' => 'Core',
|
|
'required' => '0',
|
|
'min_ver' => '0.30',
|
|
},
|
|
'String::RewritePrefix' => {
|
|
'usage' => 'Core',
|
|
'required' => '0',
|
|
'min_ver' => '0.006',
|
|
},
|
|
'Time::Progress' => {
|
|
'usage' => 'Core',
|
|
'required' => '0',
|
|
'min_ver' => '1.7',
|
|
},
|
|
'DBD::Mock' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '1.39'
|
|
},
|
|
'Test::MockModule' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '0.05',
|
|
},
|
|
'Test::Warn' => {
|
|
'usage' => 'Core',
|
|
'required' => '0',
|
|
'min_ver' => '0.21',
|
|
},
|
|
'Test::Strict' => {
|
|
'usage' => 'Core',
|
|
'required' => '0',
|
|
'min_ver' => '0.14',
|
|
},
|
|
'Test::Deep' => {
|
|
'usage' => 'Core',
|
|
'required' => '0',
|
|
'min_ver' => '0.106',
|
|
},
|
|
'Test::YAML::Valid' => {
|
|
'usage' => 'Core',
|
|
'required' => '0',
|
|
'min_ver' => '0.04',
|
|
},
|
|
'Text::Unaccent' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '1.08',
|
|
},
|
|
'HTML::FormatText' => {
|
|
'usage' => 'Core',
|
|
'required' => '1',
|
|
'min_ver' => '1.23',
|
|
},
|
|
'AnyEvent' => {
|
|
'usage' => 'Command line scripts',
|
|
'required' => '0',
|
|
'min_ver' => '5.0',
|
|
},
|
|
'AnyEvent::HTTP' => {
|
|
'usage' => 'Command line scripts',
|
|
'required' => '0',
|
|
'min_ver' => '2.13',
|
|
},
|
|
'Moose' => {
|
|
'usage' => 'Core',
|
|
'required' => '0',
|
|
'min_ver' => '1.09',
|
|
},
|
|
'String::Random' => {
|
|
'usage' => 'OpacSelfRegistration',
|
|
'required' => '0',
|
|
'min_ver' => '1.4',
|
|
},
|
|
};
|
|
|
|
1;
|
|
|
|
__END__
|
|
|
|
=head1 NAME
|
|
|
|
C4::Installer::PerlDependencies
|
|
|
|
=head1 ABSTRACT
|
|
|
|
A module for cataloging Koha Perl dependencies.
|
|
|
|
=head1 SYNOPSIS
|
|
|
|
This module's sole purpose for existence is to provide a single location to catalog all Koha Perl dependencies. New dependencies should be added to the
|
|
end of the outer hash and follow the key/value pattern used in the other dependencies.
|
|
|
|
=head2 Debian
|
|
|
|
If you change the list of dependencies, and you use Debian, please also
|
|
run the debian/update-control script and commit the modified version of
|
|
debian/control into git as well. If you're not running Debian, don't
|
|
worry about it.
|
|
|
|
=head1 AUTHOR
|
|
|
|
Chris Nighswonger <cnighswonger AT foundations DOT edu>
|
|
|
|
=head1 COPYRIGHT
|
|
|
|
Copyright 2010 Foundations Bible College.
|
|
|
|
=head1 LICENSE
|
|
|
|
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 2 of the License, or (at your option) any later version.
|
|
|
|
You should have received a copy of the GNU General Public License along with Koha; if not, write to the Free Software Foundation, Inc., 51 Franklin Street,
|
|
Fifth Floor, Boston, MA 02110-1301 USA.
|
|
|
|
=head1 DISCLAIMER OF WARRANTY
|
|
|
|
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.
|
|
|
|
=cut
|