]> git.evergreen-ils.org Git - Evergreen.git/blob - Evergreen/staff_client/chrome/content/evergreen/patron/patron_search_results.js
hookup menu for billing type
[Evergreen.git] / Evergreen / staff_client / chrome / content / evergreen / patron / patron_search_results.js
1 sdump('D_TRACE','Loading patron_search_results.js\n');
2
3 function patron_search_results_init(p) {
4         sdump('D_PATRON_SEARCH_RESULTS',"TESTING: patron_search_results.js: " + mw.G['main_test_variable'] + '\n');
5         sdump('D_TRACE_ENTER',arg_dump(arguments));
6
7         p.patron_cols = [
8                 { 
9                         'active' : 'id_col', 'label' : getString('au_label_active'), 'flex' : 1, 
10                         'primary' : false, 'hidden' : false, 'fm_field_render' : 'yesno( $$.active() )'
11                 },
12                 { 
13                         'id' : 'id_col', 'label' : getString('au_label_id'), 'flex' : 1, 
14                         'primary' : false, 'hidden' : false, 'fm_field_render' : '.id()'
15                 },
16                 { 
17                         'id' : 'prefix_col', 'label' : getString('au_label_prefix'), 'flex' : 1, 
18                         'primary' : false, 'hidden' : false, 'fm_field_render' : '.prefix()'
19                 },
20                 { 
21                         'id' : 'family_name_col', 'label' : getString('au_label_family_name'), 'flex' : 1, 
22                         'primary' : false, 'hidden' : false, 'fm_field_render' : '.family_name()'
23                 },
24                 { 
25                         'id' : 'first_given_name_col', 'label' : getString('au_label_first_given_name'), 'flex' : 1, 
26                         'primary' : false, 'hidden' : false, 'fm_field_render' : '.first_given_name()'
27                 },
28                 { 
29                         'id' : 'second_given_name_col', 'label' : getString('au_label_second_given_name'), 'flex' : 1, 
30                         'primary' : false, 'hidden' : false, 'fm_field_render' : '.second_given_name()'
31                 },
32                 { 
33                         'id' : 'suffix_col', 'label' : getString('au_label_suffix'), 'flex' : 1, 
34                         'primary' : false, 'hidden' : false, 'fm_field_render' : '.suffix()'
35                 }
36         ];
37
38         p.paged_tree = paged_tree_init( { 'w' : p.w, 'node' : p.node, 'cols' : p.patron_cols, 'debug' : p.app } );
39         p.add_patrons = p.paged_tree.add_rows;
40         p.clear_patrons = p.paged_tree.clear_tree;
41
42         p.register_patron_select_callback = function (f) {
43                 sdump('D_PATRON_SEARCH_RESULTS','p.register_patron_select_callback(' + f + ')\n');
44                 p.paged_tree.register_select_callback( f );
45         }
46
47         p.register_flesh_patron_function = function (f) {
48                 sdump('D_PATRON_SEARCH_RESULTS','p.register_flesh_patron_function(' + f + ')\n');
49                 p.paged_tree.register_flesh_row_function( f );
50         }
51
52         p.register_context_builder = function (f) {
53                 sdump('D_PATRON_SEARCH_RESULTS','p.register_context_builder(' + f + ')\n');
54                 p.paged_tree.register_context_builder( f );
55         }
56
57         p.map_patron_to_cols = function (patron, treeitem) {
58                 sdump('D_PATRON_SEARCH_RESULTS','p.map_patron_to_cols(' + patron + ',' + treeitem + ')\n');
59                 patron_search_results_map_patron_to_cols(p, patron, treeitem);  
60         }
61
62         sdump('D_TRACE_EXIT',arg_dump(arguments));
63         return p;
64 }
65
66 function patron_search_results_map_patron_to_cols(p, patron, treeitem) {
67         sdump('D_PATRON_SEARCH_RESULTS',arg_dump(arguments));
68         sdump('D_TRACE_ENTER',arg_dump(arguments));
69         var cols = new Array();
70         for (var i = 0; i < p.patron_cols.length; i++) {
71                 var hash = p.patron_cols[i];
72                 sdump('D_PATRON_SEARCH_RESULTS','Considering ' + js2JSON(hash) + '\n');
73                 var cmd = parse_render_string('patron',hash.fm_field_render);
74                 sdump('D_PATRON_SEARCH_RESULTS','cmd = ' + cmd + '\n');
75                 var col = '';
76                 try {
77                         col = eval( cmd );
78                         sdump('D_PATRON_SEARCH_RESULTS','eval = ' + col + '\n');
79                 } catch(E) {
80                         sdump('D_ERROR',js2JSON(E) + '\n');
81                 }
82                 cols.push( col );
83         }
84         sdump('D_PATRON_SEARCH_RESULTS','cols = ' + js2JSON(cols) + '\n');
85         p.paged_tree.map_cols_to_treeitem( cols, treeitem );
86         sdump('D_TRACE_EXIT',arg_dump(arguments));
87 }