[interchange-cvs] interchange - heins modified lib/Vend/Interpolate.pm

interchange-core@icdevgroup.org interchange-core@icdevgroup.org
Tue Apr 29 14:14:01 2003


User:      heins
Date:      2003-04-29 18:13:47 GMT
Modified:  lib/Vend Interpolate.pm
Log:
* Change widget code to reflect first shipping mode in a redirecting
  chain.

Revision  Changes    Path
2.160     +6 -4      interchange/lib/Vend/Interpolate.pm


rev 2.160, prev_rev 2.159
Index: Interpolate.pm
===================================================================
RCS file: /var/cvs/interchange/lib/Vend/Interpolate.pm,v
retrieving revision 2.159
retrieving revision 2.160
diff -u -r2.159 -r2.160
--- Interpolate.pm	28 Apr 2003 15:23:36 -0000	2.159
+++ Interpolate.pm	29 Apr 2003 18:13:47 -0000	2.160
@@ -1,6 +1,6 @@
 # Vend::Interpolate - Interpret Interchange tags
 # 
-# $Id: Interpolate.pm,v 2.159 2003/04/28 15:23:36 mheins Exp $
+# $Id: Interpolate.pm,v 2.160 2003/04/29 18:13:47 mheins Exp $
 #
 # Copyright (C) 1996-2002 Red Hat, Inc. <interchange@redhat.com>
 #
@@ -27,7 +27,7 @@
 require Exporter;
 @ISA = qw(Exporter);
 
-$VERSION = substr(q$Revision: 2.159 $, 10);
+$VERSION = substr(q$Revision: 2.160 $, 10);
 
 @EXPORT = qw (
 
@@ -5917,6 +5917,8 @@
 		}
 		elsif ($what =~ /^>>(\w+)/) {
 			my $newmode = $1;
+			local($opt->{redirect_from});
+			$opt->{redirect_from} = $mode;
 			return shipping($newmode, $opt);
 		}
 		elsif ($what eq 'x') {
@@ -6055,7 +6057,7 @@
 #::logDebug("label start: $label");
 		my %subst = (
 						'%' => '%',
-						M => $mode,
+						M => $opt->{redirect_from} || $mode,
 						T => $total,
 						S => $sel ? ' SELECTED' : '',
 						C => $sel ? ' CHECKED' : '',
@@ -6192,7 +6194,7 @@
 			$o->{type} = delete $o->{widget};
 			$o->{passed} = join ",", @out;
 			$o->{name} ||= 'mv_shipmode';
-			$o->{default} ||= $::Values->{mv_shipmode};
+			$o->{value} ||= $::Values->{mv_shipmode};
 			$out = Vend::Form::display($o);
 		}
 		else {