[interchange-cvs] interchange - racke modified 2 files

interchange-cvs at icdevgroup.org interchange-cvs at icdevgroup.org
Fri Oct 31 05:45:02 EST 2003


User:      racke
Date:      2003-10-31 10:45:01 GMT
Modified:  .        WHATSNEW
Modified:  code/UserTag formel.tag
Log:
* [formel] fetches the label for the display type from the metadata if not passed
  with the parameters.

Revision  Changes    Path
2.159     +6 -0      interchange/WHATSNEW


rev 2.159, prev_rev 2.158
Index: WHATSNEW
===================================================================
RCS file: /anon_cvs/repository/interchange/WHATSNEW,v
retrieving revision 2.158
retrieving revision 2.159
diff -u -r2.158 -r2.159
--- WHATSNEW	31 Oct 2003 00:29:24 -0000	2.158
+++ WHATSNEW	31 Oct 2003 10:45:00 -0000	2.159
@@ -20,6 +20,12 @@
   The "province" profile check will now accept both NF and NL, but NF is now
   deprecated and will be removed in a future release.
 
+Usertags
+--------
+
+* [formel] fetches the label for the display type from the metadata if not passed
+  with the parameters.
+
 Foundation
 ----------
 



1.8       +14 -5     interchange/code/UserTag/formel.tag


rev 1.8, prev_rev 1.7
Index: formel.tag
===================================================================
RCS file: /anon_cvs/repository/interchange/code/UserTag/formel.tag,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- formel.tag	18 Jun 2003 17:34:43 -0000	1.7
+++ formel.tag	31 Oct 2003 10:45:01 -0000	1.8
@@ -19,7 +19,7 @@
 # MA  02111-1307  USA.
 
 UserTag formel Order label name type size
-UserTag formel Version 0.092
+UserTag formel Version 0.093
 UserTag formel addAttr
 UserTag formel Routine <<EOF
 sub {
@@ -108,7 +108,7 @@
 		return sprintf ($fmt, $labelhtml, $elhtml);
 	}
 
-	$labelhtml = &$labelproc($label);
+	$labelhtml = &$labelproc($label) if $label || $type ne 'display';
 
 	if ($type eq 'select') {
 		my ($rlabel, $rvalue, $select);
@@ -136,9 +136,18 @@
 	}
 
 	if ($type eq 'display') {
-		# try to handle widget with UI tag display
-		$elhtml = $Tag->display($opt->{table} || 'products', $name, '', 
-			{value => $Values->{$name}});
+		if ($label) {
+			# use provided label
+			$elhtml = $Tag->display($opt->{table} || 'products', $name, '', 
+									{value => $Values->{$name}});
+		} else {
+			# use dummy template to retrieve label from metadata
+			$elhtml = $Tag->display($opt->{table} || 'products', $name, '', 
+									{value => $Values->{$name}, 
+									 template => join(" \0", '$LABEL$', '$WIDGET$')});
+			($label, $elhtml) = split(/\s\0/, $elhtml);
+			$labelhtml = &$labelproc($label);
+		}
 	} elsif ($opt->{reset}) {
 		if ($type eq 'textarea') {
 	        $elhtml = qq{<textarea name="${name}"$sizestr></textarea>};








More information about the interchange-cvs mailing list