From c8bea04503f84e1ae9d141f19bae4fc7246fa01d Mon Sep 17 00:00:00 2001 From: miker Date: Sat, 24 Jan 2009 01:48:41 +0000 Subject: [PATCH] add links to the fm class structure git-svn-id: svn://svn.open-ils.org/ILS/trunk@11942 dcc99617-32d9-48b4-a31d-7c20da2025e4 --- Open-ILS/src/perlmods/OpenILS/Utils/Fieldmapper.pm | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/Open-ILS/src/perlmods/OpenILS/Utils/Fieldmapper.pm b/Open-ILS/src/perlmods/OpenILS/Utils/Fieldmapper.pm index 3e0fd090b0..3a6c58a526 100644 --- a/Open-ILS/src/perlmods/OpenILS/Utils/Fieldmapper.pm +++ b/Open-ILS/src/perlmods/OpenILS/Utils/Fieldmapper.pm @@ -47,7 +47,8 @@ sub import { # parse the IDL ... my $file = $args{IDL} || OpenSRF::Utils::SettingsClient->new->config_value( 'IDL' ); - my $idl = XMLin( $file, ForceArray => 0, KeyAttr => ['name', 'id'], ValueAttr => {link =>'key'} )->{class}; + #my $idl = XMLin( $file, ForceArray => 0, KeyAttr => ['name', 'id'], ValueAttr => {link =>'key'} )->{class}; + my $idl = XMLin( $file, ForceArray => 0, KeyAttr => ['name', 'id', 'field'] )->{class}; for my $c ( keys %$idl ) { next unless ($idl->{$c}{'oils_obj:fieldmapper'}); @@ -71,6 +72,13 @@ sub import { $$fieldmap{$n}{selector} = $idl->{$c}{fields}{field}{$f}{'reporter:selector'}; } } + for my $f ( keys %{ $idl->{$c}{links}{link} } ) { + $$fieldmap{$n}{links}{$f} = + { class => $idl->{$c}{links}{link}{$f}{class}, + reltype => $idl->{$c}{links}{link}{$f}{reltype}, + key => $idl->{$c}{links}{link}{$f}{key}, + }; + } } -- 2.11.0