From 45fa57f926a161d0b92949e8d6eea05be760c67d Mon Sep 17 00:00:00 2001 From: Jane Wagner Date: Tue, 4 May 2010 08:12:52 -0400 Subject: [PATCH] Bug 4394 REVISED Allow opaccolorstylesheet syspref to use an external URL Previous code would only allow for an auxiliary stylesheet on the same server. This checks for http in the opaccolorstylesheet syspref. If it's found, sets a different variable pointing to the remote server location. If not found, retains the previous css directory path. Also modifies the description of opaccolorstylesheet in the installer files to reflect current usage as an auxiliary stylesheet. --- C4/Auth.pm | 20 ++++++++++++++++++-- installer/data/mysql/en/mandatory/sysprefs.sql | 2 +- .../1-Obligatoire/unimarc_standard_systemprefs.sql | 2 +- installer/data/mysql/pl-PL/mandatory/sysprefs.sql | 2 +- ...m_preferences_full_optimal_for_install_only.sql | 2 +- .../opac-tmpl/prog/en/includes/doc-head-close.inc | 3 +++ 6 files changed, 25 insertions(+), 6 deletions(-) diff --git a/C4/Auth.pm b/C4/Auth.pm index 387a352..b5279d8 100644 --- a/C4/Auth.pm +++ b/C4/Auth.pm @@ -397,6 +397,15 @@ sub get_template_and_user { } elsif($mylibraryfirst){ $opac_name = C4::Branch::GetBranchName($mylibraryfirst); } + my $checkstyle = C4::Context->preference("opaccolorstylesheet"); + if ($checkstyle =~ /http/) + { + $template->param( opacexternalsheet => $checkstyle); + } else + { + my $opaccolorstylesheet = C4::Context->preference("opaccolorstylesheet"); + $template->param( opaccolorstylesheet => $opaccolorstylesheet); + } $template->param( AmazonContent => "" . C4::Context->preference("AmazonContent"), AnonSuggestions => "" . C4::Context->preference("AnonSuggestions"), @@ -436,7 +445,6 @@ sub get_template_and_user { hidelostitems => C4::Context->preference("hidelostitems"), mylibraryfirst => (C4::Context->preference("SearchMyLibraryFirst") && C4::Context->userenv) ? C4::Context->userenv->{'branch'} : '', opaclayoutstylesheet => "" . C4::Context->preference("opaclayoutstylesheet"), - opaccolorstylesheet => "" . C4::Context->preference("opaccolorstylesheet"), opacstylesheet => "" . C4::Context->preference("opacstylesheet"), opacbookbag => "" . C4::Context->preference("opacbookbag"), opaccredits => "" . C4::Context->preference("opaccredits"), @@ -907,6 +915,15 @@ sub checkauth { my $template_name = ( $type eq 'opac' ) ? 'opac-auth.tmpl' : 'auth.tmpl'; my $template = gettemplate( $template_name, $type, $query ); $template->param(branchloop => \@branch_loop,); + my $checkstyle = C4::Context->preference("opaccolorstylesheet"); + if ($checkstyle =~ /\//) + { + $template->param( opacexternalsheet => $checkstyle); + } else + { + my $opaccolorstylesheet = C4::Context->preference("opaccolorstylesheet"); + $template->param( opaccolorstylesheet => $opaccolorstylesheet); + } $template->param( login => 1, INPUTS => \@inputs, @@ -920,7 +937,6 @@ sub checkauth { opacreadinghistory => C4::Context->preference("opacreadinghistory"), opacsmallimage => C4::Context->preference("opacsmallimage"), opaclayoutstylesheet => C4::Context->preference("opaclayoutstylesheet"), - opaccolorstylesheet => C4::Context->preference("opaccolorstylesheet"), opaclanguagesdisplay => C4::Context->preference("opaclanguagesdisplay"), opacuserjs => C4::Context->preference("opacuserjs"), opacbookbag => "" . C4::Context->preference("opacbookbag"), diff --git a/installer/data/mysql/en/mandatory/sysprefs.sql b/installer/data/mysql/en/mandatory/sysprefs.sql index 2a924e0..63c8ab9 100644 --- a/installer/data/mysql/en/mandatory/sysprefs.sql +++ b/installer/data/mysql/en/mandatory/sysprefs.sql @@ -71,7 +71,7 @@ INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES ('intranetbookbag','1','If ON, enables display of Cart feature in the intranet','','YesNo'); INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('OpacBrowser',0,'If ON, enables subject authorities browser on OPAC (needs to set misc/cronjob/sbuild_browser_and_cloud.pl)',NULL,'YesNo'); INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('OpacCloud',0,'If ON, enables subject cloud on OPAC',NULL,'YesNo'); -INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('opaccolorstylesheet','colors.css','Define the color stylesheet to use in the OPAC','','free'); +INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('opaccolorstylesheet','colors.css','Define an auxiliary stylesheet for OPAC use, to override specified settings from the primary opac.css stylesheet. Enter the filename (if the file is in the server's css directory) or a complete URL beginning with http (if the file lives on a remote server).','','free'); INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('opaccredits','','Define HTML Credits at the bottom of the OPAC page','70|10','Textarea'); INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('opacSerialDefaultTab', 'subscriptions', 'Define the default tab for serials in OPAC.', 'holdings|serialcollection|subscriptions', 'Choice'); INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('opacheader','','Add HTML to be included as a custom header in the OPAC','70|10','Textarea'); diff --git a/installer/data/mysql/fr-FR/1-Obligatoire/unimarc_standard_systemprefs.sql b/installer/data/mysql/fr-FR/1-Obligatoire/unimarc_standard_systemprefs.sql index b2e0f11..5948f86 100644 --- a/installer/data/mysql/fr-FR/1-Obligatoire/unimarc_standard_systemprefs.sql +++ b/installer/data/mysql/fr-FR/1-Obligatoire/unimarc_standard_systemprefs.sql @@ -89,7 +89,7 @@ INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES ('intranetbookbag','1','Si ce paramètre est activé, les adhérents peuvent créer des paniers à l''interface professionnelle','','YesNo'); INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('OpacBrowser', '1', 'Active ou non le feuilletage du catalogue à l''OPAC (nécessite de lancer misc/cronjobs/build_browser_and_cloud.pl sur le serveur)', '', 'YesNo'); INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('OpacCloud', '1', 'Active ou non l''affichage des nuages de tag à l''OPAC (nécessite de lancer misc/cronjobs/build_browser_and_cloud.pl sur le serveur)', '', 'YesNo'); -INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('opaccolorstylesheet', '', 'Ce paramètre a la forme d''une URL. Il définit la feuille de style utilisée à l''OPAC. S''il est vide, vous aurez la feuille de style par défault de Koha', '', 'free'); +INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('opaccolorstylesheet', '', 'Définit une feuille de style auxiliaire pour l'OPAC qui prend le pas sur la feuille de style primaire. Entrez le nom du fichier (si le fichier est sur le serveur) ou une URL commencant par http (si le fichier est sur un serveur distant).', '', 'free'); INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('opaccredits', '', 'Ce paramètre contient du code HTML, qui apparaît en bas de la page d''accueil de l''OPAC. C''est un "pied de page" de la page d''accueil', '70|10', ''); INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('opaclanguages', 'fr-FR', 'Ce paramètre définit la langue par défaut de l''OPAC, ainsi que la langue de l''interface professionnelle', '', 'Languages'); INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('opaclanguagesdisplay', '1', 'Si ce paramètre est activé, les adhérents peuvent modifier la langue d''affichage de l''OPAC. Sinon, ils sont limités à la langue choisie par la bibliothèque', '', 'YesNo'); diff --git a/installer/data/mysql/pl-PL/mandatory/sysprefs.sql b/installer/data/mysql/pl-PL/mandatory/sysprefs.sql index c6a8a41..66f8021 100644 --- a/installer/data/mysql/pl-PL/mandatory/sysprefs.sql +++ b/installer/data/mysql/pl-PL/mandatory/sysprefs.sql @@ -72,7 +72,7 @@ INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES ('intranetbookbag','1','If ON, enables display of Cart feature in the intranet','','YesNo'); INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('OpacBrowser',0,'If ON, enables subject authorities browser on OPAC (needs to set misc/cronjob/sbuild_browser_and_cloud.pl)',NULL,'YesNo'); INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('OpacCloud',0,'If ON, enables subject cloud on OPAC',NULL,'YesNo'); -INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('opaccolorstylesheet','colors.css','Define the color stylesheet to use in the OPAC','','free'); +INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('opaccolorstylesheet','colors.css','Define an auxiliary stylesheet for OPAC use, to override specified settings from the primary opac.css stylesheet. Enter the filename (if the file is in the server's css directory) or a complete URL beginning with http (if the file lives on a remote server).','','free'); INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('opaccredits','','Define HTML Credits at the bottom of the OPAC page','70|10','Textarea'); INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('opacSerialDefaultTab', 'subscriptions', 'Define the default tab for serials in OPAC.', 'holdings|serialcollection|subscriptions', 'Choice'); INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('opacheader','','Add HTML to be included as a custom header in the OPAC','70|10','Textarea'); diff --git a/installer/data/mysql/ru-RU/mandatory/system_preferences_full_optimal_for_install_only.sql b/installer/data/mysql/ru-RU/mandatory/system_preferences_full_optimal_for_install_only.sql index d6ee529..ba8a349 100644 --- a/installer/data/mysql/ru-RU/mandatory/system_preferences_full_optimal_for_install_only.sql +++ b/installer/data/mysql/ru-RU/mandatory/system_preferences_full_optimal_for_install_only.sql @@ -103,7 +103,7 @@ INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('opacbookbag',1,'If ON, enables display of Cart feature','','YesNo'); INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('OpacBrowser',0,'If ON, enables subject authorities browser on OPAC (needs to set misc/cronjob/sbuild_browser_and_cloud.pl)',NULL,'YesNo'); INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('OpacCloud',0,'If ON, enables subject cloud on OPAC',NULL,'YesNo'); -INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('opaccolorstylesheet','colors.css','Define the color stylesheet to use in the OPAC','','free'); +INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('opaccolorstylesheet','colors.css','Define an auxiliary stylesheet for OPAC use, to override specified settings from the primary opac.css stylesheet. Enter the filename (if the file is in the server's css directory) or a complete URL beginning with http (if the file lives on a remote server).','','free'); INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('opaccredits','','Define HTML Credits at the bottom of the OPAC page','70|10','Textarea'); INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('opacheader','','Add HTML to be included as a custom header in the OPAC','30|10','Textarea'); INSERT INTO `systempreferences` (variable,value,explanation,options,type) VALUES('opaclayoutstylesheet','opac.css','Enter the name of the layout CSS stylesheet to use in the OPAC','','free'); diff --git a/koha-tmpl/opac-tmpl/prog/en/includes/doc-head-close.inc b/koha-tmpl/opac-tmpl/prog/en/includes/doc-head-close.inc index a94acd2..e66ced7 100644 --- a/koha-tmpl/opac-tmpl/prog/en/includes/doc-head-close.inc +++ b/koha-tmpl/opac-tmpl/prog/en/includes/doc-head-close.inc @@ -7,6 +7,9 @@ /css/" /> + + " /> + /css/" /> -- 1.5.6.5