]> git.evergreen-ils.org Git - working/Evergreen.git/blob - Evergreen/staff_client/chrome/content/evergreen/patron/patron_search_results.js
debug stuff. flesh patrons
[working/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.w.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.w.tree_win = spawn_paged_tree(
35                 p.w.document, 'new_iframe', p.paged_tree, { 
36                         'cols' : p.w.patron_cols,
37                         'onload' : patron_search_results_init_after_paged_tree(p) 
38                 }
39         );
40
41         p.w.register_patron_select_callback = function (f) {
42                 p.w._patron_select_callback = f;
43         }
44
45         p.w.register_flesh_patron_function = function (f) {
46                 p.w._flesh_patron_function = f;
47         }
48
49         p.w.map_patron_to_cols = function (patron, treeitem) {
50                 patron_search_results_map_patron_to_cols(p, patron, treeitem);  
51         }
52
53         if (p.onload) {
54                 try {
55                         sdump('D_TRACE','trying psuedo-onload: ' + p.onload + '\n');
56                         p.onload(p.w);
57                 } catch(E) {
58                         sdump('D_ERROR', js2JSON(E) + '\n' );
59                 }
60         }
61         sdump('D_TRACE_EXIT',arg_dump(arguments));
62 }
63
64 function patron_search_results_init_after_paged_tree(p) {
65         sdump('D_PATRON_SEARCH_RESULTS',arg_dump(arguments));
66         sdump('D_TRACE_ENTER',arg_dump(arguments));
67         sdump('D_TRACE_EXIT',arg_dump(arguments));
68         return function (tree_win) {
69                 sdump('D_TRACE_ENTER',arg_dump(arguments));
70                 sdump('D_PATRON_SEARCH_RESULTS',arg_dump(arguments));
71                 tree_win.register_select_callback( p.w._patron_select_callback );
72                 tree_win.register_flesh_row_function( p.w._flesh_patron_function );
73                 p.w.add_patrons = tree_win.add_rows;
74                 sdump('D_TRACE_EXIT',arg_dump(arguments));
75         };
76 }
77
78 function patron_search_results_map_patron_to_cols(p, patron, treeitem) {
79         sdump('D_PATRON_SEARCH_RESULTS',arg_dump(arguments));
80         sdump('D_TRACE_ENTER',arg_dump(arguments));
81         var cols = new Array();
82         for (var i = 0; i < p.w.patron_cols.length; i++) {
83                 var hash = p.w.patron_cols[i];
84                 sdump('D_PATRON_SEARCH_RESULTS','Considering ' + js2JSON(hash) + '\n');
85                 var cmd = 'patron'+hash.fm_field_render;
86                 sdump('D_PATRON_SEARCH_RESULTS','cmd = ' + cmd + '\n');
87                 var col = '';
88                 try {
89                         col = eval( cmd );
90                         sdump('D_PATRON_SEARCH_RESULTS','eval = ' + col + '\n');
91                 } catch(E) {
92                         sdump('D_ERROR',js2JSON(E) + '\n');
93                 }
94                 cols.push( col );
95         }
96         sdump('D_PATRON_SEARCH_RESULTS','cols = ' + js2JSON(cols) + '\n');
97         p.w.tree_win.map_cols_to_treeitem( cols, treeitem );
98         sdump('D_TRACE_EXIT',arg_dump(arguments));
99 }