Bug 14251: Add warning in about.pl for missing weasyprint
authorTomas Cohen Arazi <tomascohen@theke.io>
Fri, 3 Feb 2023 18:18:13 +0000 (15:18 -0300)
committerTomas Cohen Arazi <tomascohen@theke.io>
Mon, 27 Mar 2023 09:54:08 +0000 (11:54 +0200)
To test:
1. Have weasyprint installed
2. Go to the About > System information page
=> SUCCESS: No warning about weasyprint
3. Uninstall weasyprint
4. Repeat 2
=> SUCCESS: A warning is displayed and makes sense
5. Sign off :-D

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
about.pl
koha-tmpl/intranet-tmpl/prog/en/modules/about.tt

index 1296996..799cc51 100755 (executable)
--- a/about.pl
+++ b/about.pl
@@ -25,6 +25,7 @@ use Modern::Perl;
 use CGI qw ( -utf8 );
 use DateTime::TimeZone;
 use File::Slurp qw( read_file );
+use IPC::Cmd qw(can_run);
 use List::MoreUtils qw( any );
 use Module::Load::Conditional qw( can_load );
 use Config qw( %Config );
@@ -324,6 +325,9 @@ if ( C4::Context->preference('ILLModule') ) {
 
     $template->param( warnILLConfiguration => $warnILLConfiguration );
 }
+unless ( can_run('weasyprint') ) {
+    $template->param( weasyprint_missing => 1 );
+}
 
 {
     # XSLT sysprefs
index 280b756..7799f7c 100644 (file)
                         [% SET warnMissingCompiledFiles = 1 %]
                     [% END %]
                     [% WRAPPER tab_panel tabname= "sysinfo" %]
-                        [% IF warnPrefRequireChoosingExistingAuthority || warnPrefEasyAnalyticalRecords || warnPrefAnonymousPatronOPACPrivacy || warnPrefAnonymousPatronAnonSuggestions || warnPrefAnonymousPatronOPACPrivacy_PatronDoesNotExist || warnPrefAnonymousPatronAnonSuggestions_PatronDoesNotExist || warnPrefKohaAdminEmailAddress || warnPrefOpacHiddenItems || invalid_yesno.count || warnNoActiveCurrency || warnIsRootUser || xml_config_warnings.size || AutoSelfCheckPatronDoesNotHaveSelfCheckPerm || AutoSelfCheckPatronHasTooManyPerm || warnStatisticsFieldsError || warnNoTemplateCaching || warnILLConfiguration || has_ai_issues || oauth2_missing_deps || bad_yaml_prefs || warnRelationships || log4perl_errors || config_bcrypt_settings_no_set || warnHiddenBiblionumbers.size || warnConnectBroker || elasticsearch_has_missing || warnMissingCompiledFiles%]
+                        [% IF weasyprint_missing || warnPrefRequireChoosingExistingAuthority || warnPrefEasyAnalyticalRecords || warnPrefAnonymousPatronOPACPrivacy || warnPrefAnonymousPatronAnonSuggestions || warnPrefAnonymousPatronOPACPrivacy_PatronDoesNotExist || warnPrefAnonymousPatronAnonSuggestions_PatronDoesNotExist || warnPrefKohaAdminEmailAddress || warnPrefOpacHiddenItems || invalid_yesno.count || warnNoActiveCurrency || warnIsRootUser || xml_config_warnings.size || AutoSelfCheckPatronDoesNotHaveSelfCheckPerm || AutoSelfCheckPatronHasTooManyPerm || warnStatisticsFieldsError || warnNoTemplateCaching || warnILLConfiguration || has_ai_issues || oauth2_missing_deps || bad_yaml_prefs || warnRelationships || log4perl_errors || config_bcrypt_settings_no_set || warnHiddenBiblionumbers.size || warnConnectBroker || elasticsearch_has_missing || warnMissingCompiledFiles%]
                             [% IF (warnIsRootUser) %]
                                 <h2>Warning regarding current user</h2>
                                 <p>You are logged in as the database administrative user. This is not recommended because some parts of Koha will not function as expected when using this account.</p>
                                 Contact your system administrator.
                             [% END # /IF warnConnectBroker %]
 
-                            [% IF warnPrefRequireChoosingExistingAuthority || warnPrefEasyAnalyticalRecords || warnPrefAnonymousPatronOPACPrivacy || warnPrefAnonymousPatronAnonSuggestions || warnPrefAnonymousPatronOPACPrivacy_PatronDoesNotExist || warnPrefAnonymousPatronAnonSuggestions_PatronDoesNotExist || warnPrefKohaAdminEmailAddress || warnPrefOpacHiddenItems || invalid_yesno.count || warnNoActiveCurrency || AutoSelfCheckPatronDoesNotHaveSelfCheckPerm || AutoSelfCheckPatronHasTooManyPerm || warnStatisticsFieldsError || warnNoTemplateCaching || warnILLConfiguration || warnXSLT || oauth2_missing_deps || bad_yaml_prefs || warnIssuingRules || config_bcrypt_settings_no_set || warnHiddenBiblionumbers.size || warnFastCataloging %]
+                            [% IF weasyprint_missing || warnPrefRequireChoosingExistingAuthority || warnPrefEasyAnalyticalRecords || warnPrefAnonymousPatronOPACPrivacy || warnPrefAnonymousPatronAnonSuggestions || warnPrefAnonymousPatronOPACPrivacy_PatronDoesNotExist || warnPrefAnonymousPatronAnonSuggestions_PatronDoesNotExist || warnPrefKohaAdminEmailAddress || warnPrefOpacHiddenItems || invalid_yesno.count || warnNoActiveCurrency || AutoSelfCheckPatronDoesNotHaveSelfCheckPerm || AutoSelfCheckPatronHasTooManyPerm || warnStatisticsFieldsError || warnNoTemplateCaching || warnILLConfiguration || warnXSLT || oauth2_missing_deps || bad_yaml_prefs || warnIssuingRules || config_bcrypt_settings_no_set || warnHiddenBiblionumbers.size || warnFastCataloging %]
                                 <h2>Warnings regarding the system configuration</h2>
                                 <table>
                                     <caption>Preferences and parameters</caption>
                                         [% END %]
                                     [% END %]
 
+                                    [% IF weasyprint_missing %]
+                                        <tr><th scope="row"><strong>Warning</strong> </th><td>
+                                        The <strong>weasyprint</strong> tool is not installed.
+                                        </td></tr>
+                                    [% END %]
+
                                     [% IF oauth2_missing_deps %]
                                         <tr>
                                             <th scope="row"><strong>Warning</strong> </th>