Initial dev repository
[kcls-web.git] / opac / extras / mobile / js / eg / eg_api.js
diff --git a/opac/extras/mobile/js/eg/eg_api.js b/opac/extras/mobile/js/eg/eg_api.js
new file mode 100644 (file)
index 0000000..e76b2dc
--- /dev/null
@@ -0,0 +1,30 @@
+var __hasProp=Object.prototype.hasOwnProperty;
+module("eg.eg_api",imports("eg.fieldmapper","eg.date"),function(n,u){var G,B,f,s,w,H,o,v,q,C,y,D,p,g,I,J,t,E,F,z,A,K;jMod.include("lib.md5");D=0;A=[];K=function(){};t=function(){};f=function(){};y=function(){};s=function(){};z=function(){};E=function(){};C=function(){};B={url:"/osrf-gateway-v1",type:"post",dataType:"json",timeout:6E4,global:true};$.ajaxSetup(B);H=function(){return[f.session.id]};o=function(a){return[a]};v=function(a){return[f.session.id,a]};q=function(a){return[f.session.id,a||
+f.session.user.id]};F=function(a){return[a.search]};p=function(a){return a.payload[0]};g=function(a){return n.fieldmap(p(a))};G=function(a){var b,d,c,e;c={};b=0;for(d=a.length;b<d;b++){e=a[b];c[e.id]=e}return c};I=function(a){return G(g(a))};J=function(a){return G(n.flatten_tree(g(a)))};w={"actor.container.create":{i:function(a){return[f.session.id,"biblio",n.mapfield({cbreb:$.extend({items:null,btype:"bookbag",id:null,name:"",owner:f.session.user.id,pub:false},a)})]},o:p,type:"number",login_required:true},
+"actor.container.full_delete":{i:function(a){return[f.session.id,"biblio",a]},o:p,type:"number",login_required:true},"actor.container.retrieve_by_class":{i:function(a){return[f.session.id,a||f.session.user.id,"biblio","bookbag"]},o:g,login_required:true},"actor.container.flesh":{i:function(a){return[f.session.id,"biblio",a]},o:g,login_required:true},"actor.container.item.create":{i:function(a){return[f.session.id,"biblio",n.mapfield({cbrebi:a})]},o:p,type:"number",login_required:true},"actor.container.item.delete":{i:function(a){return[f.session.id,
+"biblio",a]},o:p,type:"number",login_required:true},"actor.container.update":{i:function(a){return[f.session.id,"biblio",n.mapfield({cbreb:a})]},o:p,type:"number",login_required:true},"actor.org_types.retrieve":{o:I,login_required:false,cache:1440},"actor.org_tree.retrieve":{o:J,login_required:false,cache:1440},"actor.org_tree.descendants.retrieve":{i:function(a){return[a||1]},o:J,login_required:false,cache:1440},"actor.patron.settings.retrieve":{i:q,o:function(a){f.session.settings=a.payload[0];
+return f.session.settings},type:"prefs",login_required:true},"actor.patron.settings.update":{i:function(a){return[f.session.id,f.session.user.id,a]},type:"number",login_required:true},"actor.note.retrieve.all":{i:function(a){return[f.session.id,{patronid:a||f.session.user.id,pub:1}]},login_required:true},"actor.ou_setting.ancestor_default":{i:function(a){return[1,a]},o:p},"actor.user.checked_out":{i:q,login_required:true},"actor.user.checked_out.authoritative":{i:q,login_required:true},"actor.user.checked_out.count":{i:q,
+login_required:true},"actor.user.checked_out.count.authoritative":{i:q,login_required:true},"actor.user.email.update":{i:v,type:"number",login_required:true},"actor.user.password.update":{i:function(a){return[f.session.id,a.new_password,a.old_password]},type:"number",login_required:true},"actor.user.username.update":{i:v,type:"number",login_required:true},"actor.user.fleshed.retrieve":{i:q,o:g,login_required:true},"actor.user.fleshed.retrieve_by_barcode":{i:v,o:g,login_required:true},"actor.user.fines.summary":{i:q,
+o:g,login_required:true},"actor.user.fines.summary.authoritative":{i:q,o:g,login_required:true},"actor.user.transactions.have_charge.fleshed":{i:q,o:function(a){return n.fieldmap($.map(a.payload[0],function(b){return b.transaction}))},login_required:true},"actor.username.exists":{i:v,type:"number",login_required:true},"auth.authenticate.init":{i:o,o:function(a){return f.session.cryptkey=p(a)},login_required:false},"auth.authenticate.complete":{i:function(a){a.password=hex_md5(f.session.cryptkey+hex_md5(a.password));
+return[a]},o:function(a){var b;b=a.payload[0];if(a.status!==undefined&&a.status!==200){f.session.id=0;throw a;}if(b.ilsevent!==undefined&&b.ilsevent!==0){f.session.id=0;throw b;}b=b.payload;f.session.id=b.authtoken;f.session.time=b.authtime;f.session.timeout=u.now()+b.authtime*1E3;$.ajaxSetup($.extend({},B,{beforeSend:function(d){return d.setRequestHeader("X-OILS-Authtoken",f.session.id)}}));z(b.authtime);return b},login_required:false},"auth.session.create":{action:function(a,b,d){return t("auth.authenticate.init",
+d.username).next(function(){return t("auth.authenticate.complete",d)}).next(function(c){return a.call(c)})}},"auth.session.delete":{i:H,o:function(a){$.extend(true,f,D);$.ajaxSetup(B);$().publish("logout_event");z(0);return a.payload[0]},login_required:false},"auth.session.retrieve":{i:H,o:function(a){return f.session.user=g(a)},login_required:true},"auth.authenticate.confirm_the_server":{action:function(a,b,d){return $.ajax({url:"/xul/rel_"+d.client+"/server",type:"get",dataType:"html",success:function(c){return a.call(c)}})}},
+"circ.open_non_cataloged_circulation.user":{i:q},"circ.holds.retrieve":{i:q,o:g,login_required:true},"circ.hold.status.retrieve":{i:v,o:function(a){var b;return(b=Number(a.payload[0]))===1?[1,"Waiting for copy to become available"]:b===2?[2,"Waiting for copy capture"]:b===3?[3,"In transit"]:b===4?[4,"Arrived"]:["-1","Error"]},login_required:true},"circ.holds.create":{i:function(a){a=$.extend({requestor:f.session.user.id,usr:f.session.user.id,hold_type:"T"},a);return[f.session.id,n.mapfield({ahr:a})]},
+o:p,type:"number",login_required:true},"circ.hold.update":{i:function(a){return[f.session.id,n.mapfield({ahr:a})]},o:p,type:"number",login_required:true},"circ.hold.cancel":{i:v,o:p,type:"number",login_required:true},"circ.title_hold.is_possible":{i:function(a){var b;b={titleid:0,hold_type:"T",patronid:f.session.user.id,depth:0,pickup_lib:1};$.extend(b,a);return[f.session.id,b]},o:p,login_required:true},"circ.money.billing.retrieve.all":{i:v,o:g,login_required:true},"circ.retrieve":{i:v,o:g,login_required:true},
+"circ.renew":{i:function(a){return[f.session.id,{patron:f.session.user.id,copyid:a,opac_renewal:1}]},o:function(a){a=a.payload[0];if(a.textcode==="SUCCESS"){a=a.payload;a.circ=n.fieldmap(a.circ);a.copy=n.fieldmap(a.copy);a.record=n.fieldmap(a.record)}return a},login_required:true},"ingest.full.biblio.record.readonly":{i:o},"search.asset.call_number.retrieve":{i:o,o:g,login_required:false,cache:5},"search.asset.copy.retrieve":{i:o,o:g,login_required:false,cache:5},"search.asset.copy.retrieve_by_cn_label":{i:function(a){return[a.id,
+a.cn,a.org_id]},login_required:false,cache:5},"search.asset.copy.fleshed2.find_by_barcode":{i:o,o:g,login_required:false,cache:5},"search.asset.copy.fleshed2.retrieve":{i:o,o:g,login_required:false,cache:5},"search.authority.crossref.batch":{i:function(a){var b;b=[];$.each(a,function(d,c){return $.each(c,function(e){return b.push([d,e])})});return[b]},login_required:false,cache:5},"search.bib_id.by_barcode":{i:o,type:"number",login_required:false,cache:5},"search.biblio.bib_level_map.retrieve.all":{o:g,
+login_required:false,cache:1440},"search.biblio.lit_form_map.retrieve.all":{o:g,login_required:false,cache:1440},"search.biblio.item_form_map.retrieve.all":{o:g,login_required:false,cache:1440},"search.biblio.item_type_map.retrieve.all":{o:g,login_required:false,cache:1440},"search.biblio.audience_map.retrieve.all":{o:g,login_required:false,cache:1440},"search.biblio.isbn":{i:F,type:"search",login_required:false,cache:5},"search.biblio.issn":{i:F,type:"search",login_required:false,cache:5},"search.biblio.marc":{i:function(a){return[{searches:a.search,
+limit:200,org_unit:a.org_unit||1,depth:a.depth||0,sort:a.sort,sort_dir:a.sort_dir},a.limit,a.offset]},type:"search",login_required:false,cache:5},"search.biblio.mods_from_copy":{i:o,o:g,login_required:false,cache:5},"search.biblio.tcn":{i:F,type:"search",login_required:false,cache:5},"search.biblio.multiclass.query":{i:function(a){var b;if((typeof(b=a.item_type)!=="undefined"&&b!==null)==="at")a.item_type=["a","t"];return[a,a.term,1]},o:function(a){a=a.payload[0];a.ids=$.map(a.ids,function(b){return b});
+return a},type:"search",login_required:false,cache:5},"search.biblio.record_entry.slim.retrieve":{i:o,o:g,login_required:false,cache:5},"search.biblio.record.mods_slim.retrieve":{i:o,o:g,login_required:false,cache:5},"search.biblio.metarecord.mods_slim.retrieve":{i:o,o:g,login_required:false,cache:5},"search.biblio.record.copy_count":{i:function(a){return[a.location,a.id]},o:function(a){var b;a=a.payload[0];b={};$.each(a,function(d,c){return b[d]={available:c.available,count:c.count,depth:c.depth,
+org_unit:c.org_unit}});return b},login_required:false,cache:5},"search.biblio.record.html":{i:o,login_required:false,cache:5},"search.biblio.copy_counts.summary.retrieve":{i:o,o:function(a){a=a.payload[0];$.each(a,function(b){return a[b]={org_id:Number(this[0]),callnumber:this[1],available:this[2]}});return a},login_required:false,cache:5},"search.biblio.copy_location_counts.summary.retrieve":{i:function(a){return[a.id,a.org_id,a.depth]},o:function(a){a=a.payload[0];$.each(a,function(b){return a[b]=
+{org_id:Number(this[0]),callnumber:this[1],copylocation:this[2],available:this[3]}});return a},login_required:false,cache:5},"search.callnumber.retrieve":{i:o,o:g,login_required:false,cache:5},"search.callnumber.browse":{i:function(a){return[a.callnumber||"",a.org_id||1,a.size||9,a.offset||0]},o:function(a){$.each(a.payload[0],function(b,d){d.cn=n.fieldmap(d.cn);return d.mods=n.fieldmap(d.mods)});return a.payload[0]},login_required:false,cache:5},"search.config.copy_status.retrieve.all":{o:I,login_required:false,
+cache:1440},"search.metabib.record_to_descriptors":{i:function(a){return[{record:a}]},o:function(a){a=a.payload[0];a.descriptors=n.fieldmap(a.descriptors);return a},login_required:false,cache:5},search:{action:function(a,b,d){var c;b=C()?f.session.settings["opac.hits_per_page"]:10;if((c=d.type)==="advanced"){c="search.biblio.multiclass.query";d=$.extend({offset:0,limit:b},d)}else if(c==="lccn"){c="search.biblio.marc";d={search:[{term:d.term,restrict:[{tag:"010",subfield:"_"}]}],offset:0,limit:b}}else if(c===
+"marc"){c="search.biblio.marc";d=d}else if(c==="isbn"){c="search.biblio.isbn";d=d}else if(c==="issn"){c="search.biblio.issn";d=d}else if(c==="tcn"){c="search.biblio.tcn";d=d}else throw{name:"BadSearch",message:"Unknown search type"};return t(c,d,function(e){return a.call(e)})}},"search.google_books":{cache:1440,login_required:false,action:function(a,b,d){d=d.match(/^\d+/)[0];return $.getJSON("http://books.google.com/books?jscmd=viewapi&bibkeys="+d+"&callback=?",function(c){if(!(c=c[d]))return null;
+c.isbn=d;return a.call(c)})}},"search.google_books_rating":{cache:1440,login_required:false,action:function(a,b,d){return t("search.google_books",d,function(c){c=c.info_url.split("id=")[1].split("&")[0];return $.getJSON("http://www.google.com/books/feeds/volumes/"+c+"?alt=json-in-script&callback=?",function(e){var h;if(!(e=e.entry.gd$rating))return null;h={};$.each(e,function(j,k){return h[j]=Number(k)});return a.call(h)})})}},"search.extras":{cache:1440,login_required:false,action:function(a,b,d){return $.ajax({dataType:"html",
+success:function(c){return a.call(c)},type:"GET",url:"/opac/extras/ac/"+d.type+"/html/"+d.isbn})}},"":{}};K=function(a){var b,d;d=[];b=function(c,e){return d[d.length]=encodeURIComponent(c)+"="+encodeURIComponent(e)};$.each(a,function(c,e){return $.isArray(e)?$.each(e,function(h,j){return b(c,j)}):b(c,$.isFunction(e)?e():e)});return d.join("&")};t=function(a,b,d){var c,e;e=w[a];if(e===undefined){e=[];a=0;for(b=w.length;a<b;a++)(c=w[a])&&e.push(c);return e}c=new Deferred;if(typeof b==="function"){d=
+b;b=null}if(typeof d==="function")c=c.next(d);d=e.action||y;e.cache&&!e.login_required?s(c,a,b):d(c,a,b);return c};y=function(a,b,d){var c;c=w[b];if(c.login_required)if(!(f.session.id&&f.session.timeout>u.now())){$(".login_window").trigger("login_required",[(new Deferred).next(function(){return y(a,b,d)})]);return null}d=typeof c.i==="function"?c.i(d):[];d=$.map(d,function(e){return JSON.stringify(e)});return $.ajax({data:K({service:"open-ils."+b.split(".",1)[0],method:"open-ils."+b,param:d}),success:function(e){var h;
+e.debug&&$().publish("prompt",["Debug",e.debug]);if(e.payload)if(e.payload[0])if(typeof e.payload[0]==="object")if(e.payload[0].ilsevent!==undefined)if(e.payload[0].ilsevent!==0)if(e.payload[0].ilsevent!=="0"){$().publish("prompt",["Server error",e.payload[0]]);a.call(e.payload[0]);E();return null}h={};try{h=c.o?c.o(e):e.payload[0];if(c.type)return h=n.ret_types[c.type](h)}catch(j){j.status&&j.status!==200&&$().publish("prompt",["Client error",j.debug]);return j}finally{a.call(h);E();return null}},
+error:function(e,h,j){e=e.responseText;try{e=JSON.parse(e.replace(',"status','","status')).debug}catch(k){if(k.message!=="JSON.parse")throw k;}a.fail([h,e,j]);return $().publish("prompt",["Network error",e])}})};s=function(){var a,b,d,c;s={};c={};d=u.now();a=function(){var e,h,j,k,i;j=u.now();if(j-d<2E4)return null;d=j;e=[];h=s;for(k in h)if(__hasProp.call(h,k)){i=h[k];i.timestamp+i.expiry<j&&e.push(delete s[k])}return e};b=function(e,h){var j;j=function(k){var i,m,l,r,x;m=[];r=[];if((i=typeof k)===
+"string"||i==="number"||i==="boolean")r.push(String(k));else if(i==="function"||i==="undefined")r.push("undefined");else if(k===null)r.push("null");else{for(x in k)__hasProp.call(k,x)&&m.push(x);m=m.sort();i=0;for(l=m.length;i<l;i++){x=m[i];r.push(x,j(k[x]))}}return r.join("|")};return e+"|"+j(h)};return function(e,h,j){var k,i,m,l;m=w[h];k=m.action||y;l=b(h,j);i=s[l];m=m.cache;m*=6E4;if((typeof i==="undefined"||i===null?undefined:i.timestamp)+m>u.now()){next(function(){return e.call(i.data)});return e}if(c[l]===
+undefined)c[l]=[];c[l].push(e);if(i===false)return e;s[l]=false;m=new Deferred;m.next(function(r){i={timestamp:u.now(),data:r};for(s[l]=i;(c[l]==null?undefined:c[l].length)>0;)c[l].pop().call(i.data);return null}).error(function(r){for(r=r[0];(c[l]==null?undefined:c[l].length)>0;)c[l].pop().fail(r);return delete s[l]});k(m,h,j);a();return e}}();D={session:{cryptkey:null,id:null,time:null,user:{}}};f={};$.extend(true,f,D);z=function(a){var b;b=false;$.each(A,function(){return this.cancel()});A=[];
+if(a<=0)return null;A.push(wait(a).next(function(){if(!b){t("auth.session.delete");return $().publish("display_home")}}));return A.push(wait(a-60).next(function(){return $().publish("prompt",["Your login session","will timeout in 1 minute unless there is activity.",6E4,function(){if(C()){b=true;t("auth.session.retrieve")}return false}])}))};E=function(){if(f.session.id&&f.session.timeout>u.now()){f.session.timeout=u.now()+f.session.time*1E3;return z(f.session.time)}};this.openils=t;this.auth=f;this.logged_in=
+C=function(){if(f.session.id){if(f.session.timeout>u.now())return f.session.id;t("auth.session.delete")}return false};return this});