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