]> git.evergreen-ils.org Git - Evergreen.git/blob - Evergreen/staff_client/chrome/content/evergreen/patron/patron_items.js
hookup menu for billing type
[Evergreen.git] / Evergreen / staff_client / chrome / content / evergreen / patron / patron_items.js
1 sdump('D_TRACE','Loading patron_items.js\n');
2
3 function patron_items_init(p) {
4         sdump('D_PATRON_ITEMS',"TESTING: patron_items.js: " + mw.G['main_test_variable'] + '\n');
5         sdump('D_CONSTRUCTOR',arg_dump(arguments));
6
7         p.patron_items_cols = circ_cols();
8
9         p.paged_tree = paged_tree_init( { 'w' : p.w, 'node' : p.node, 'cols' : p.patron_items_cols, 'hide_nav' : true, 'hits_per_page' : '9999', 'debug' : p.app } );
10         p.add_patron_items = p.paged_tree.add_rows;
11         p.clear_patron_items = p.paged_tree.clear_tree;
12
13         p.register_patron_items_select_callback = function (f) {
14                 sdump('D_PATRON_ITEMS','p.register_patron_items_select_callback(' + f + ')\n');
15                 p.paged_tree.register_select_callback( f );
16         }
17
18         p.register_flesh_patron_items_function = function (f) {
19                 sdump('D_PATRON_ITEMS','p.register_flesh_patron_items_function(' + f + ')\n');
20                 p.paged_tree.register_flesh_row_function( f );
21         }
22
23         p.register_item_context_builder = function (f) {
24                 sdump('D_PATRON_ITEMS','p.register_context_builder(' + f + ')\n');
25                 p.paged_tree.register_context_builder( f );
26         }
27
28         p.map_patron_items_to_cols = function (patron_items, treeitem) {
29                 sdump('D_PATRON_ITEMS','p.map_patron_items_to_cols( ' + patron_items + ',' + treeitem + ')\n');
30                 patron_items_tree_map_patron_items_to_cols(p, patron_items, treeitem);  
31         }
32
33         sdump('D_TRACE_EXIT',arg_dump(arguments));
34         return p;
35 }
36
37 function patron_items_tree_map_patron_items_to_cols(p, patron_items, treeitem) {
38         sdump('D_PATRON_ITEMS',arg_dump(arguments,{1:true}));
39         sdump('D_TRACE_ENTER',arg_dump(arguments));
40         var cols = new Array();
41         for (var i = 0; i < p.patron_items_cols.length; i++) {
42                 var hash = p.patron_items_cols[i];
43                 sdump('D_PATRON_ITEMS','Considering ' + js2JSON(hash) + '\n');
44                 var obj_string;
45                 switch( hash.fm_class ) {
46                         case 'acp' : obj_string = 'patron_items.copy'; break;
47                         case 'circ' : obj_string = 'patron_items.circ'; break;
48                         case 'mvr' : obj_string = 'patron_items.record'; break;
49                 }
50                 var cmd = parse_render_string( obj_string, hash.fm_field_render );
51                 sdump('D_PATRON_ITEMS','cmd = ' + cmd + '\n');
52                 var col = '';
53                 try {
54                         col = eval( cmd );
55                         sdump('D_PATRON_ITEMS','eval = ' + col + '\n');
56                 } catch(E) {
57                         sdump('D_ERROR',js2JSON(E) + '\n');
58                 }
59                 cols.push( col );
60         }
61         sdump('D_PATRON_ITEMS','cols = ' + js2JSON(cols) + '\n');
62         p.paged_tree.map_cols_to_treeitem( cols, treeitem );
63         sdump('D_TRACE_EXIT',arg_dump(arguments));
64 }