]> git.evergreen-ils.org Git - OpenSRF.git/blob - src/extras/fieldmapper.pl
bd90d0ba807df4f559a92148b953776f5d58ad3c
[OpenSRF.git] / src / extras / fieldmapper.pl
1 #!/usr/bin/perl
2 use strict; use warnings;
3
4 use Data::Dumper; 
5 use OpenILS::Utils::Fieldmapper;  
6
7 my $map = $Fieldmapper::fieldmap;
8
9 print <<JS;
10
11 //  ----------------------------------------------------------------
12 // Autogenerated by fieldmapper.pl
13 //  ----------------------------------------------------------------
14
15 JS
16
17 for my $object (keys %$map) {
18
19 my $short_name = $map->{$object}->{hint};
20
21 print <<JS;
22
23 //  ----------------------------------------------------------------
24 // Class: $short_name
25 //  ----------------------------------------------------------------
26
27 JS
28
29 print   <<JS;
30 function $short_name(array) {
31         if(array) { this.array = array; } 
32         else { this.array = []; }
33 }
34
35 $short_name.classname = "$short_name";
36
37 JS
38
39 for my $field (keys %{$map->{$object}->{fields}}) {
40
41 my $position = $map->{$object}->{fields}->{$field}->{position};
42
43 print <<JS;
44 $short_name.prototype.$field = function(new_value) {
45         if(new_value) { this.array[$position] = new_value; }
46         return this.array[$position];
47 }
48 JS
49
50 }
51 }
52