[interchange-cvs] interchange - markj modified 2 files
interchange-cvs at icdevgroup.org
interchange-cvs at icdevgroup.org
Fri Mar 27 11:09:48 UTC 2009
User: markj
Date: 2009-03-27 11:09:48 GMT
Modified: lib/Vend Config.pm Server.pm
Log:
* New DowncaseVarname config. Given a space- or comma-delimited list of CGI
params, Interchange will accept those params in any case from the query
string and force them to lower case. Developed primarily to address affliates
creating URLs with "mv_pc" but using inconsistent case in the URL, and thus
Interchange missing it.
Revision Changes Path
2.244 interchange/lib/Vend/Config.pm
rev 2.244, prev_rev 2.243
Index: Config.pm
===================================================================
RCS file: /var/cvs/interchange/lib/Vend/Config.pm,v
retrieving revision 2.243
retrieving revision 2.244
diff -u -r2.243 -r2.244
--- Config.pm 22 Mar 2009 19:32:31 -0000 2.243
+++ Config.pm 27 Mar 2009 11:09:48 -0000 2.244
@@ -1,6 +1,6 @@
# Vend::Config - Configure Interchange
#
-# $Id: Config.pm,v 2.243 2009-03-22 19:32:31 mheins Exp $
+# $Id: Config.pm,v 2.244 2009-03-27 11:09:48 markj Exp $
#
# Copyright (C) 2002-2009 Interchange Development Group
# Copyright (C) 1996-2002 Red Hat, Inc.
@@ -54,7 +54,7 @@
use Vend::Data;
use Vend::Cron;
-$VERSION = substr(q$Revision: 2.243 $, 10);
+$VERSION = substr(q$Revision: 2.244 $, 10);
my %CDname;
my %CPname;
@@ -518,6 +518,7 @@
['External', 'yesno', 'No'],
['ExternalFile', 'root_dir', "$Global::RunDir/external.structure"],
['ExternalExport', undef, 'Global::Catalog=Catalog'],
+ ['DowncaseVarname', undef, ''],
];
return $directives;
2.104 interchange/lib/Vend/Server.pm
rev 2.104, prev_rev 2.103
Index: Server.pm
===================================================================
RCS file: /var/cvs/interchange/lib/Vend/Server.pm,v
retrieving revision 2.103
retrieving revision 2.104
diff -u -r2.103 -r2.104
--- Server.pm 22 Mar 2009 19:32:31 -0000 2.103
+++ Server.pm 27 Mar 2009 11:09:48 -0000 2.104
@@ -1,6 +1,6 @@
# Vend::Server - Listen for Interchange CGI requests as a background server
#
-# $Id: Server.pm,v 2.103 2009-03-22 19:32:31 mheins Exp $
+# $Id: Server.pm,v 2.104 2009-03-27 11:09:48 markj Exp $
#
# Copyright (C) 2002-2009 Interchange Development Group
# Copyright (C) 1996-2002 Red Hat, Inc.
@@ -26,7 +26,7 @@
package Vend::Server;
use vars qw($VERSION);
-$VERSION = substr(q$Revision: 2.103 $, 10);
+$VERSION = substr(q$Revision: 2.104 $, 10);
use Cwd;
use POSIX qw(setsid strftime);
@@ -315,6 +315,11 @@
# Doesn't do unhexify
sub store_cgi_kv {
my ($key, $value) = @_;
+
+ $key = lc ($key) if
+ $Global::DowncaseVarname
+ && $Global::DowncaseVarname =~ /\b$key\b/i;
+
$key = $::IV->{$key} if defined $::IV->{$key};
if(defined $CGI::values{$key} and ! defined $::SV{$key}) {
$CGI::values{$key} = "$CGI::values{$key}\0$value";
@@ -383,6 +388,10 @@
};
#::logDebug("incoming --> $key");
+ $key = lc ($key) if
+ $Global::DowncaseVarname
+ && $Global::DowncaseVarname =~ /\b$key\b/i;
+
$key = $::IV->{$key} if defined $::IV->{$key};
Vend::CharSet::decode_urlencode(\$key, $charset);
More information about the interchange-cvs
mailing list