Bugzilla – Attachment 11206 Details for
Bug 8492
Restrict OpacSuppression to IP addresses outside of an IP range
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
[SIGNED-OFF] Bug 8492 [ENH] Restrict OpacSuppression to IP adresses outside of an IP range
SIGNED-OFF-Bug-8492-ENH-Restrict-OpacSuppression-t.patch (text/plain), 4.84 KB, created by
Marc Véron
on 2012-07-30 16:53:14 UTC
(
hide
)
Description:
[SIGNED-OFF] Bug 8492 [ENH] Restrict OpacSuppression to IP adresses outside of an IP range
Filename:
MIME Type:
Creator:
Marc Véron
Created:
2012-07-30 16:53:14 UTC
Size:
4.84 KB
patch
obsolete
>From 698b82d2375358610852cbd5b3bbd461123c53a1 Mon Sep 17 00:00:00 2001 >From: Mirko Tietgen <5p4m@gmx.de> >Date: Tue, 24 Jul 2012 01:31:28 +0200 >Subject: [PATCH] [SIGNED-OFF] Bug 8492 [ENH] Restrict OpacSuppression to IP adresses outside of an IP range >Content-Type: text/plain; charset="utf-8" > >This enhancement extends the OpacSuppression feature with an optional IP address range within which results are _not_ suppressed. > >To test > >* turn on OpacSuppression (Administration->System preferences->Cataloging) and enter an IP address range in the OpacSuppressionByIPRange field. >* set at least one bibliographic record to suppress=1 (enter '1' in 942$n) >* fully reindex your data >* do an OPAC search that should bring up your suppressed record >* try with IP ranges that match your IP and ranges that don't > >Signed-off-by: Marc Veron <veron@veron.ch> > >Tested following the scenario above. Works as expected. >--- > installer/data/mysql/sysprefs.sql | 1 + > installer/data/mysql/updatedatabase.pl | 7 +++++++ > .../en/modules/admin/preferences/cataloguing.pref | 4 ++++ > opac/opac-search.pl | 12 +++++++++++- > 4 files changed, 23 insertions(+), 1 deletions(-) > >diff --git a/installer/data/mysql/sysprefs.sql b/installer/data/mysql/sysprefs.sql >index 6a53379..ff36c1e 100644 >--- a/installer/data/mysql/sysprefs.sql >+++ b/installer/data/mysql/sysprefs.sql >@@ -375,3 +375,4 @@ 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('OpacSuppressionByIPRange','','Restrict the suppression to IP adresses outside of the IP range','','free'); >diff --git a/installer/data/mysql/updatedatabase.pl b/installer/data/mysql/updatedatabase.pl >index 608a1bf..e5e30ad 100755 >--- a/installer/data/mysql/updatedatabase.pl >+++ b/installer/data/mysql/updatedatabase.pl >@@ -5566,6 +5566,13 @@ 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('OpacSuppressionByIPRange','','Restrict the suppression to IP adresses outside of the IP range','','free');"); >+ print "Upgrade to $DBversion done (Add OpacSuppressionByIPRange syspref)\n"; >+ SetVersion ($DBversion); >+} >+ > =head1 FUNCTIONS > > =head2 TableExists($table) >diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/cataloguing.pref b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/cataloguing.pref >index fe5fd05..0545c3a 100644 >--- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/cataloguing.pref >+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/cataloguing.pref >@@ -141,4 +141,8 @@ Cataloging: > yes: Hide > no: "Don't hide" > - items marked as suppressed from OPAC search results. Note that you must have the <code>Suppress</code> index set up in Zebra and at least one suppressed item, or your searches will be broken. >+ - Restrict the suppression to IP adresses outside of the IP range >+ - pref: OpacSuppressionByIPRange >+ class: short >+ - (Leave blank if not used. Define a range like <code>192.168.</code>.) > >diff --git a/opac/opac-search.pl b/opac/opac-search.pl >index 1e5a0d7..82b35d2 100755 >--- a/opac/opac-search.pl >+++ b/opac/opac-search.pl >@@ -449,7 +449,17 @@ my @limit_inputs = $limit_cgi ? _input_cgi_parse($limit_cgi) : (); > # > # add OPAC suppression - requires at least one item indexed with Suppress > if (C4::Context->preference('OpacSuppression')) { >- $query = "($query) not Suppress=1"; >+ # OPAC suppression by IP address >+ if (C4::Context->preference('OpacSuppressionByIPRange')) { >+ my $IPAddress = $ENV{'REMOTE_ADDR'}; >+ my $IPRange = C4::Context->preference('OpacSuppressionByIPRange'); >+ if ($IPAddress !~ /^$IPRange/) { >+ $query = "($query) not Suppress=1"; >+ } >+ } >+ else { >+ $query = "($query) not Suppress=1"; >+ } > } > > $template->param ( LIMIT_INPUTS => \@limit_inputs ); >-- >1.7.2.5
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 8492
:
11094
|
11156
|
11206
|
11692