From ab0f6080c6651900475f71b0f04c69d6480f4c5f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9rick?= Date: Mon, 13 Aug 2012 12:29:35 -0400 Subject: [PATCH] Bug 8597: Add system preferences to configure the mobile view. This patch adds the following system preferences: * OpacMainUserBlockMobile - alternate content for the MainUserBlock for mobile * OPACMobileUserCSS - custom CSS for mobile views only * OpacShowFiltersPulldownMobile - whether or not to show the index dropdown on the mobile view * OpacShowLibrariesPulldownMobile - whether or not to show the library dropdown on the mobile view Signed-off-by: Jared Camins-Esakov Signed-off-by: Chris Cormack --- C4/Auth.pm | 4 ++ installer/data/mysql/sysprefs.sql | 4 ++ installer/data/mysql/updatedatabase.pl | 10 ++++ .../prog/en/modules/admin/preferences/opac.pref | 22 +++++++++ koha-tmpl/opac-tmpl/ccsr/en/css/mobile.css | 30 ++++++------ koha-tmpl/opac-tmpl/ccsr/en/css/opac.css | 4 ++ .../opac-tmpl/ccsr/en/includes/doc-head-close.inc | 1 + koha-tmpl/opac-tmpl/ccsr/en/includes/masthead.inc | 51 ++++++++++++++++---- koha-tmpl/opac-tmpl/prog/en/css/opac.css | 4 ++ .../opac-tmpl/prog/en/includes/doc-head-close.inc | 1 + koha-tmpl/opac-tmpl/prog/en/modules/opac-main.tt | 1 + 11 files changed, 109 insertions(+), 23 deletions(-) diff --git a/C4/Auth.pm b/C4/Auth.pm index f9b15ef..d06dbde 100644 --- a/C4/Auth.pm +++ b/C4/Auth.pm @@ -409,6 +409,7 @@ sub get_template_and_user { OpacShowRecentComments => C4::Context->preference("OpacShowRecentComments"), OPACURLOpenInNewWindow => "" . C4::Context->preference("OPACURLOpenInNewWindow"), OPACUserCSS => "". C4::Context->preference("OPACUserCSS"), + OPACMobileUserCSS => "". C4::Context->preference("OPACMobileUserCSS"), OPACViewOthersSuggestions => "" . C4::Context->preference("OPACViewOthersSuggestions"), OpacAuthorities => C4::Context->preference("OpacAuthorities"), OPACBaseURL => ($in->{'query'}->https() ? "https://" : "http://") . $ENV{'SERVER_NAME'} . @@ -420,6 +421,9 @@ sub get_template_and_user { OpacCloud => C4::Context->preference("OpacCloud"), OpacKohaUrl => C4::Context->preference("OpacKohaUrl"), OpacMainUserBlock => "" . C4::Context->preference("OpacMainUserBlock"), + OpacMainUserBlockMobile => "" . C4::Context->preference("OpacMainUserBlockMobile"), + OpacShowFiltersPulldownMobile => C4::Context->preference("OpacShowFiltersPulldownMobile"), + OpacShowLibrariesPulldownMobile => C4::Context->preference("OpacShowLibrariesPulldownMobile"), OpacNav => "" . C4::Context->preference("OpacNav"), OpacNavRight => "" . C4::Context->preference("OpacNavRight"), OpacNavBottom => "" . C4::Context->preference("OpacNavBottom"), diff --git a/installer/data/mysql/sysprefs.sql b/installer/data/mysql/sysprefs.sql index f5a18b2..fc3f88a 100644 --- a/installer/data/mysql/sysprefs.sql +++ b/installer/data/mysql/sysprefs.sql @@ -374,3 +374,7 @@ INSERT INTO systempreferences (variable,value,options,explanation,type) VALUES ( INSERT INTO systempreferences (variable,value,explanation,type) VALUES('EnableBorrowerFiles','0','If enabled, allows librarians to upload and attach arbitrary files to a borrower record.','YesNo'); INSERT INTO systempreferences (variable,value,explanation,options,type) VALUES('UpdateTotalIssuesOnCirc','0','Whether to update the totalissues field in the biblio on each circ.',NULL,'YesNo'); INSERT INTO systempreferences (variable,value,explanation,options,type) VALUES('IntranetSlipPrinterJS','','Use this JavaScript for printing slips. Define at least function printThenClose(). For use e.g. with Firefox PlugIn jsPrintSetup, see http://jsprintsetup.mozdev.org/','','Free'); +INSERT INTO systempreferences (variable,value,explanation,options,type) VALUES('OPACMobileUserCSS','','Include the following CSS for the mobile view on all pages in the OPAC:',NULL,'free'); +INSERT INTO systempreferences (variable,value,explanation,options,type) VALUES('OpacMainUserBlockMobile','','Show the following HTML in its own column on the main page of the OPAC (mobile version):',NULL,'free'); +INSERT INTO systempreferences (variable,value,explanation,options,type) VALUES('OpacShowLibrariesPulldownMobile','1','Show the libraries pulldown on the mobile version of the OPAC.',NULL,'YesNo'); +INSERT INTO systempreferences (variable,value,explanation,options,type) VALUES('OpacShowFiltersPulldownMobile','1','Show the search filters pulldown on the mobile version of the OPAC.',NULL,'YesNo'); diff --git a/installer/data/mysql/updatedatabase.pl b/installer/data/mysql/updatedatabase.pl index ed0c674..304320a 100755 --- a/installer/data/mysql/updatedatabase.pl +++ b/installer/data/mysql/updatedatabase.pl @@ -5635,6 +5635,16 @@ if(C4::Context->preference("Version") < TransformToNum($DBversion) ) { SetVersion($DBversion); } +$DBversion ="XXX"; +if(C4::Context->preference("Version") < TransformToNum($DBversion) ) { + $dbh->do("INSERT INTO systempreferences (variable,value,explanation,options,type) VALUES('OPACMobileUserCSS','','Include the following CSS for the mobile view on all pages in the OPAC:',NULL,'free');"); + $dbh->do("INSERT INTO systempreferences (variable,value,explanation,options,type) VALUES('OpacMainUserBlockMobile','','Show the following HTML in its own column on the main page of the OPAC (mobile version):',NULL,'free');"); + $dbh->do("INSERT INTO systempreferences (variable,value,explanation,options,type) VALUES('OpacShowLibrariesPulldownMobile','1','Show the libraries pulldown on the mobile version of the OPAC.',NULL,'YesNo');"); + $dbh->do("INSERT INTO systempreferences (variable,value,explanation,options,type) VALUES('OpacShowFiltersPulldownMobile','1','Show the search filters pulldown on the mobile version of the OPAC.',NULL,'YesNo');"); + print "Upgrade to $DBversion done (Add OPACMobileUserCSS, OpacMainUserBlockMobile, OpacShowLibrariesPulldownMobile and OpacShowFiltersPulldownMobile sysprefs)\n"; + SetVersion($DBversion); +} + =head1 FUNCTIONS =head2 TableExists($table) diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/opac.pref b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/opac.pref index 0fe79d4..6a2784d 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/opac.pref +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/opac.pref @@ -163,11 +163,33 @@ OPAC: type: textarea class: code - + - "Include the following CSS for the mobile view on all pages in the OPAC:" + - pref: OPACMobileUserCSS + type: textarea + class: code + - - "Show the following HTML in its own column on the main page of the OPAC:" - pref: OpacMainUserBlock type: textarea class: code - + - "Show the following HTML in its own column on the main page of the OPAC (mobile version):" + - pref: OpacMainUserBlockMobile + type: textarea + class: code + - + - pref: OpacShowLibrariesPulldownMobile + choices: + yes: Show + no: "Don't show" + - the libraries pulldown on the mobile version of the OPAC. + - + - pref: OpacShowFiltersPulldownMobile + choices: + yes: Show + no: "Don't show" + - the search filters pulldown on the mobile version of the OPAC. + - - "Show the following HTML on the left hand column of the main page and patron account on the OPAC (generally navigation links):" - pref: OpacNav type: textarea diff --git a/koha-tmpl/opac-tmpl/ccsr/en/css/mobile.css b/koha-tmpl/opac-tmpl/ccsr/en/css/mobile.css index 7917e77..58da8bd 100644 --- a/koha-tmpl/opac-tmpl/ccsr/en/css/mobile.css +++ b/koha-tmpl/opac-tmpl/ccsr/en/css/mobile.css @@ -5,9 +5,11 @@ /* Hidden elements */ +.mobile-hidden, body#opac-main #login, body#opac-main #login~div, body#opac-main #opacnav, +body#opac-main #opacmainuserblock, body#opac-main #news, body#results #facetcontainer, body#opac-detail #ulactioncontainer>:not(#action), @@ -99,14 +101,15 @@ body#results #breadcrumbs>*{ /* Main */ -body#opac-main #opacmainuserblock { - padding: 0 -} - body#opac-main #container #ctn_lt{ padding: 15px; } +body#opac-main #opacmainuserblockmobile { + display: block; +} + + /* Results */ @@ -257,30 +260,29 @@ form#searchform { padding-top: 50px; } -form.single-library #filters .jqTransformSelectWrapper { +form#searchform #filters .jqTransformSelectWrapper, +form#searchform #libraries .jqTransformSelectWrapper { position: relative; - width: 100% !important; left: 0; top: 0; border-radius: 3px; } form.multi-libraries #filters .jqTransformSelectWrapper{ - position: relative; width: 49% !important; float: left; - top: 0px; - left: 0px; - border-radius: 3px; } form.multi-libraries #libraries .jqTransformSelectWrapper{ - position: relative; width: 49% !important; float: right; - top: 0px; - left: 0px; - border-radius: 3px; +} + +form.single-library #filters .jqTransformSelectWrapper, +form.multi-libraries.single-field-mobile #filters .jqTransformSelectWrapper, +form.multi-libraries.single-field-mobile #libraries .jqTransformSelectWrapper{ + width: 100% !important; + float:left; } form.multi-libraries .input-wrapper{ diff --git a/koha-tmpl/opac-tmpl/ccsr/en/css/opac.css b/koha-tmpl/opac-tmpl/ccsr/en/css/opac.css index aeb209c..46c7bd9 100644 --- a/koha-tmpl/opac-tmpl/ccsr/en/css/opac.css +++ b/koha-tmpl/opac-tmpl/ccsr/en/css/opac.css @@ -2620,6 +2620,10 @@ ul.ui-tabs-nav li { box-shadow: 1px 1px 3px 0 #666; } +body#opac-main #opacmainuserblockmobile { + display: none; +} + .mobile_only { display : none; } diff --git a/koha-tmpl/opac-tmpl/ccsr/en/includes/doc-head-close.inc b/koha-tmpl/opac-tmpl/ccsr/en/includes/doc-head-close.inc index ce5b68c..07a23b8 100644 --- a/koha-tmpl/opac-tmpl/ccsr/en/includes/doc-head-close.inc +++ b/koha-tmpl/opac-tmpl/ccsr/en/includes/doc-head-close.inc @@ -22,6 +22,7 @@ +[% IF ( OPACMobileUserCSS ) %][% END %] [% IF ( OPACUserCSS ) %][% END %] diff --git a/koha-tmpl/opac-tmpl/ccsr/en/includes/masthead.inc b/koha-tmpl/opac-tmpl/ccsr/en/includes/masthead.inc index 2c5e571..890ecde 100644 --- a/koha-tmpl/opac-tmpl/ccsr/en/includes/masthead.inc +++ b/koha-tmpl/opac-tmpl/ccsr/en/includes/masthead.inc @@ -84,14 +84,28 @@ [% IF ( OpacPublic ) %]
-[% UNLESS ( advsearch ) %]
-