Bugzilla – Attachment 35833 Details for
Bug 5010
Fix OPACBaseURL to include protocol
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Bug 5010 - Fix OPACBaseURL to include protocol
Bug-5010---Fix-OPACBaseURL-to-include-protocol.patch (text/plain), 8.52 KB, created by
Mark Tompsett
on 2015-02-11 14:15:56 UTC
(
hide
)
Description:
Bug 5010 - Fix OPACBaseURL to include protocol
Filename:
MIME Type:
Creator:
Mark Tompsett
Created:
2015-02-11 14:15:56 UTC
Size:
8.52 KB
patch
obsolete
>From 8f70c47efcbe173f0dd70c5503f5bda5ae4cf57e Mon Sep 17 00:00:00 2001 >From: Mark Tompsett <mtompset@hotmail.com> >Date: Fri, 19 Sep 2014 00:37:17 -0400 >Subject: [PATCH] Bug 5010 - Fix OPACBaseURL to include protocol > >First, it is strongly recommended to set the OPACBaseURL. But >this patch allows the inclusion of the protocol and not just >a site. > >Next, C4/Auth now puts OPACBaseURL into the template parameters >regardless of OPAC or Staff clients. t/db_dependent/Auth.t was >tweaked to add a check for confirming that get_template_and_user >adds OPACBaseURL to both OPAC and Staff templates. > >In the staff client, once the OPACBaseURL is set, you get a nice >OPAC View link when viewing a biblio's detail. It should reflect >the protocol used now. > >Hard coded 'http://' strings were removed from the >sample_notices.sql files. This is what required also updating >the letters table in the updatedatabase.pl script. > >The explanation text in the sysprefs.sql needed updating too to >reflect the inclusion of the protocol. And this was the other >update done in the updatedatabase.pl script. The opac.pref file >was similarly changed as well. > >catalogue/detail.pl had no need to pass a custom OpacUrl value, >since C4/Auth passes the required OPACBaseURL, so it and the >corresponding template were modified. > >Both the MARC21 and NORMARC intranet details files had 'http://' >hard coded in them. This was removed. > >Both the bootstrap and prog theme opac-detail template had a >protocol parameter that was used. The logic for the parameter >was not removed, because it is used extensively in one template. >Perhaps it should be used to simplify the other. However, the >calculated current_url parameter had references to the protocol >removed, because of the changes to OPACBaseURL. > >opac/opac-shareshelf.pl had a hard coded 'http://' which was >removed. > >t/db_dependent/Auth_with_cas.t had 'http://' added to the value >set for OPACBaseURL. > >In virtualshelves/sendshelf.pl explicit code which sent the >OPACBaseURL preference was removed, since C4/Auth sends it all >the time now. > >C4::Context::set_preference was tweaked to ensure that >OPACBaseURL would always start with http. >t/db_dependent/Context.t was tweaked to specifically test this. > >The Shibboleth authentication needs OPACBaseURL set, and that >it be https protocol. The _get_uri routine was tweaked to always >pass back https:// as the protocol on the OPACBaseURL. >t/Auth_with_shibboleth.t was tweaked to specifically test the >changes. > >TEST PLAN >--------- >This is not an easy patch to test. Difficulties include: >- configuring Koha to run under https > (tweaking apache2 isn't so hard, just tricky) >- configuring Koha to run OPAC and Staff with Plak > (since code with comments about plak were sliced out) >- configuring Koha to use CAS > (may be requires for the CAS test) > > 1) Apply patch > 2) Make sure OPACBaseURL is set without the protocol included. > >UPDATEDATABASE > 3) back up your DB > 4) ./installer/data/mysql/updatedatabase.pl > -- It should run without errors. > 5) Look up the OPACBaseURL system preference in the staff > client > -- It should have http:// prepended. > 6) Run the mysqlclient from your koha git directory > USE koha_library; > SELECT content FROM letter WHERE content LIKE "%<<OPACBaseURL>>%"; > -- There should be no prepended http:// on the > <<OPACBaseURL>>. > 7) restore your DB > 8) Make sure OPACBaseURL is set with the protocol included, > preferably https. > -- Using https requires a bunch of apache2 tweaks. > >AUTH > 9) Call up staff client. >10) Call up OPAC. > -- C4/Auth.pm doesn't barf. >11) Call up Plack staff client >12) Call up Plack OPAC. > -- C4/Auth.pm doesn't barf. >13) prove -v t/db_dependent/Auth.t > >CONTEXT >14) Home -> Koha administration -> Global System Preferences > -> OPAC >15) Modify and save OPACBaseURL to not have http:// or https:// > on it. > -- It should be modified to include http:// >16) Modify and save another system preference. > -- It should save normally >17) prove -v t/db_dependent/Context.t > >CATALOGUE/DETAIL (tt & pl) >18) Confirm the OPACBaseURL is set >19) Navigate to any biblio details in the staff client > -- There should be a "OPAC view" link which has the > correct http:// or https:// in it. > >SQL (sample notices and sysprefs) >20) Run the mysqlclient from your koha git directory > USE koha_library; > DELETE FROM letter; > source installer/data/mysql/de-DE/mandatory/sample_notices.sql; > SELECT content FROM letter WHERE content LIKE "%<<OPACBaseURL>>%"; > DELETE FROM letter; > source installer/data/mysql/en/mandatory/sample_notices.sql; > SELECT content FROM letter WHERE content LIKE "%<<OPACBaseURL>>%"; > DELETE FROM letter; > source installer/data/mysql/nb-NO/1-Obligatorisk/sample_notices.sql > SELECT content FROM letter WHERE content LIKE "%<<OPACBaseURL>>%"; > -- Each of the selects should should lines that have > <<OPACBaseURL>> starting them, but no hard-coded http:// > DELETE FROM systempreferences; > source installer/data/mysql/sysprefs.sql; > SELECT * FROM systempreferences WHERE variable='OPACBaseURL'; > -- The explanation should reflect the new explanation. > QUIT >21) restore your DB >22) Make sure OPACBaseURL is set with the protocol included, > preferably https. > -- Using https requires a bunch of apache2 tweaks. > >SLIM2INTRANETDETAIL >23) Set 'XSLTDetailsDisplay' system preference to default. >24) Set 'marcflavour' system preference to MARC21. >25) View any biblio's details. > -- the URL beside 'OPAC View' should have the appropriate > http:// or https:// >26) Set 'marcflavour' system preference to NORMARC. >27) View any biblio's details. > -- the URL beside 'OPAC View' should have the appropriate > http:// or https:// > >OPAC-DETAIL >28) Set 'opacthemes' to bootstrap. >29) Set 'SocialNetworks' to enabled. >30) In OPAC, view any biblio's details. > -- the Share links should have the appropriate protocol on > the OPACBaseURL. >31) Set 'opacthemes' to prog. >32) In OPAC, view any biblio's details. > -- the Share links should have the appropriate protocol on > the OPACBaseURL. > >AUTH_WITH_CAS >33) prove -v t/db_dependent/Auth_with_cas.t > >OPAC-SHARESHELF >34) Set 'OpacAllowSharingPrivateLists' to allow. >35) In OPAC, 'Save to Lists' a search result. >36) Save it to a new private list. >37) Click the Lists button, and select the new list. >38) Click the Share button. > >AUTH_WITH_SHIBBOLETH >39) prove -v t/Auth_with_shibboleth.t > -- needs to be tests on Debian, because I can't get > the Test::DBIx::Class installed in Ubuntu. :( > >Rebased again... >--- > C4/Auth.pm | 7 +------ > 1 file changed, 1 insertion(+), 6 deletions(-) > >diff --git a/C4/Auth.pm b/C4/Auth.pm >index 22f1e8e..1b2f8d7 100644 >--- a/C4/Auth.pm >+++ b/C4/Auth.pm >@@ -383,6 +383,7 @@ sub get_template_and_user { > noItemTypeImages => C4::Context->preference("noItemTypeImages"), > marcflavour => C4::Context->preference("marcflavour"), > persona => C4::Context->preference("persona"), >+ OPACBaseURL => C4::Context->preference('OPACBaseURL'), > ); > if ( $in->{'type'} eq "intranet" ) { > $template->param( >@@ -453,11 +454,6 @@ sub get_template_and_user { > $opac_name = C4::Context->userenv->{'branch'}; > } > >- # FIXME Under Plack the CGI->https method always returns 'OFF' ($using_https will be set to 0 in this case) >- my $opac_base_url = C4::Context->preference("OPACBaseURL"); #FIXME uses $using_https below as well >- if ( !$opac_base_url ) { >- $opac_base_url = $ENV{'SERVER_NAME'} . ( $ENV{'SERVER_PORT'} eq ( $using_https ? "443" : "80" ) ? '' : ":$ENV{'SERVER_PORT'}" ); >- } > $template->param( > opaccolorstylesheet => C4::Context->preference("opaccolorstylesheet"), > AnonSuggestions => "" . C4::Context->preference("AnonSuggestions"), >@@ -477,7 +473,6 @@ sub get_template_and_user { > OPACUserCSS => "" . C4::Context->preference("OPACUserCSS"), > OPACViewOthersSuggestions => "" . C4::Context->preference("OPACViewOthersSuggestions"), > OpacAuthorities => C4::Context->preference("OpacAuthorities"), >- OPACBaseURL => ( $using_https ? "https://" : "http://" ) . $opac_base_url, > opac_css_override => $ENV{'OPAC_CSS_OVERRIDE'}, > opac_search_limit => $opac_search_limit, > opac_limit_override => $opac_limit_override, >-- >1.7.10.4
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
|
Splinter Review
Attachments on
bug 5010
:
22945
|
23436
|
23457
|
25877
|
25878
|
25879
|
27049
|
27072
|
27431
|
27432
|
27433
|
27435
|
27436
|
27437
|
27673
|
27779
|
27951
|
27952
|
27953
|
27954
|
31727
|
31728
|
31729
|
31787
|
33726
|
35662
|
35760
|
35833
|
35847
|
35852
|
35853
|
35854
|
36177
|
37695
|
38128
|
38658
|
38659
|
38833
|
38834
|
39008
|
39009
|
39086
|
39087
|
39358
|
39359