Repository navigation
Expand file tree
/
Copy pathmin.master.js
More file actions
123 lines (123 loc) · 54.2 KB
/
Copy pathmin.master.js
File metadata and controls
123 lines (123 loc) · 54.2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
var djConfig={parseOnLoad:!0};
(function(){var c=Date,g={},f=!1,d=!1,a="ms",h=function(e){if(isNaN(e))return e;var d=!1;switch(a){case "ms":d=e+"ms";break;case "s":d=e/1E3+"s"}return!1===d?d:f?(e=function(){},e.toString=function(){return d},e):d},e=[],o=function(){console&&console.info&&console.info.apply(console,arguments);if(d){for(var a="",c=0;c!==arguments.length;c++)a+=arguments[c];e.push(a)}};window.Benchmark={start:function(a){g[a]&&delete g[a];g[a]={start:(new c).getTime(),marks:[]}},stop:function(a,e){2>arguments.length&&
(e="complete");var d=g[a];if(d)return d.stop={time:(new c).getTime(),action:e},d=d.stop.time-d.start,o(a," took ",h(d)," to ",e),d},mark:function(a,e){var d=g[e];if(d){var f=(new c).getTime()-d.start;d.marks.push({after:f,what:a});o(a," took ",h(f)," since ",e," started")}},save:function(a){if(d){"undefined"!==typeof dojo&&dojo&&(framework_xhr_get_method=function(a){dojo.xhrGet(a)});if(framework_xhr_get_method){var c=(new Date).toString()+"\n"+e.join("\n"),a="benchmark.php?save="+a+"&log="+encodeURIComponent(c);
framework_xhr_get_method({url:a})}e.length=0}},toString:function(){return"Benchmark()"},setFormat:function(e){switch(e.toLowerCase()){case "s":a="s";break;case "ms":a="ms"}},setFancy:function(a){f=!!a},highlight:function(a){var e=function(){};e.toString=function(){return a};return e}};Benchmark.setFancy(!0);Benchmark.setFormat("ms");Benchmark.start("all scripts");""!==window.location.host&&"localhost"!==window.location.host&&(d=!0)})();Benchmark.start("kit.unra.js");String.empty="";String.type="string";
Number.type="number";Object.type="object";Boolean.type="boolean";Function.type="function";Undefined={type:"undefined"};String.prototype.substr=function(c,g){var f=this.length;if(0===g)return"";var d=this.split(""),a="";0>c&&(c+=f);g||(g=f);0>g&&(g+=f-c);for(f=c;f<c+g&&d[f];f++)a+=d[f];return a};String.splitNoEmpty=function(c,g){for(var f=-1,d=0,a=[];-1!==(d=c.indexOf(g,f+1));)f=c.substr(f+1,d-f-1),f.length&&a.push(f),f=d;f=c.substr(f+1);f.length&&a.push(f);return a};
String.fill=function(c,g){g+="";return c.substr(g.length)+g};Array.isArray=function(c){return"array"===typeof c};Array.cast=function(c){return Array.prototype.slice.call(c)};Array.prototype.str=function(){if(!arguments.length)return this.join("");this.push(Array.prototype.slice.call(arguments).join(""));return this};Array.swap=function(c,g){var f=this[c];this[c]=this[g];this[g]=f};DOM_Event={noBubble:function(c){c.stopPropagation()}};
Object.isPlainObject=function(c){var g=Object.prototype.hasOwnProperty;if(!c||"object"!==typeof c||c.nodeType||c===window)return!1;try{if(c.constructor&&!g.call(c,"constructor")&&!g.call(c.constructor.prototype,"isPrototypeOf"))return!1}catch(f){return!1}for(var d in c);return void 0===d||g.call(c,d)};
Object.extend=function(){var c,g,f,d,a,h=arguments[0]||{},e=1,o=arguments.length,i=!1;"boolean"===typeof h&&(i=h,h=arguments[1]||{},e=2);"object"!==typeof h&&"function"!==typeof h&&(h={});o===e&&(h=this,--e);for(;e<o;e++)if(null!=(c=arguments[e]))for(g in c)f=h[g],d=c[g],h!==d&&(i&&d&&(Object.isPlainObject(d)||(a=Array.isArray(d)))?(a?(a=!1,f=f&&Array.isArray(f)?f:[]):f=f&&Object.isPlainObject(f)?f:{},h[g]=Object.extend(i,f,d)):void 0!==d&&(h[g]=d));return h};
Object.css=function(){var c=/-([a-z]|[0-9])/ig,g=/^-ms-/,f=function(){alert("unable to fetch css value from Object function: not implemented")},d={opacity:{get:function(a,e){if(e){var d=f(a,"opacity");return""===d?"1":d}return a.style.opacity}}},a={fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},h={"float":"styleFloat"},e=function(a,e){return(e+"").toUpperCase()},o=/^([\-+])=([\-+.\de]+)/;return{style:function(i,j,k,l){if(i&&!(3===i.nodeType||8===i.nodeType||
!i.style)){var m,n=j.replace(g,"ms-").replace(c,e),r=i.style,p=d[n],j=h[n]||n;if(void 0!==k){l=typeof k;if("string"===l&&(m=o.exec(k)))k=+(m[1]+1)*+m[2]+parseFloat(f(i,j)),l="number";if(!(null==k||"number"===l&&isNaN(k)))if("number"===l&&!a[n]&&(k+="px"),!p||!("set"in p)||void 0!==(k=p.set(i,k)))try{r[j]=k}catch(s){}}else return p&&"get"in p&&void 0!==(m=p.get(i,!1,l))?m:r[j]}},css:function(a,o,k){var l,m,o=o.replace(g,"ms-").replace(c,e);m=d[o];o=h[o]||o;"cssFloat"===o&&(o="float");if(m&&"get"in
m&&void 0!==(l=m.get(a,!0,k)))return l;if(f)return f(a,o)},swap:function(a,e,d){var c={},f;for(f in e)c[f]=a.style[f],a.style[f]=e[f];d=d.call(a);for(f in e)a.style[f]=c[f];return d}}}();window.$=window.jQuery?window.jQuery:{extend:Object.extend,style:Object.css.style,css:Object.css.css};Function.noop=function(){};Function.retrieve={};Function.memory={};
Function.callback=function(c,g){return typeof g===Undefined.type?function(f){if(Function.memory[c]){var d=Function.memory[c];delete Function.memory[c];return f.apply(null,[d])}return Function.retrieve[c]=f}:function(){var f=g.apply(this,arguments);return Function.retrieve[c]?Function.retrieve[c].apply(null,[f]):Function.memory[c]=f}};Function.reflect=function(c){return c};Function.wrap=function(c,g){return function(){c.apply(g,arguments)}};
(function(){var c={},g={complete_listener:function(f){var d;switch(typeof c[f].data){case Boolean.type:case Number.type:case String.type:case Undefined.type:d=c[f].data;break;default:d=Object.extend(!0,{},c[f].data)}delete c[f].data;return d},get_listener:function(){var f=this.id;return function(d){console.log("id: ",f);if(c[f].data)return d=g.complete_listener(f),c[f].callback.apply(window,[d]);c[f].callback=d}},callback_listener:function(){var f=this.id,d=this.black_box;return function(){console.log("id: ",
f);var a;if("function"===typeof d){if(a=d.apply(this,arguments),c[f].data=a,c[f].callback)return a=g.complete_listener(f),c[f].callback.apply(window,[a])}else c[f].callback.apply(this,arguments)}}};(Function.listener=function(f){c[f]={data:!1,callback:!1};return g.get_listener.apply({id:f})}).prepare_callback=function(f,d){return g.callback_listener.apply({id:f,black_box:d})}})();
(function(){var c=function(f){var d=(new Date).getTime(),a=function(){var c=(new Date).getTime()-d;c>=f&&(a.expired=!0);return c};Object.extend(a,{expired:!1,toString:function(){return"new Timer()"}});return a},g=window.Timer=function(){if(this!==window)return c.apply(this,arguments)};Object.extend(g,{toString:function(){return"Timer()"}})})();Math.degreesToRadians=Math.PI/180;
Math.parseNumber=function(c,g){if(typeof c===Number.type)return c;if(typeof c===Undefined.type)return g;if(typeof c!==String.type)return console.error(["Unable to parse number [",typeof c,"]: "].str(),c),0;var f=parseFloat(c),d=/-?[0-9\.]+(%?|\/)?([0-9\.]+)?/.exec(c);if(null!==d)switch(d[1]){case "%":return f/100*g;case "/":return g*f/parseFloat(d[2])}return isNaN(f)?0:f};Error.param=function(c,g){return"call to "+g.name+" function missing argument: `"+c+"`"};Date.Sunday=1;Date.Monday=2;
Date.Tuesday=4;Date.Wednesday=8;Date.Thursday=16;Date.Friday=32;Date.Saturday=64;Image.download=function(c,g){var f=new Image;f.onload=function(){g.apply(f,[f])};f.src=c};Image.aspectFit=function(c,g,f){var c={x:0,y:0,w:c.naturalWidth,h:c.naturalHeight},d=c.w/c.h;d>g/f?(c.w=g,c.h=c.w/d,c.y=f/2-c.h/2,c.aspect="width"):(c.h=f,c.w=c.h*d,c.x=g/2-c.w/2,c.aspect="height");return c};
DOM_VK_KEY={32:" ",48:")",49:"!",50:"@",51:"#",52:"$",53:"%",54:"^",55:"&",56:"*",57:"(",59:":",65:"A",66:"B",67:"C",68:"D",69:"E",70:"F",71:"G",72:"H",73:"I",74:"J",75:"K",76:"L",77:"M",78:"N",79:"O",80:"P",81:"Q",82:"R",83:"S",84:"T",85:"U",86:"V",87:"W",88:"X",89:"Y",90:"Z",96:"0",97:"1",98:"2",99:"3",100:"4",101:"5",102:"6",103:"7",104:"8",105:"9",106:"*",107:"+",107:"=",108:"|",109:"-",110:".",111:"/",188:"<",190:">",191:"?",192:"~",219:"{",220:"|",221:"}",222:'"'," ":32,")":48,"!":49,"@":50,
"#":51,$:52,"%":53,"^":54,"&":55,"*":56,"(":57,":":59,A:65,B:66,C:67,D:68,E:69,F:70,G:71,H:72,I:73,J:74,K:75,L:76,M:77,N:78,O:79,P:80,Q:81,R:82,S:83,T:84,U:85,V:86,W:87,X:88,Y:89,Z:90,"*":106,"+":107,"=":107,"|":108,"-":109,".":110,"<":188,">":190,"?":191,"~":192,"{":219,"|":220,"}":221,'"':222};
DOM_VK_key={32:" ",48:"0",49:"1",50:"2",51:"3",52:"4",53:"5",54:"6",55:"7",56:"8",57:"9",59:";",65:"a",66:"b",67:"c",68:"d",69:"e",70:"f",71:"g",72:"h",73:"i",74:"j",75:"k",76:"l",77:"m",78:"n",79:"o",80:"p",81:"q",82:"r",83:"s",84:"t",85:"u",86:"v",87:"w",88:"x",89:"y",90:"z",96:"0",97:"1",98:"2",99:"3",100:"4",101:"5",102:"6",103:"7",104:"8",105:"9",106:"*",107:"+",107:"=",108:"|",109:"-",110:".",111:"/",188:",",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'"," ":32,".0":48,".1":49,".2":50,
".3":51,".4":52,".5":53,".6":54,".7":55,".8":56,".9":57,";":59,a:65,b:66,c:67,d:68,e:69,f:70,g:71,h:72,i:73,j:74,k:75,l:76,m:77,n:78,o:79,p:80,q:81,r:82,s:83,t:84,u:85,v:86,w:87,x:88,y:89,z:90,"*":106,"+":107,"=":107,"|":108,"-":109,".":110,",":188,".":190,"/":191,"`":192,"[":219,"\\":220,"]":221,"'":222};
DOM_VK={3:"CANCEL",6:"HELP",8:"BACKSPACE",9:"TAB",12:"CLEAR",13:"RETURN",14:"ENTER",16:"SHIFT",17:"CONTROL",18:"ALT",19:"PAUSE",20:"CAPS_LOCK",27:"ESCAPE",32:"SPACE",33:"PAGE_UP",34:"PAGE_DOWN",35:"END",36:"HOME",37:"LEFT",38:"UP",39:"RIGHT",40:"DOWN",44:"PRINTSCREEN",45:"INSERT",46:"DELETE",48:"0",49:"1",50:"2",51:"3",52:"4",53:"5",54:"6",55:"7",56:"8",57:"9",59:"SEMICOLON",61:"EQUALS",65:"A",66:"B",67:"C",68:"D",69:"E",70:"F",71:"G",72:"H",73:"I",74:"J",75:"K",76:"L",77:"M",78:"N",79:"O",80:"P",
81:"Q",82:"R",83:"S",84:"T",85:"U",86:"V",87:"W",88:"X",89:"Y",90:"Z",93:"CONTEXT_MENU",96:"NUMPAD0",97:"NUMPAD1",98:"NUMPAD2",99:"NUMPAD3",100:"NUMPAD4",101:"NUMPAD5",102:"NUMPAD6",103:"NUMPAD7",104:"NUMPAD8",105:"NUMPAD9",106:"MULTIPLY",106:"*",107:"ADD",107:"=",108:"SEPARATOR",109:"SUBTRACT",110:"DECIMAL",111:"DIVIDE",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",124:"F13",125:"F14",126:"F15",127:"F16",128:"F17",129:"F18",130:"F19",
131:"F20",132:"F21",133:"F22",134:"F23",135:"F24",144:"NUM_LOCK",145:"SCROLL_LOCK",188:"COMMA",190:"PERIOD",191:"SLASH",192:"BACK_QUOTE",219:"OPEN_BRACKET",220:"BACK_SLASH",221:"CLOSE_BRACKET",222:"QUOTE",224:"META",CANCEL:3,HELP:6,BACK_SPACE:8,BACKSPACE:8,TAB:9,CLEAR:12,RETURN:13,ENTER:14,SHIFT:16,CONTROL:17,ALT:18,PAUSE:19,CAPS_LOCK:20,ESCAPE:27,SPACE:32," ":32,PAGE_UP:33,PAGE_DOWN:34,END:35,HOME:36,LEFT:37,UP:38,RIGHT:39,DOWN:40,PRINTSCREEN:44,INSERT:45,DELETE:46,".0":48,".1":49,".2":50,".3":51,
".4":52,".5":53,".6":54,".7":55,".8":56,".9":57,SEMICOLON:59,";":59,EQUALS:61,A:65,B:66,C:67,D:68,E:69,F:70,G:71,H:72,I:73,J:74,K:75,L:76,M:77,N:78,O:79,P:80,Q:81,R:82,S:83,T:84,U:85,V:86,W:87,X:88,Y:89,Z:90,CONTEXT_MENU:93,NUMPAD0:96,NUMPAD1:97,NUMPAD2:98,NUMPAD3:99,NUMPAD4:100,NUMPAD5:101,NUMPAD6:102,NUMPAD7:103,NUMPAD8:104,NUMPAD9:105,MULTIPLY:106,"*":106,ADD:107,"+":107,"=":107,SEPARATOR:108,"|":108,SUBTRACT:109,"-":109,DECIMAL:110,".":110,DIVIDE:111,F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,
F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,F13:124,F14:125,F15:126,F16:127,F17:128,F18:129,F19:130,F20:131,F21:132,F22:133,F23:134,F24:135,NUM_LOCK:144,SCROLL_LOCK:145,COMMA:188,",":188,PERIOD:190,".":190,SLASH:191,"/":191,BACK_QUOTE:192,"`":192,OPEN_BRACKET:219,"[":219,BACK_SLASH:220,"\\":220,CLOSE_BRACKET:221,"]":221,QUOTE:222,"'":222,META:224};Benchmark.stop("kit.unra.js","load");Benchmark.start("util.css.js");
(function(){var c=function(){var a=function(){};$.extend(a,{});return a},g={6:8,7:9,"7.5":10,8:11,9:12,10:13,"10.5":14,11:15,12:16,13:17,"13.5":18,14:19,"14.5":20,15:21,16:22,17:23,18:24,20:26,22:29,24:32,26:35,27:36,28:37,29:38,30:40,32:42,34:45,36:48},f=function(e){if(g[e])return g[e];for(var d=Math.floor(e);0<d&&!g[d];)d-=0.5;for(var c=Math.ceil(e);200>c&&!g[c];)c+=0.5;if(!g[d])return a.error("number too low for conversion: ",e);if(!g[c])return a.error("number too high for conversion: ",e);var f=
g[d];return(e-d)/(c-d)*(g[c]-f)+f},d=function(){var e=null;if(1==arguments.length){var d=arguments[0];switch(typeof d){case "string":a:for(var e=h,c=d.split("."),g=0;g<c.length;g++){var k=c[g];if(e[k])e=e[k];else{a.error(k,' was not found in "',e,'", from "',d,'"');e=!1;break a}}}}if(null===e)return{};if("string"===typeof e){var l=e;if(d=/^(\-?[0-9.]+)([^ ]+)( !important|)$/.exec(l))var m=parseFloat(d[1]),n=d[2],d={pixels:function(a){switch(n){case "%":return m/100*a;case "pt":return f(m)}return m},
toString:function(){return l}};else d=void 0;return d}return e},a={error:function(){var a=Array.cast(arguments);a.unshift("CSS:");console.error.apply(console,a)},warn:function(){var a=Array.cast(arguments);a.unshift("CSS:");console.warn.apply(console,a)}},h=window.CSS=function(){return this!==window?c.apply(this,arguments):d.apply(this,arguments)};$.extend(h,{toString:function(){return"CSS()"}})})();Benchmark.stop("util.css.js","load");Benchmark.start("util.download.js");
(function(){var c=function(){},g={__:{full:0,status:0,length:0}},f={downloads_ready:function(a){a=g[a];a.ready&&a.ready.apply(this,[])}},d=window.Download=function(){var a="__",h=arguments;"string"===typeof arguments[0]&&(a=arguments[0],h=Array.cast(arguments).slice(1),g[a]||(g[a]={full:0,status:0}));for(var e=g[a],o=h.length;o--;){var i=h[o];e.full|=1<<e.length;var j=$.extend({type:"GET"},i);(function(){var c=this.power,h=this.error,g=this.load;j.error=function(a){d.error(a);h.apply(this,arguments)};
j.load=function(){g.apply(this,arguments);e.status=e.status|1<<c;e.status===e.full&&f.downloads_ready(a)}}).apply({power:e.length++,error:j.error?j.error:c,load:j.load?j.load:c});i="xhrGet";"POST"==j.type&&(i="xhrPost");dojo[i].apply(dojo,[j])}var k=a;return{ready:function(a){var e=g[k];e.ready=a;e.status===e.full&&f.downloads_ready(k)}}};$.extend(d,{toString:function(){return"Download()"},error:function(){var a=Array.cast(arguments);a.unshift("Download:");console.error.apply(console,a)},warn:function(){var a=
Array.cast(arguments);a.unshift("Download:");console.warn.apply(console,a)},json:function(a,c){if("string"===typeof a&&"function"===typeof c){var e=a,e=e.replace(/#/g,"%2523"),e=e.replace(/:/g,"%253A"),e=e.replace(/</g,"%253C"),e=e.replace(/>/g,"%253E"),f={url:e,handleAs:"json",error:function(a){d.error('Could not parse JSON from response: "',e,'"');d.error(a)},load:function(a){a.error?(d.warn("error response from: ",id,' ["',this.url,'"]'),d.error(a.error)):a.data?c.apply(e,[a.data]):c.apply(e,[a])}};
return dojo.xhrGet(f)}if(!a.urls)return d.error(Error.param("urls",d.json));var g=0,j=a.urls,k;for(k in j)g+=1,e=j[k],e=e.replace(/%/g,"%2525"),e=e.replace(/#/g,"%2523"),e=e.replace(/:/g,"%253A"),e=e.replace(/</g,"%253C"),e=e.replace(/>/g,"%253E"),j[k]=e;var l=0,m;for(m in a.urls)f={url:a.urls[m],handleAs:"json",error:function(a){d.error("Could not parse JSON from response: ",m,' ["',this.url,'"]');d.error(a)}},function(){var e=this.id;f.load=function(c){c.error?(d.warn("error response from: ",e,
' ["',this.url,'"]'),d.error(c.error)):(c.data?a.each.apply(a,[e,c.data]):a.each.apply(a,[e,c]),l+=1,g===l&&a.ready&&a.ready.apply(a,[l]))}}.apply({id:m}),dojo.xhrGet(f)}})})();Benchmark.stop("util.download.js","load");Benchmark.start("util.input-predictor.js");
(function(){var c=function(){var c=function(d,a){var c=d.target,e="undefined"!==typeof a?a:c.value,f=d.shiftKey?DOM_VK_KEY[d.keyCode]:DOM_VK_key[d.keyCode],g=Math.min(c.selectionStart,c.selectionEnd),c=Math.max(c.selectionStart,c.selectionEnd);if(f)e=e.substr(0,g)+f+e.substr(c);else if(g!==c){if("BACKSPACE"===DOM_VK[d.keyCode]||"DELETE"===DOM_VK[d.keyCode])e=e.substr(0,g)+e.substr(c)}else"BACKSPACE"===DOM_VK[d.keyCode]?e=0===g?e:e.substr(0,g-1)+e.substr(g):"DELETE"===DOM_VK[d.keyCode]&&(e=e.substr(0,
g)+(c===e.length?"":e.substr(g+1)));return e};$.extend(c,{});return c},g=window.InputPredictor=function(){if(this!==window)return c.apply(this,arguments)};$.extend(g,{})})();Benchmark.stop("util.input-predictor.js","load");Benchmark.start("util.threaded-loop.js");
(function(){var c=function(c,d){var a=d.cycleTime||10,g=d.breatheTime||0,e,o,i=0,j=d.data||{},k=d.beforeStart||function(){},l=function(){i=0;o=new Timer(a);c.apply(m,arguments)},m={data:{},runs:function(){return e?(o(),!o.expired):!1},cycle:function(){e&&(i=setTimeout(l,g))},die:function(){e=!1}},n=function(){e=!0;delete m.data;m.data=$.extend(!0,{},j);k.apply(m);m.data.start_time=(new Date).getTime();setTimeout(l,0)};$.extend(n,{setCycleTime:function(e){a=e},setSleepTime:function(a){sleep_time=a},
setLoopData:function(a){j=a},onStart:function(a){k=a},interupt:function(){clearTimeout(i);e=!1},data:function(a){$.extend(!0,m.data,a)},lastResults:function(){return this.data.results||!1}});return n},g=window.ThreadedLoop=function(){if(this!==window)return c.apply(this,arguments)};$.extend(g,{})})();Benchmark.stop("util.threaded-loop.js","load");Benchmark.start("meta.geometry.js");
(function(){var c=esri.geometry,g=c.Point,f=c.Extent,d=c.Polygon,a={wkid:4326},h=new esri.SpatialReference(a),e={wkid:102113};new esri.SpatialReference(e);var o=function(a,e){var d=new Proj4js.Proj("EPSG:4326"),c=new Proj4js.Proj("EPSG:900913"),f=new Proj4js.Point(e,a);Proj4js.transform(d,c,f);return f},i=function(c){var k,l=c.point,i=c.extent,n=c.polygon;l&&(k=new g(l.x,l.y,h));i&&(i instanceof Array?(4===i.length&&("lat-lng"===c.system&&(c=o(i[0],i[1]),i[0]=c.x,i[1]=c.y,c=o(i[2],i[3]),i[2]=c.x,
i[3]=c.y),i.push(h)),k=f.apply({},i)):(i.spatialReference||(i.spatialReference=a),k=f.apply({},[i])));n&&(n.spatialReference=e,k=new d(n));i=function(){return k};$.extend(i,{isMetaGeometry:!0,declaredClass:!0});return i},c=window.Geometry=function(){this!==window&&(instance=i.apply(this,arguments));return instance};$.extend(c,{toString:function(){return"Geometry()"},error:function(){var a=Array.cast(arguments);a.unshift("Geometry:");console.error.apply(console,a)},warn:function(){var a=Array.cast(arguments);
a.unshift("Geometry:");console.warn.apply(console,a)},point:function(a,e){return new Geometry({point:{x:a,y:e}})}})})();Benchmark.stop("meta.geometry.js","load");Benchmark.start("meta.map.js");
(function(){var c,g,f=esri.Graphic,d=esri.layers.GraphicsLayer;new esri.SpatialReference({wkid:4326});var a={" ":new d},h=function(){g=EsriMap.getMap();g.addLayer(a[" "]);var e=function(){};$.extend(e,{setCenter:function(a,e){var d=new Geometry.point(a,e);g.centerAt(d())}});return e},e=window.Map=function(){this!==window&&(c=h.apply(this,arguments));return c};$.extend(e,{toString:function(){return"Map()"},error:function(){var a=Array.cast(arguments);a.unshift("Map:");console.error.apply(console,a)},
warn:function(){var a=Array.cast(arguments);a.unshift("Map:");console.warn.apply(console,a)},clear:function(e){if(arguments.length)a[e].clear();else for(var d in a)a[d].clear()},getLayer:function(e){return a[e]},add:function(e,c,h,k){e.declaredClass||(e=new Geometry(e));e.isMetaGeometry&&(e=e());c.declaredClass||(c=new Symbol(c));c.isMetaSymbol&&(c=c());var l;h?a[h]?l=a[h]:(l=new d,a[h]=l,g.addLayer(l)):l=a[" "];l.add(new f(e,c));if("number"==typeof k)for(e=l.graphics;e.length>k;)l.remove(e[0]);var m=
{layer:l};$.extend(m,{center:function(a){var e=l.graphics[l.graphics.length-1]._extent,d=e.getCenter();if(a){pxw=g.extent.getWidth()/g.width;var c=a.x,f=a.y,a=a.expand;if(c)d.x=d.x-pxw*c;if(f&&typeof f==="string"&&f[f.length-1]=="%")d.y=d.y+g.height*parseFloat(f)*0.01;if(a){g.setExtent(e.expand(a));return m}}g.centerAt(d);return m},fadeOut:function(){var a=1,e=function(){l.setOpacity(a);a=a*0.95*a;a>0.1&&setTimeout(e,30)};e()}});return m}})})();Benchmark.stop("meta.map.js","load");Benchmark.start("meta.symbol.js");
(function(){var c={solid:"STYLE_SOLID",dot:"STYLE_DOT",dash:"STYLE_DASH",dashdot:"STYLE_DASHDOT",dashdotdot:"STYLE_DASHDOTDOT","null":"STYLE_NULL"},g=esri.symbol,f=g.SimpleFillSymbol,d=g.SimpleLineSymbol,a=function(a){if(null!==(a=/^rgb(a?)\((\d+),(\d+),(\d+),?([0-9\.]+)?\)$/.exec(a)))return a[1].length?new dojo.Color([parseInt(a[2]),parseInt(a[3]),parseInt(a[4]),parseFloat(a[5])]):new dojo.Color([parseInt(a[2]),parseInt(a[3]),parseInt(a[4])])},h=function(e){var g,h=e.fill,e=e.stroke,j="solid",k=
new dojo.Color(0,0,0);if(h){switch(typeof h){case "string":k=a(h);break;case "object":h.style&&(j=h.style),h.color&&(k=a(h.color))}j=f[c[j]]}var h="null",l=new dojo.Color([0,0,0]),m=1;if(e){h="solid";switch(typeof e){case "string":l=a(e);break;case "object":if(e.style&&(h=e.style),e.color&&(l=a(e.color)),e.width)m=e.width}h=d[c[h]]}g=new f(j,new d(h,l,m),k);e=function(){return g};$.extend(e,{isMetaSymbol:!0,declaredClass:!0});return e},g=window.Symbol=function(){this!==window&&(instance=h.apply(this,
arguments));return instance};$.extend(g,{toString:function(){return"Symbol()"},error:function(){var a=Array.cast(arguments);a.unshift("Symbol:");console.error.apply(console,a)},warn:function(){var a=Array.cast(arguments);a.unshift("Symbol:");console.warn.apply(console,a)}})})();Benchmark.stop("meta.symbol.js","load");Benchmark.start("class.building.js");
(function(){var c={abrvToBid:{},nameToBid:{},polygon:{}};new Symbol({fill:"rgba(255,0,0,0.3)",stroke:{color:"rgba(255,0,0,0.75)",style:"solid",width:3}});var g=function(d){var a=d.buildingId,f=d.buildingName,e=!1,g=function(){return d};$.extend(g,{id:d.buildingId,getExtent:function(){return c.extents[a]},getName:function(){return c.bidToName[a]},getPolygon:function(d){c.polygon[a]?d.apply(d,[c.polygon[a]]):e=d},toString:function(){return"Building "+buildingid}});c.polygon[a]||Download.json("server/9/query?returnGeometry=true&f=pjson&text="+
f,function(d){c.polygon[a]=d.features[0].geometry;e&&e.apply({},[d.features[0].geometry])});return g},f=window.Building=function(d,a){return this!==window?instance=g.apply(this,arguments):new f({buildingId:d,buildingName:a,buildingAbrv:f.idToAbrv(d)})};$.extend(f,{toString:function(){return"Building()"},error:function(){var d=Array.cast(arguments);d.unshift("Building:");console.error.apply(console,d)},warn:function(){var d=Array.cast(arguments);d.unshift("Building:");console.warn.apply(console,d)},
newCard:function(d){return function(a){Download.json("data/ucsb/facilities.building@(["+d+"]='"+a+"').json",function(d){if(!d.length)return f.error('Query for "',a,'" returned empty result');d=new f(d[0]);new BuildingCard(d)})}},abrvToId:function(d){var a=c.abrvToBid[d];return"undefined"===typeof a?(f.error('building abrv not found: "',d,'"'),!1):a},nameToId:function(d){var a=c.nameToBid[d];return"undefined"===typeof a?(f.error('building name not found: "',d,'"'),!1):a},idToName:function(d){var a=
c.bidToName[d];return"undefined"===typeof a?(f.error("building id not found: ",d,""),!1):a},idToAbrv:function(d){var a=c.abrvToBid,f;for(f in a)if(a[f]==d)return f;return!1}});Download.json({urls:{nameToBid:"data/ucsb/facilities.building#{`buildingName`:`buildingId`}.json",abrvToBid:"data/ucsb/facilities.building#{`buildingAbrv`:`buildingId`}.json",bidToName:"data/ucsb/facilities.building#{`buildingId`:`buildingName`}.json",extents:"data/ucsb/facilities.building#{`buildingId`:[~`ymin`,~`xmin`,~`ymax`,~`xmax`]}.json"},
each:function(d,a){c[d]=a},ready:function(){}})})();Benchmark.stop("class.building.js","load");Benchmark.start("class.contact.js");
(function(){var c=function(c){var d=function(){return c};$.extend(d,{id:c.firstName+" "+c.lastName,fullName:c.firstName+" "+c.lastName});return d},g=window.Contact=function(){this!==window&&(instance=c.apply(this,arguments));return instance};$.extend(g,{toString:function(){return"Contact()"},error:function(){var c=Array.cast(arguments);c.unshift("Contact:");console.error.apply(console,c)},warn:function(){var c=Array.cast(arguments);c.unshift("Contact:");console.warn.apply(console,c)},newCard:function(c){return function(d){Download.json("data/ucsb/directory.people@(["+
c+"]='"+d+"').json",function(a){if(!a.length)return g.error('Query for "',d,'" returned empty result');a=new Contact(a[0]);new ContactCard(a)})}}})})();Benchmark.stop("class.contact.js","load");Benchmark.start("class.department.js");(function(){var c=function(){var c=function(){};$.extend(c,{});return c},g=window.Department=function(){if(this!==window)return c.apply(this,arguments)};$.extend(g,{newCard:function(c){new DepartmentCard(c)},toString:function(){return"Department()"}})})();
Benchmark.stop("class.department.js","load");Benchmark.start("class.location.js");
(function(){var c=/^\s*([a-z][^\s]*)[\s\-\.\:]*$/i,g=/^\s*([0-9][^\s]*)[\s\-\.\:]*$/i,f=/^([a-z].*)[\s\-\.\:]+(\d\w+)$/i,d=/^([0-9].*)[\s\-\.\:]+(\d\w+)$/i,a=/^(\d\w+)[\s\-\.\:]+([a-z].*)$/i,h=function(h){var i=!0,j,k,l,m;if(null!==(m=c.exec(h)))j=m[1];else if(null!==(m=g.exec(h)))k=m[1];else if(null!==(m=f.exec(h)))j=m[1],l=m[2];else if(null!==(m=a.exec(h)))l=m[1],j=m[2];else if(null!==(m=d.exec(h)))k=m[1],l=m[2];j?(k=Building.abrvToId(j.toUpperCase()))?(j=Building.idToName(k),j||(e.warn("could not resolved building id: ",
k),i=!1)):(k=Building.nameToId(j),k||(k=Building.nameToId(j+" Hall"),k||(e.warn('could not resolve building "',j,'"'),i=!1))):(j=Building.idToName(k),j||(e.warn("could not resolved building id: ",k),i=!1));var n=function(){};$.extend(n,{isLocation:!0,resolved:i,isRoom:l&&!!l.length,getRoom:function(){return Room(k,l)},execute:function(){if(n.isRoom){var a=Room(k,l);return new RoomCard(a)}if(i){a=Building(k,j);return new BuildingCard(a)}},toString:function(){return l.length?j+" "+l:i?j:h}});return n},
e=window.Location=function(){this!==window&&(instance=h.apply(this,arguments));return instance};$.extend(e,{toString:function(){return"Location()"},error:function(){var a=Array.cast(arguments);a.unshift("Location:");console.error.apply(console,a)},warn:function(){var a=Array.cast(arguments);a.unshift("Location:");console.warn.apply(console,a)}})})();Benchmark.stop("class.location.js","load");Benchmark.start("class.reference.js");
(function(){var c=function(d,a,c){c||(c="div");$.extend({title:"","class":""},d);return dojo.create(c,{"class":d.class,innerHTML:d.title+a})},g=function(){var d=function(){};$.extend(d,{isReference:!0});return d},f=window.Reference=function(){if(this!==window)return g.apply(this,arguments)};$.extend(f,{administration:function(d){var a=g.apply(this,arguments);a.build=function(a){for(var e="",f=d.length;f--;)var g=d[f],e=e+('<div><button link="'+g.firstName+" "+g.lastName+'">'+g.title+"</button></div>");
a=c(a,e);dojo.query("button",a).forEach(function(a){dojo.connect(a,"click",function(e){e.stopPropagation();new ContactCard(dojo.attr(a,"link"))})});return a};return a},building:function(d){var a=g.apply(this,arguments);a.build=function(a){var e;e="<button>"+(new Building(d)).getName()+"</button>";a=c(a,e);dojo.query("button",a).forEach(function(a){dojo.connect(a,"click",function(a){a.stopPropagation();new BuildingCard(d)})});return a};return a},contact:function(d,a){var f=g.apply(this,arguments);
f.build=function(e){var f,g=d.length;if(g){for(f=[];g--;){var h=d[g];f.push('<button link="'+h+'">'+h+"</button>")}f=f.join("")}else f=a;e=c(e,f);dojo.query("button",e).forEach(function(a){dojo.connect(a,"click",function(e){e.stopPropagation();new ContactCard(dojo.attr(a,"link"))})});return e};return f},course:function(d){var a=g.apply(this,arguments);a.build=function(a){var e,f=d.length;for(e=[];f--;){var g=d[f];e.push('<button link="'+g+'">'+g+"</button>")}e=e.join("");a=c(a,e);dojo.query("button",
a).forEach(function(a){dojo.connect(a,"click",function(e){e.stopPropagation();new LectureCard(dojo.attr(a,"link"))})});return a};return a},department:function(d){var a=g.apply(this,arguments);a.build=function(a){a=c(a,'<button link="'+d+'">'+d+"</button>");dojo.connect(a,"click",function(a){a.stopPropagation();new DepartmentCard(d)});return a};return a},email:function(d){var a=g.apply(this,arguments);a.build=function(a){a=c(a,'<a href="mailto:'+d+'">'+d+"</a>");dojo.connect(a,"click",DOM_Event.noBubble);
return a};return a},location:function(d){var a=new Location(d);a.resolved||f.warn("could not create reference to unknown location");var h=g.apply(this,arguments);h.build=function(e){e=c(e,"<button>"+a.toString()+"</button>");dojo.connect(dojo.query("button",e)[0],"click",function(e){e.stopPropagation();a.execute()});return e};return h},website:function(d){var a=g.apply(this,arguments);a.build=function(a){a=c(a,'<a href="'+d+'">'+d+"</a>");dojo.connect(a,"click",DOM_Event.noBubble);return a};return a},
widget:function(d,a){var f=g.apply(this,arguments);f.build=function(e){var f="<button>"+e.title+"</button>";e.title="";e=c(e,f);dojo.connect(e,"click",function(e){e.stopPropagation();console.info(d,a)});return e};return f},toString:function(){return"Reference()"}})})();Benchmark.stop("class.reference.js","load");Benchmark.start("class.room.js");
(function(){var c={abrvToBid:{},nameToBid:{},polygon:{}},g=!1,f=function(a){g||d.warn("data has finished downloading yet");var f=a.buildingId,e=a.roomNumber,o=Building.idToName(f);if(!c.extents[f])return d.error("could not find building-id: ",f);if(!c.extents[f][e])return d.error('could not find room "',e,'" in building: ',f);var i=function(){return a};$.extend(i,{id:a.buildingId+";"+e,title:o,subtitle:"room "+e,getExtent:function(a){if(!a)return d.error("must hand getExtent() a callback function");
a.apply(a,[c.extents[f][e]])},toString:function(){return"Room:"+f+"-"+e}});return i},d=window.Room=function(a,c){return this!==window?instance=f.apply(this,arguments):new d({buildingId:a,roomNumber:c})};$.extend(d,{toString:function(){return"Room()"},error:function(){var a=Array.cast(arguments);a.unshift("Room:");console.error.apply(console,a)},warn:function(){var a=Array.cast(arguments);a.unshift("Room:");console.warn.apply(console,a)},newCard:function(a,c){var e=d(a,c);e&&e.exists&&new RoomCard(e)},
highlight:new Symbol({fill:"rgba(255,255,0,0.3)",stroke:{color:"rgba(255,0,0,0.75)",style:"solid",width:2}})});Download.json({urls:{extents:"data/ucsb/facilities.room#{`buildingId`:{`roomNumber`:[~`ymin`,~`xmin`,~`ymax`,~`xmax`]}}.json"},each:function(a,d){c[a]=d},ready:function(){g=!0}})})();Benchmark.stop("class.room.js","load");Benchmark.start("gui.card.deck.js");
(function(){var c={},g=function(d,a){var c=0,e=!1,g=[],i=-1,j=function(){};$.extend(j,{add:function(e){-1!==i&&g[i].isOpen()&&j.fold(i);i=g.push(e)-1;e.index=i;e=e.getElement();j.ztop(e);a.appendChild(e);j.draw(i)},fold:function(a){var d=g[a],c=d.getElement();dojo.addClass(c,"card_deckview");$.style(c,"margin-top",36*a+-100+"px");d.fold();j.ztop(c);d.click(function(){this.unbind();j.draw(this.getIndex())});setTimeout(function(){d.isOpen()||dojo.addClass(c,"settled")},600);e=!1;d.onFold()},draw:function(a){if("number"!==
typeof a)return f.error("draw method requires index argument to be integer");(0>a||a>g.length)&&f.error(a," is out of bounds for ",g);e&&j.fold(i);var d=g[a],c=d.getElement();d.open();d.index=j.pull(a);dojo.removeClass(c,"card_deckview");dojo.removeClass(c,"settled");$.style(c,"margin-top","0");d.click(function(){this.unbind();j.fold(this.getIndex())});e=!0;d.onDraw()},swap:function(a,e){Array.swap.apply(g,[a,e])},pull:function(a){for(g.push(g.splice(a,1)[0]);a<i;a++){g[a].index=a;var e=g[a].getElement();
$.style(e,"margin-top",parseInt($.style(e,"margin-top"))-36+"px");dojo.removeClass(e,"settled");setTimeout(function(){var a=this.card_dom;return function(){dojo.addClass(a,"settled")}}.apply({card_dom:e}),600)}j.ztop(g[i].getElement());return i},ztop:function(a){a.style.zIndex=2048+c++},discard:function(){},close:function(){},spread:function(){},toggle:function(){},usort:function(){}});return j},f=window.CardDeck=function(d){if(this!==window){var a=g.apply(this,arguments);return c[d]=a}if(c[d])return c[d];
f.error(d," not found as entry")};$.extend(f,{toString:function(){return"CardDeck()"},error:function(){var d=Array.cast(arguments);d.unshift("CardDeck:");console.error.apply(console,d)}})})();Benchmark.stop("gui.card.deck.js","load");Benchmark.start("gui.card.js");var DomEventControl=function(c){return{unbind:function(){dojo.disconnect(c)}}};
(function(){var c={},g=0,f=function(a,c){var e={id:g,viewStatus:d.OPEN,dom:dojo.create("div",{id:"card-"+g,"class":"card-container",innerHTML:'<div id="card_'+g+'" class="card"><div class="card-header"><div class="card-icon"></div><span class="card-title"></span><span class="card-subtitle"></span></div><div class="card-header-separator"></div><div class="card-timeline"><div class="card-timeline-days"></div><div class="card-timeline-times"></div></div><div class="card-references"></div><div class="card-header-separator"></div><div class="card-content-image" style="display:none;"></div><div class="card-content"></div></div>'}),
eventListeners:{click:!1}};g+=1;var f={controlBinding:function(a){return{getIndex:function(){return i.index},unbind:function(){dojo.disconnect(e.eventListeners[a]);e.eventListeners[a]=!1}}}},i=function(){};$.extend(i,{index:-1,onDraw:function(){d.warn("onDraw meant to be over-ridden by extending subclass")},onFold:function(){d.warn("onFold meant to be over-ridden by extending subclass")},isOpen:function(){return e.viewStatus==d.OPEN},open:function(){e.viewStatus=d.OPEN},fold:function(){e.viewStatus=
d.FOLDED},getElement:function(){return e.dom},getContainer:function(){return e.dom.parentNode},setup:function(a){var c=d.widget,f;for(f in a){var g=c[f];g?g.apply(e,[a[f]]):"function"!==typeof a[f]?d.error('widget not found: "',f,'"'):a[f].apply(e,[])}},click:function(a){e.eventListeners.click&&(dojo.disconnect(e.eventListeners.click),e.eventListeners.click=!1);e.eventListeners.click=dojo.connect(e.dom.firstChild,"onclick",function(){a.apply(f.controlBinding("click"),arguments)})},toString:function(){return"Card: "+
a}});i.setup(c);return i},d=window.Card=function(a){if(this!==window){var d=f.apply(this,arguments);return c[a]?c[a]:c[a]=d}};$.extend(d,{OPEN:0,FOLDED:1,toString:function(){return"Card()"},warn:function(){var a=Array.cast(arguments);a.unshift("Card:");console.warn.apply(console,a)},error:function(){var a=Array.cast(arguments);a.unshift("Card:");console.error.apply(console,a)},widget:{title:function(a){var d=dojo.query(".card-header>.card-title",this.dom)[0];dojo.place('<span class="card-title">'+
a+"</span>",d,"replace")},subtitle:function(a){var d=dojo.query(".card-header>.card-subtitle",this.dom)[0];dojo.place('<span class="card-subtitle">'+a+"</span>",d,"replace")},icon:function(a){var d=dojo.query(".card-icon",this.dom)[0];dojo.place('<img src="'+a+'" height="40px"></img>',d,"last")},days:function(a){for(var d=dojo.query(".card-timeline>.card-timeline-days",this.dom)[0],e={S:!1,M:!1,T:!1,W:!1,R:!1,F:!1,A:!1},c=a.length,f=0;f<c;f++)e[a[f].toUpperCase()]=!0;var a="",g;for(g in e)a+=e[g]?
'<span class="day-on">'+g+"</span>":"<span>"+g+"</span>";dojo.place('<span class="card-timeline-days"><div class="days-row">'+a+"</div></span>",d,"replace")},times:function(a){var d,e,c,f,g,k,l=dojo.query(".card-timeline>.card-timeline-times",this.dom)[0];"string"===typeof a&&(c=/(\d+):(\d+)\s*([ap]m)\s*[\-]\s*(\d+):(\d+)\s*([ap]m)/i.exec(a),f=parseInt(c[1]),g=parseInt(c[2]),k=c[3].toLowerCase(),d=parseInt(c[4]),e=parseInt(c[5]),c=c[6].toLowerCase());var a="",m=(60*(f+("pm"===k?12:0)-8)+g)/780,n,
m=100*m;n=100*((60*(d+("pm"===c?12:0)-8)+e)/780);f=""+('<span style="left:'+(m-5)+'%; position:inherit;" class="time-block">')+('<span style="left:'+m+'%;" class="time-start">'+f+":"+String.fill("00",g)+" "+k+"-</span>");f+='<span style="left:'+n+'%;" class="time-end">'+d+":"+String.fill("00",e)+" "+c+"</span>";dojo.place('<span class="card-timeline-times"><div class="times-row">'+(f+"</span>")+'</div><div class="blocks-row">'+(a+('<span style="left:'+m+"%; width:"+(n-m)+'%"></span>'))+"</div></span>",
l,"replace")},content:function(a){var d=dojo.query(".card-content",this.dom)[0],e;for(e in a){var c=a[e];switch(typeof c){case "string":dojo.place('<div><span class="card-content-item">'+e+': </span><span class="card-content-text">'+c+"</span></div>",d,"last");break;case "function":case "object":c.isReference&&dojo.place(c.build({title:e+": ","class":"card-content-"+e.toLowerCase().replace(/[^\w]/g,"_")}),d,"last")}}},references:function(a){var c=dojo.query(".card-references",this.dom)[0],e;for(e in a){var f=
a[e];f.isReference?(b=f.build({title:e+": ","class":"card-reference-"+e.toLowerCase().replace(/[^\w]/g,"-")}),dojo.place(b,c,"last")):d.warn('"',e,'" item is not a reference object: ',f)}},image:function(a){var d=dojo.query(".card-content-image",this.dom)[0];d.style.display="block";a.google&&!a.google.demo?GoogleImageSearch(a.google.args[0],function(a){dojo.place('<img src="'+a+'" style="max-width:320px; max-height:200px;"/>',d)}):a.url&&dojo.place('<img src="'+a.url+'" style="max-width:320px; max-height:200px;"/>',
d)}}})})();Benchmark.stop("gui.card.js","load");Benchmark.start("gui.card.type.building.js");
(function(){var c=new Symbol({fill:"rgba(255,0,0,0.3)",stroke:{color:"rgba(255,0,0,0.75)",style:"solid",width:3}}),g=function(d){var a=new Card("building:"+d.id);if(-1!==a.index)CardDeck("stack").draw(a.index);else{var f=d();a.setup({title:f.buildingName,subtitle:f.buildingAbrv,icon:"resource/card.icon.building.png",content:{}});$.extend(a,{onDraw:function(){d.getPolygon(function(a){Map.add({polygon:a},c,"highlight",1).center({x:0.35*-CSS("cardDeck.info.width").pixels(dojo.position(document.body).w),
y:"-1%",expand:5})})},onFold:function(){Map.clear("highlight")}});CardDeck("stack").add(a);return a}},f=window.BuildingCard=function(){this!==window&&(instance=g.apply(this,arguments));return instance};$.extend(f,{toString:function(){return"BuildingCard()"},error:function(){var d=Array.cast(arguments);d.unshift("BuildingCard:");console.error.apply(console,d)},warn:function(){var d=Array.cast(arguments);d.unshift("BuildingCard:");console.warn.apply(console,d)}})})();
Benchmark.stop("gui.card.type.building.js","load");Benchmark.start("gui.card.type.contact.js");
(function(){var c=function(c){var d=new Card("contact:"+c.id);if(-1!==d.index)CardDeck("stack").draw(d.index);else{var a=c(),g={},e=new Location(a.location);a.instructs.length&&(g.Instructs=new Reference.course(String.splitNoEmpty(a.instructs)));a.location.length&&(g.Office=new Reference.location(a.location));d.setup({title:c.fullName,subtitle:a.title,icon:"resource/card.icon.contact.png",content:{Department:new Reference.department(a.department),Title:a.title,Email:new Reference.email(a.email)},
references:g});$.extend(d,{onDraw:function(){e.resolved&&e.isRoom&&e.getRoom().getExtent(function(a){Map.add({extent:a,system:"lat-lng"},Room.highlight,"highlight",1).center({expand:2})})},onFold:function(){}});CardDeck("stack").add(d);return d}},g=window.ContactCard=function(){this!==window&&(instance=c.apply(this,arguments));return instance};$.extend(g,{toString:function(){return"ContactCard()"},error:function(){var c=Array.cast(arguments);c.unshift("ContactCard:");console.error.apply(console,c)},
warn:function(){var c=Array.cast(arguments);c.unshift("ContactCard:");console.warn.apply(console,c)}})})();Benchmark.stop("gui.card.type.contact.js","load");Benchmark.start("gui.card.type.room.js");
(function(){var c=Room.highlight,g=function(d){var a=new Card("room:"+d.id);if(-1!==a.index)CardDeck("stack").draw(a.index);else return d(),a.setup({title:d.title,subtitle:d.subtitle,icon:"resource/card.icon.room.png",content:{}}),$.extend(a,{onDraw:function(){d.getExtent(function(a){Map.add({extent:a,system:"lat-lng"},c,"highlight",1).center({x:0.35*-CSS("cardDeck.info.width").pixels(dojo.position(document.body).w),y:"-1%",expand:2})})},onFold:function(){Map.clear("highlight")}}),CardDeck("stack").add(a),
a},f=window.RoomCard=function(){this!==window&&(instance=g.apply(this,arguments));return instance};$.extend(f,{toString:function(){return"RoomCard()"},error:function(){var d=Array.cast(arguments);d.unshift("RoomCard:");console.error.apply(console,d)},warn:function(){var d=Array.cast(arguments);d.unshift("RoomCard:");console.warn.apply(console,d)}})})();Benchmark.stop("gui.card.type.room.js","load");Benchmark.start("gui.card.types.js");
(function(){var c=function(c){var d=new Card("course:"+c);console.log(d.index);if(-1!==d.index)CardDeck("stack").draw(d.index);else{var a=!1,h=!1;Download.json("data/ucsb/registrar.lecture@(`courseTitle`='courseTitle').json",function(e){a=e[0];d.setup({title:a.courseTitle,subtitle:a.fullTitle,icon:"resource/card.icon.course.gif",references:{Instructor:new Reference.contact(String.splitNoEmpty(a.people,";"),a.instructor),Location:new Reference.location(a.location)},content:{Description:a.description,
Days:a.days,Time:a.time},days:a.days,times:a.time});if(d.isOpen()&&h)d.onDraw()});$.extend(d,{onDraw:function(){if(a){var d=RoomLocator.search(a.location);d&&d.exists?EsriMap.focus(d):g.error("unable to resolve location: ",a.location)}else h=!0,g.warn("lecture data not downloaded yet")}});CardDeck("stack").add(d);return d}},g=window.LectureCard=function(){if(this!==window)return c.apply(this,arguments)};$.extend(g,{toString:function(){return"LectureCard()"},warn:function(){var c=Array.cast(arguments);
c.unshift("LectureCard: ");console.warn.apply(console,c)},error:function(){var c=Array.cast(arguments);c.unshift("LectureCard: ");console.error.apply(console,c)}})})();
(function(){var c=function(c){var d=new Card("department:"+c);if(-1!==d.index)CardDeck("stack").draw(d.index);else return Download.json("data/ucsb/directory.department@(`departmentName`='"+c+"').json",function(a){dept=a[0];a={Website:new Reference.website(dept.website)};dept.abrv&&(a["Advisor Office"]=new Reference.location(dept.location),a[c+" courses"]=new Reference.widget("edu.ucsb.geog.icm-widget.courses",{department:dept.abrv}),a[c+" instructors"]=new Reference.widget("edu.ucsb.geog.icm-widget.courses",
{instructor:{department:dept.abrv}}));d.setup({title:dept.departmentName,subtitle:dept.abrv,icon:"resource/card.icon.department.png",content:a});d.isOpen()}),Download.json("data/ucsb/directory.people@(`mined`='commserv',`department`='"+c+"').json",function(a){a={Administration:new Reference.administration(a)};d.setup({references:a})}),$.extend(d,{onDraw:function(){}}),CardDeck("stack").add(d),d},g=window.DepartmentCard=function(){if(this!==window)return c.apply(this,arguments)};$.extend(g,{toString:function(){return"DepartmentCard()"},
warn:function(){var c=Array.cast(arguments);c.unshift("DepartmentCard: ");console.warn.apply(console,c)},error:function(){var c=Array.cast(arguments);c.unshift("DepartmentCard: ");console.error.apply(console,c)}})})();Benchmark.stop("gui.card.types.js","load");Benchmark.start("gui.omnibox.js");
(function(){var c=!1,g,f=function(a){a=dojo.query(a);a.length||d.error('"',a,'" selector returned empty set');var a=a[0],c=dojo.query("input",a);c.length||d.error("element does not contain an input node: ",a);var c=c[0],e="",f=new InputPredictor,i=new SearchItems,j={search:function(){var a=!e.length,c=a?"none":"block";dojo.query(".omnibox-results-containers").forEach(function(a){a.style.display=c});a||k()},keyup:function(a){a.target.value!=e&&(console.warn('prediction of "'+e+'" failed: "'+a.target.value+
'"'),k.interupt(),e=a.target.value,j.search())},keydown:function(a){k.interupt();13==a.keyCode?(a=dojo.attr(dojo.byId("omnibox-results").childNodes[0],"link"))?i.lookup(a):SearchQuery(e,function(a){a.isLocation&&a.execute()}):(a=f(a),a!==e&&(e=a,j.search()))},handle_results:function(a){for(var c=0,d='<div id="omnibox-results" class="omnibox-results-containers">',f=0;f<=a.max;f++)if(a[f])for(var g=a[f],h=g.length;h--;)var k=g[h],o=i.get(k),q=o.string,q=q?q.substr(0,f)+"<b>"+q.substr(f,e.length)+"</b>"+
q.substr(f+e.length):"",d=d+('<div class="search-result" link="'+k+'"><span class="title">'+q+'</span><span class="class">'+o.classTitle+"</span></div>"),c=c+1;0==c&&(d+='<div class="search-result"><span class="title"></span><span class="class">press enter to search</span></div>',c=1);dojo.place(d+"</div>","omnibox-results","replace");c*=20;200<c&&(c=200);dojo.byId("omnibox-results").style.height=c+"px";d=CSS("header.space.y").pixels()-(CSS("omnibox.top").pixels()+CSS("omnibox.space.y").pixels());
c=Math.max(0,c-d);dojo.byId("omnibox-results-shadow").style.height=c+"px";dojo.byId("omnibox-results-shadow").style.display=0==c?"none":"block";j.bind_actions(a)},bind_actions:function(){setTimeout(function(){var a=new Timer;dojo.query(".search-result").forEach(function(a){dojo.connect(a,"onclick",function(){i.lookup(dojo.attr(this,"link"))})});console.info(d,": binding took "+a()+"ms")},0)}},k=new ThreadedLoop(g,{cycleTime:10,breatheTime:0,data:{cycles:0,index:0,major:0,power:0,items:{},tiers:{max:0},
text:"",handler:j.handle_results,dataManager:i},beforeStart:function(){this.data.text=e;this.data.items=i.items(0)}}),a=function(){};$.extend(a,{});dojo.connect(c,"onkeyup",j.keyup);dojo.connect(c,"onkeydown",j.keydown);dojo.connect(document,"onkeydown",function(){c.focus()});dojo.connect(document,"click",function(){});return a},d=window.Omnibox=function(){this!==window&&(c=f.apply(this,arguments));return c};$.extend(d,{toString:function(){return"Omnibox()"},error:function(){var a=Array.cast(arguments);
a.unshift("Omnibox:");console.error.apply(console,a)},warn:function(){var a=Array.cast(arguments);a.unshift("Omnibox:");console.warn.apply(console,a)}});g=function(){var a=this.data;a.cycles+=1;for(var c=a.index,e=a.major,f=a.power,g=a.items,j=a.tiers,k=a.dataManager,l=a.text.replace(".","\\."),m=RegExp("^"+l,"i"),l=RegExp("[ \\.\\-_]"+l,"i");this.runs();){var n=g[c],r;if(r=m.exec(n))n=r.index,j[n]||(j[n]=[]),j[n].push(f+c),n>j.max&&(j.max=n);else if(n=l.exec(n))n=n.index+1,j[n]||(j[n]=[]),j[n].push(f+
c),n>j.max&&(j.max=n);c+=1;if(c===g.length){c=0;do{e+=1;if(e===k.size())return console.info(d,": search took ",a.cycles," cycles in ",Benchmark.highlight((new Date).getTime()-a.start_time+"ms")),a.handler(j),this.die();f=k.power(e);g=k.items(e)}while(!g.length)}}a.index=c;a.major=e;a.power=f;a.items=g;a.tiers=j;this.cycle()}})();Benchmark.stop("gui.omnibox.js","load");Benchmark.start("define.esri-map.js");
window.UCSB_Campus_earth={basemap:{url:"http://earth.geog.ucsb.edu/ArcGIS/rest/services/icmBaseMap/MapServer"},extent:{xmin:-119.861,ymin:34.40856,xmax:-119.83553,ymax:34.41913,spatialReference:{wkid:42306}}};window.UCSB_Campus_ags2={basemap:{url:"http://ags2.geog.ucsb.edu/ArcGIS/rest/services/icmBaseMap20120413/MapServer"},extent:{xmin:-13342700,ymin:4084100,xmax:-13339988,ymax:4084700,spatialReference:{wkid:102100}}};
window.UCSB_Campus_map={basemap:{url:"http://map.geog.ucsb.edu:8080/arcgis/rest/services/icm/basemap/MapServer"},extent:{xmin:-13342700,ymin:4084100,xmax:-13339988,ymax:4084700,spatialReference:{wkid:102100}}};window.DefaultPackage=UCSB_Campus_map;
(function(){var c=!1,g=!1,f=[],d=new esri.SpatialReference({wkid:4326}),a=new esri.layers.GraphicsLayer,h=window.EsriMap=function(d){Benchmark.start(h);c=dojo.byId("map");$.style(c,"width",dojo.position(document.body).w-CSS("widgetMenu.space.x").pixels());$.style(c,"height",dojo.position(document.body).h-CSS("header.space.y").pixels());g=new esri.Map("map",{extent:new esri.geometry.Extent(d.extent)});h.server=d.basemap.url;g.addLayer(new esri.layers.ArcGISTiledMapServiceLayer(d.basemap.url));g.addLayer(a);
for(d=f.length;d--;)f.pop().apply(g,[c]);dojo.connect(g,"onLoad",function(){Benchmark.mark("map load",h);Benchmark.mark("map load","script");Benchmark.save("load");dojo.connect(c,"resize",g,g.resize)})};$.extend(h,{toString:function(){return"EsriMap()"},getMap:function(){return g},getDOM:function(){return c},ready:function(a){f.push(a)},setCenter:function(a){console.log(a);a=new esri.geometry.Point(a.x,a.y,d);g.centerAt(a)},focus:function(c){h.setCenter(c.getPoint());c=c.getExtent();new esri.geometry.Extent(c[0],
c[1],c[2],c[3],d);var f=new esri.symbol.SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_SOLID,new dojo.Color([255,215,0,1]),3),f=new esri.symbol.SimpleFillSymbol(esri.symbol.SimpleFillSymbol.STYLE_SOLID,f,new dojo.Color([255,215,0,0.5])),c=new esri.Graphic(c,f);a.add(c);g.addLayer(a)}})})();Benchmark.stop("define.esri-map.js","load");Benchmark.start("define.search-items.js");
(function(){var c=!1,g={Building:{url:"data/ucsb/facilities.building#<[`buildingName`].json",select:Building.newCard("`buildingName`")},Department:{url:"data/ucsb/directory.department.academic#<[`departmentName`].json",select:Department.newCard},"Undergrad Lecture":{url:"data/ucsb/registrar.lecture.undergrad#<[`courseTitle` - `fullTitle`]$.json",select:function(){}},"Graduate Lecture":{url:"data/ucsb/registrar.lecture.graduate#<[`courseTitle` - `fullTitle`]$.json",select:function(){}},Contact:{url:"data/ucsb/directory.people#<[`firstName` `lastName`].json",
select:Contact.newCard("`firstName` `lastName`")}},f=function(){var a={},c=0,d={expand:function(c){var d=0,e=0,f;for(f in a){d+=a[f].data.length;if(c<d)return{major:parseInt(f),minor:c-e};e=d}return console.error("SearchItems(): index out of bounds, "+c)}},f=function(){};$.extend(f,{items:function(c){return a[c].data},size:function(){return c},power:function(c){var d=0,e;for(e in a){if(!c--)break;d+=a[e].data.length}return d},get:function(c){var d=0,e=0,f;for(f in a){d+=a[f].data.length;if(c<d)return{string:a[f].data[c-
e],classTitle:a[f].title};e=d}return console.error("SearchItems(): index out of bounds, "+c)},lookup:function(c){var f=d.expand(c),c=a[f.major],f=c.data[f.minor];c.select.apply(c.select,[f.replace("'","\\'")]);return f},expose:function(){return a},expand:function(a){return d.expand(a)}});var i={},j;for(j in g)i[j]=g[j].url;Download.json({urls:i,each:function(d,e){var f=c++;a[f]={data:e,title:d,select:g[d].select}},ready:function(){console.info("Search Items finished downloading")}});return f},d=window.SearchItems=
function(){this!==window&&(c=f.apply(this,arguments));return c};$.extend(d,{toString:function(){return"SearchItems()"},error:function(){var a=Array.cast(arguments);a.unshift("SearchItems:");console.error.apply(console,a)},warn:function(){var a=Array.cast(arguments);a.unshift("SearchItems:");console.warn.apply(console,a)}})})();Benchmark.stop("define.search-items.js","load");Benchmark.start("service.search-query.js");
(function(){var c=!1,g={},f=function(a,d){var e=!1,f=new Location(a);f.resolved&&(e=f);f=function(){};$.extend(f,{callback:function(){e&&d.apply(d,[e])}});e?f.callback():(c&&c.cancel(),c=Download.json("/service/search/"+a,function(a){c=!1;d.apply(d,[a])}));return f},d=window.SearchQuery=function(a){g[a]?(instance=g[a],instance.callback()):(instance=f.apply(this,arguments),g[a]=instance);return instance};$.extend(d,{toString:function(){return"SearchQuery()"},error:function(){var a=Array.cast(arguments);
a.unshift("SearchQuery:");console.error.apply(console,a)},warn:function(){var a=Array.cast(arguments);a.unshift("SearchQuery:");console.warn.apply(console,a)}})})();Benchmark.stop("service.search-query.js","load");Benchmark.start("dom.ready.js");function projectToWM(c,g){var f=new Proj4js.Proj("EPSG:4326"),d=new Proj4js.Proj("EPSG:900913"),a=new Proj4js.Point(g,c);Proj4js.transform(f,d,a);return a}
dojo.addOnLoad(function(){new EsriMap(DefaultPackage);new Omnibox("#omnibox");new CardDeck("stack",dojo.byId("info-deck"));new Map});Benchmark.stop("dom.ready.js","load");Benchmark.stop("all scripts","load");
$.extend(window.CSS,{body:{width:"100%",height:"100%",margin:"0",padding:"0",overflow:"hidden",fontFamily:"Helvetica, Arial, Sans-serif"},flush:{position:"fixed",width:"100%",height:"100%",left:"0",top:"0",overflow:"hidden"},content:{position:"absolute",width:"100%",height:"100%"},header:{position:"absolute",width:"100%",height:"84px",margin:"auto",padding:"0",$borderTopWidth:"1",$borderBottomWidth:"1",$borderColor:"#2E2E2E",borderTop:"1px solid #2E2E2E",bottomBottom:"1px solid #2E2E2E",backgroundColor:"#ECE8FF",
background:"Array",filter:'progid:DXImageTransform.Microsoft.gradient( startColorstr="#b8e1fc", endColorstr="#aca9ba",GradientType=0 )',$boxShadow:"0 0 10px 4px ",boxShadow:"0 0 10px 4px #2C2C2C",zIndex:"64",zValues:{guiObject:"72"},space:{y:"86px"},focus:{boxShadow:"0 0 10px 4px orange"},corner:{position:"absolute",width:"62%",height:"100%",right:"0",bottom:"0"}},campusLogo:{position:"absolute",right:"56.5",bottom:"12"},widgetMenu:{position:"fixed",width:"116px",height:"1000px",left:"0",top:"84px",
borderWidth:"1px",borderStyle:"solid",borderColor:"black",space:{x:"118px"},backgroundColor:"white",pane:{borderBottom:"1px solid black"},icon:{position:"relative",width:"100%",height:"82px",border:"1px solid black",backgroundRepeat:"no-repeat",backgroundPosition:"center",cursor:"pointer",boxShadow:"inset 0 0 16px -4px black",hover:{backgroundColor:"rgba(237,236,238,0.8)",boxShadow:"inset 0 0 32px -4px black",span:{display:"block"}},overlay:{position:"absolute",width:"100%",top:"52px",textAlign:"center",
borderTop:"1px solid black",borderBottom:"1px solid black",color:"white",fontFamily:"trebuchet ms",backgroundColor:"rgba(64,66,65, 0.7)",display:"none"}}},card:{position:"absolute",width:"100%",height:"100%",left:"0",top:"0",marginTop:"10px",backgroundColor:"rgba(26, 15, 0, 0.9)",border:"3px solid black",borderRadius:"20px 40px 40px 40px",transformStyle:"preserve-3d",transition:"all 0.8s ease-out",container:{position:"absolute",width:"60%",height:"80%",left:"0",top:"0",maxHeight:"600px",transition:"all 0.5s ease-out"},
icon:{position:"absolute",width:"45px",height:"40px",left:"0",top:"0",borderBottom:"1px solid gray",borderRight:"1px solid gray",borderRadius:"10px 0 10px 0",backgroundColor:"rgba(255,255,255,0.2)"},header:{fontFamily:"helvetica",color:"white",textAlign:"center",separator:{width:"100%",height:"2px",backgroundColor:"rgba(240,231,250, 0.2)"}},title:{color:"white",fontSize:"26pt",display:"block",marginLeft:"50px",textAlign:"left"},subtitle:{color:"white",fontSize:"18pt",display:"block"},content:{color:"darkGray",
padding:"12px",text:{color:"burlyWood"},image:{width:"90%",height:"200px",marginLeft:"auto",marginRight:"auto",marginTop:"5%",textAlign:"center",fontSize:"14pt",color:"black",backgroundColor:"transparent"}}},cardDeck:{info:{position:"fixed",width:"30%",height:"100%",minWidth:"250px",right:"0",top:"0",marginTop:"86px",perspective:"450px",zIndex:"71"},view:{left:"50%",cursor:"pointer",opacity:"0.9",userSelect:"none",transform:"scale(0.6)",hover:{transform:"rotateZ(-5deg) scale(0.612) translate(-19px, -30px)"},
card:{border:"3px solid black",backgroundColor:"rgba(50, 50, 36, 1)",settled:{hover:{opacity:"1",border:"3px solid orange",backgroundColor:"rgba(20, 10, 0, 0.8)"}}}}},map:{position:"absolute",width:"auto",height:"auto",left:"118px",top:"86px",margin:"auto",padding:"0",borderColor:"#243C5F"},omnibox:{position:"absolute",width:"38%",height:"33.6px",left:"12px",top:"25.2px",input:{width:"100%",height:"100%",padding:"0 0",borderWidth:"1px",borderStyle:"solid",borderColor:"black",fontSize:"100%",fontFamily:"Verdana,Sans-serif",
textIndent:"5pt"},space:{y:"35.6px"},zIndex:"128",results:{position:"absolute",width:"100%",height:"200px",padding:"0 6px",backgroundColor:"white",borderTopWidth:"1px",borderTopStyle:"solid",borderTopColor:"rgba(128,128,128,0.36)",borderTop:"1pxsolidrgba(128,128,128,0.36)",$borderOther:"1px solid grey",borderLeft:"1px solid grey",borderRight:"1px solid grey",borderBottomWidth:"1px",borderBottom:"1px solid grey",overflowY:"scroll",opacity:"0.8",space:{y:"202px"},zIndex:"126",shadow:{position:"fixed",
width:"38%",height:"174.8px",top:"84px",left:"12px",paddingRight:"12px",border:"1px solid grey",borderTop:"1pxsolidrgba(128,128,128,0.36)",boxShadow:"0 0 32px 4px black",zIndex:"62"}},searchResult:{cursor:"pointer",hover:{backgroundColor:"LightGoldenRodYellow"}}}});