[interchange-cvs] interchange - heins modified 2 files

interchange-core@icdevgroup.org interchange-core@icdevgroup.org
Fri Apr 11 20:00:01 2003


User:      heins
Date:      2003-04-11 23:56:05 GMT
Modified:  dist/lib/UI/pages/admin customer.html
Added:     code/UI_Tag meta_info.coretag
Log:
* More metadata tools. New tag [meta-info table=foo col=bar key=label] returns
  "label" metadata item. Can access any key in meta record including extended.
  Has localize=1 flag to localize returned labels.

  Small example of how to use this in pages/admin/customer.html -- allows
  you to change "Company" to "Affilation" or "Organization" and have a hope
  of having it show up everywhere.

Revision  Changes    Path
2.15      +1 -1      interchange/dist/lib/UI/pages/admin/customer.html


rev 2.15, prev_rev 2.14
Index: customer.html
===================================================================
RCS file: /var/cvs/interchange/dist/lib/UI/pages/admin/customer.html,v
retrieving revision 2.14
retrieving revision 2.15
diff -u -r2.14 -r2.15
--- customer.html	14 Jan 2003 02:25:50 -0000	2.14
+++ customer.html	11 Apr 2003 23:56:05 -0000	2.15
@@ -263,7 +263,7 @@
     `][L]Name[/L]</A></td>
 	<td class=rhead>[page extra=rhead href=@@MV_PAGE@@ form=`
     return "$qual\nui_sort_field=company,lname\n" . sortrev('company');
-    `][L]Company[/L]</A></td>
+    `][meta-info table=transactions col=company key=label localize=1]</A></td>
 	<td class=rhead>
 		[page
 			href=@@MV_PAGE@@



1.1                  interchange/code/UI_Tag/meta_info.coretag


rev 1.1, prev_rev 1.0
Index: meta_info.coretag
===================================================================
UserTag meta-info Order table column key
UserTag meta-info attrAlias  col column
UserTag meta-info addAttr
UserTag meta-info Routine <<EOR
sub {
	my ($table, $col, $key, $opt) = @_;

	my $item;
	if($table) {
		$item = $table;
		$item .= "::$col" if $col;
	}

	$item ||= $opt->{item} or return undef;
	my $meta;
	my $mdb;

	if($opt->{meta_table}) {
		$mdb = dbref($opt->{meta_table});
	}
	
	my @tries = $item;

	if($opt->{specific}) {
		unshift @tries, $item . "::$opt->{specific}";
	}

	for(@tries) {
		$meta = Vend::Table::Editor::meta_record(
								$_,
								$opt->{view},
								$mdb,
								$opt->{extended_only},
							)
				and last;
	}
	return undef unless $meta;
#::logDebug("Got meta record back, looking for $key: " . ::uneval($meta));
	return errmsg($meta->{$key}) if $opt->{localize};
	return $meta->{$key};
}
EOR