1 dump('entering patron/search_result.js\n');
3 if (typeof patron == 'undefined') patron = {};
4 patron.search_result = function (params) {
6 JSAN.use('util.error'); this.error = new util.error();
7 JSAN.use('util.network'); this.network = new util.network();
11 patron.search_result.prototype = {
13 'init' : function( params ) {
17 obj.session = params['session'];
18 obj.query = params['query'];
20 JSAN.use('OpenILS.data'); this.OpenILS = {};
21 obj.OpenILS.data = new OpenILS.data(); obj.OpenILS.data.init({'via':'stash'});
23 JSAN.use('util.list'); obj.list = new util.list('patron_list');
24 function getString(s) { return obj.OpenILS.data.entities[s]; }
26 JSAN.use('patron.util');
27 var columns = patron.util.columns(
34 'map_row_to_column' : patron.util.std_map_row_to_column(),
35 'retrieve_row' : function(params) {
36 var id = params.retrieve_id;
37 var patron = patron.util.retrieve_au_via_id( obj.session, id );
40 if (typeof row.my == 'undefined') row.my = {};
47 JSAN.use('util.controller'); obj.controller = new util.controller();
53 function() { alert('Not Yet Implemented'); }
59 if (obj.query) obj.search(obj.query);
62 'search' : function(query) {
64 for (var i in query) {
66 case 'phone': case 'ident':
68 search_hash[ i ] = {};
69 search_hash[ i ].value = query[i];
70 search_hash[i].group = 2;
73 case 'street1': case 'street2': case 'city': case 'state': case 'post_code':
75 search_hash[ i ] = {};
76 search_hash[ i ].value = query[i];
77 search_hash[i].group = 1;
80 case 'family_name': case 'first_given_name': case 'second_given_name': case 'email':
82 search_hash[ i ] = {};
83 search_hash[ i ].value = query[i];
84 search_hash[i].group = 0;
89 var results = this.network.request(
90 api.fm_au_ids_retrieve_via_hash.app,
91 api.fm_au_ids_retrieve_via_hash.method,
92 [ this.session, search_hash ]
94 for (var i = 0; i < results.length; i++) {
95 this.list.append( { 'retrieve_id' : results[i], 'row' : {} } );
98 this.error.sdump('D_ERROR','patron.search_result.search: ' + js2JSON(E));
104 dump('exiting patron/search_result.js\n');