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

interchange-core@icdevgroup.org interchange-core@icdevgroup.org
Sun Aug 11 11:56:59 2002


User:      heins
Date:      2002-08-11 15:56:24 GMT
Modified:  lib/Vend Menu.pm
Log:
* Change footer/header behavior so they are parsed for ITL by default.

Revision  Changes    Path
2.5       +48 -10    interchange/lib/Vend/Menu.pm


rev 2.5, prev_rev 2.4
Index: Menu.pm
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
RCS file: /var/cvs/interchange/lib/Vend/Menu.pm,v
retrieving revision 2.4
retrieving revision 2.5
diff -u -r2.4 -r2.5
--- Menu.pm	7 Aug 2002 08:11:01 -0000	2.4
+++ Menu.pm	11 Aug 2002 15:56:24 -0000	2.5
@@ -1,6 +1,6 @@
 # Vend::Menu - Interchange payment processing routines
 #
-# $Id: Menu.pm,v 2.4 2002/08/07 08:11:01 mheins Exp $
+# $Id: Menu.pm,v 2.5 2002/08/11 15:56:24 mheins Exp $
 #
 # Copyright (C) 2002 Mike Heins, <mike@perusion.net>
 #
@@ -21,7 +21,7 @@
=20
 package Vend::Menu;
=20
-$VERSION =3D substr(q$Revision: 2.4 $, 10);
+$VERSION =3D substr(q$Revision: 2.5 $, 10);
=20
 use Vend::Util;
 use strict;
@@ -203,8 +203,13 @@
 </P>
 EOF
=20
-	push @out, Vend::Tags->uc_attr_list($opt, $opt->{header_template})
-		unless $opt->{no_expand_collapse};
+	my $header;
+	$header =3D ::interpolate_html($opt->{header_template})
+		if $opt->{header_template};
+	if($header =3D~ /\S/) {
+		$header =3D Vend::Tags->uc_attr_list($opt, $header);
+		push @out, $header;
+	}
=20
 	my %defaults =3D (
 				start       =3D> $opt->{tree_selector} || 'Products',
@@ -228,8 +233,13 @@
 	}
 	push @out, Vend::Tags->tree($opt);
=20
-	push @out, Vend::Tags->uc_attr_list($opt, $opt->{footer_template})
-		unless $opt->{no_expand_collapse};
+	my $footer;
+	$footer =3D ::interpolate_html($opt->{footer_template})
+		if $opt->{footer_template};
+	if($footer =3D~ /\S/) {
+		$footer =3D Vend::Tags->uc_attr_list($opt, $footer);
+		push @out, $footer;
+	}
=20
 	return join "\n", @out;
=20
@@ -240,8 +250,13 @@
 	my @out;
 	my $u;
=20
-	push @out, Vend::Tags->uc_attr_list($opt, $opt->{header_template}, 1)
+	my $header;
+	$header =3D ::interpolate_html($opt->{header_template})
 		if $opt->{header_template};
+	if($header =3D~ /\S/) {
+		$header =3D Vend::Tags->uc_attr_list($opt, $header);
+		push @out, $header;
+	}
=20
 	my %defaults =3D (
 				iterator    =3D> \&menu_link,
@@ -254,8 +269,13 @@
 	}
 	push @out, Vend::Tags->loop(undef,$opt,$template);
=20
-	push @out, Vend::Tags->uc_attr_list($opt, $opt->{footer_template})
+	my $footer;
+	$footer =3D ::interpolate_html($opt->{footer_template})
 		if $opt->{footer_template};
+	if($footer =3D~ /\S/) {
+		$footer =3D Vend::Tags->uc_attr_list($opt, $footer);
+		push @out, $footer;
+	}
=20
 	return join "\n", @out;
=20
@@ -280,7 +300,13 @@
 </P>
 EOF
=20
-	push @out, Vend::Tags->uc_attr_list($opt, $opt->{header_template});
+	my $header;
+	$header =3D ::interpolate_html($opt->{header_template})
+		if $opt->{header_template};
+	if($header =3D~ /\S/) {
+		$header =3D Vend::Tags->uc_attr_list($opt, $header);
+		push @out, $header;
+	}
=20
 	$opt->{div_style} ||=3D '';
 	push @out, <<EOF;
@@ -459,8 +485,15 @@
 rewrite_tree();
 </script>
 EOF
-	push @out, Vend::Tags->uc_attr_list($opt, $opt->{footer_template})
+
+	my $footer;
+	$footer =3D ::interpolate_html($opt->{footer_template})
 		if $opt->{footer_template};
+	if($footer =3D~ /\S/) {
+		$footer =3D Vend::Tags->uc_attr_list($opt, $footer);
+		push @out, $footer;
+	}
+
 	return join "\n", @out;
 }
=20
@@ -650,6 +683,11 @@
 	my $prefix =3D $opt->{prefix} || 'menu';
 	$opt->{link_class} ||=3D $::Variable->{MV_DEFAULT_LINK_CLASS};
=20
+	$opt->{parse_header_footer} =3D 1 unless defined $opt->{parse_header_foot=
er};
+
+	if($opt->{parse_header_footer}) {
+		$opt->{parse_header} =3D $opt->{parse_footer} =3D 1;
+	}
 	if($template and $template =3D~ s:\[$prefix-header\](.*?)\[/$prefix-heade=
r\]::si) {
 		$opt->{header_template} =3D $1;
 	}