
(function(A,w){function ma(){if(!c.isReady){try{s.documentElement.doScroll("left")}catch(a){setTimeout(ma,1);return}c.ready()}}function Qa(a,b){b.src?c.ajax({url:b.src,async:false,dataType:"script"}):c.globalEval(b.text||b.textContent||b.innerHTML||"");b.parentNode&&b.parentNode.removeChild(b)}function X(a,b,d,f,e,j){var i=a.length;if(typeof b==="object"){for(var o in b)X(a,o,b[o],f,e,d);return a}if(d!==w){f=!j&&f&&c.isFunction(d);for(o=0;o<i;o++)e(a[o],b,f?d.call(a[o],o,e(a[o],b)):d,j);return a}return i?e(a[0],b):w}function J(){return(new Date).getTime()}function Y(){return false}function Z(){return true}function na(a,b,d){d[0].type=a;return c.event.handle.apply(b,d)}function oa(a){var b,d=[],f=[],e=arguments,j,i,o,k,n,r;i=c.data(this,"events");if(!(a.liveFired===this||!i||!i.live||a.button&&a.type==="click")){a.liveFired=this;var u=i.live.slice(0);for(k=0;k<u.length;k++){i=u[k];i.origType.replace(O,"")===a.type?f.push(i.selector):u.splice(k--,1)}j=c(a.target).closest(f,a.currentTarget);n=0;for(r=j.length;n<r;n++)for(k=0;k<u.length;k++){i=u[k];if(j[n].selector===i.selector){o=j[n].elem;f=null;if(i.preType==="mouseenter"||i.preType==="mouseleave")f=c(a.relatedTarget).closest(i.selector)[0];if(!f||f!==o)d.push({elem:o,handleObj:i})}}n=0;for(r=d.length;n<r;n++){j=d[n];a.currentTarget=j.elem;a.data=j.handleObj.data;a.handleObj=j.handleObj;if(j.handleObj.origHandler.apply(j.elem,e)===false){b=false;break}}return b}}function pa(a,b){return"live."+(a&&a!=="*"?a+".":"")+b.replace(/\./g,"`").replace(/ /g,"&")}function qa(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function ra(a,b){var d=0;b.each(function(){if(this.nodeName===(a[d]&&a[d].nodeName)){var f=c.data(a[d++]),e=c.data(this,f);if(f=f&&f.events){delete e.handle;e.events={};for(var j in f)for(var i in f[j])c.event.add(this,j,f[j][i],f[j][i].data)}}})}function sa(a,b,d){var f,e,j;b=b&&b[0]?b[0].ownerDocument||b[0]:s;if(a.length===1&&typeof a[0]==="string"&&a[0].length<512&&b===s&&!ta.test(a[0])&&(c.support.checkClone||!ua.test(a[0]))){e=true;if(j=c.fragments[a[0]])if(j!==1)f=j}if(!f){f=b.createDocumentFragment();c.clean(a,b,f,d)}if(e)c.fragments[a[0]]=j?f:1;return{fragment:f,cacheable:e}}function K(a,b){var d={};c.each(va.concat.apply([],va.slice(0,b)),function(){d[this]=a});return d}function wa(a){return"scrollTo"in a&&a.document?a:a.nodeType===9?a.defaultView||a.parentWindow:false}var c=function(a,b){return new c.fn.init(a,b)},Ra=A.jQuery,Sa=A.$,s=A.document,T,Ta=/^[^<]*(<[\w\W]+>)[^>]*$|^#([\w-]+)$/,Ua=/^.[^:#\[\.,]*$/,Va=/\S/,Wa=/^(\s|\u00A0)+|(\s|\u00A0)+$/g,Xa=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,P=navigator.userAgent,xa=false,Q=[],L,$=Object.prototype.toString,aa=Object.prototype.hasOwnProperty,ba=Array.prototype.push,R=Array.prototype.slice,ya=Array.prototype.indexOf;c.fn=c.prototype={init:function(a,b){var d,f;if(!a)return this;if(a.nodeType){this.context=this[0]=a;this.length=1;return this}if(a==="body"&&!b){this.context=s;this[0]=s.body;this.selector="body";this.length=1;return this}if(typeof a==="string")if((d=Ta.exec(a))&&(d[1]||!b))if(d[1]){f=b?b.ownerDocument||b:s;if(a=Xa.exec(a))if(c.isPlainObject(b)){a=[s.createElement(a[1])];c.fn.attr.call(a,b,true)}else a=[f.createElement(a[1])];else{a=sa([d[1]],[f]);a=(a.cacheable?a.fragment.cloneNode(true):a.fragment).childNodes}return c.merge(this,a)}else{if(b=s.getElementById(d[2])){if(b.id!==d[2])return T.find(a);this.length=1;this[0]=b}this.context=s;this.selector=a;return this}else if(!b&&/^\w+$/.test(a)){this.selector=a;this.context=s;a=s.getElementsByTagName(a);return c.merge(this,a)}else return!b||b.jquery?(b||T).find(a):c(b).find(a);else if(c.isFunction(a))return T.ready(a);if(a.selector!==w){this.selector=a.selector;this.context=a.context}return c.makeArray(a,this)},selector:"",jquery:"1.4.2",length:0,size:function(){return this.length},toArray:function(){return R.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this.slice(a)[0]:this[a]},pushStack:function(a,b,d){var f=c();c.isArray(a)?ba.apply(f,a):c.merge(f,a);f.prevObject=this;f.context=this.context;if(b==="find")f.selector=this.selector+(this.selector?" ":"")+d;else if(b)f.selector=this.selector+"."+b+"("+d+")";return f},each:function(a,b){return c.each(this,a,b)},ready:function(a){c.bindReady();if(c.isReady)a.call(s,c);else Q&&Q.push(a);return this},eq:function(a){return a===-1?this.slice(a):this.slice(a,+a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(R.apply(this,arguments),"slice",R.call(arguments).join(","))},map:function(a){return this.pushStack(c.map(this,function(b,d){return a.call(b,d,b)}))},end:function(){return this.prevObject||c(null)},push:ba,sort:[].sort,splice:[].splice};c.fn.init.prototype=c.fn;c.extend=c.fn.extend=function(){var a=arguments[0]||{},b=1,d=arguments.length,f=false,e,j,i,o;if(typeof a==="boolean"){f=a;a=arguments[1]||{};b=2}if(typeof a!=="object"&&!c.isFunction(a))a={};if(d===b){a=this;--b}for(;b<d;b++)if((e=arguments[b])!=null)for(j in e){i=a[j];o=e[j];if(a!==o)if(f&&o&&(c.isPlainObject(o)||c.isArray(o))){i=i&&(c.isPlainObject(i)||c.isArray(i))?i:c.isArray(o)?[]:{};a[j]=c.extend(f,i,o)}else if(o!==w)a[j]=o}return a};c.extend({noConflict:function(a){A.$=Sa;if(a)A.jQuery=Ra;return c},isReady:false,ready:function(){if(!c.isReady){if(!s.body)return setTimeout(c.ready,13);c.isReady=true;if(Q){for(var a,b=0;a=Q[b++];)a.call(s,c);Q=null}c.fn.triggerHandler&&c(s).triggerHandler("ready")}},bindReady:function(){if(!xa){xa=true;if(s.readyState==="complete")return c.ready();if(s.addEventListener){s.addEventListener("DOMContentLoaded",L,false);A.addEventListener("load",c.ready,false)}else if(s.attachEvent){s.attachEvent("onreadystatechange",L);A.attachEvent("onload",c.ready);var a=false;try{a=A.frameElement==null}catch(b){}s.documentElement.doScroll&&a&&ma()}}},isFunction:function(a){return $.call(a)==="[object Function]"},isArray:function(a){return $.call(a)==="[object Array]"},isPlainObject:function(a){if(!a||$.call(a)!=="[object Object]"||a.nodeType||a.setInterval)return false;if(a.constructor&&!aa.call(a,"constructor")&&!aa.call(a.constructor.prototype,"isPrototypeOf"))return false;var b;for(b in a);return b===w||aa.call(a,b)},isEmptyObject:function(a){for(var b in a)return false;return true},error:function(a){throw a;},parseJSON:function(a){if(typeof a!=="string"||!a)return null;a=c.trim(a);if(/^[\],:{}\s]*$/.test(a.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,"@").replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,"]").replace(/(?:^|:|,)(?:\s*\[)+/g,"")))return A.JSON&&A.JSON.parse?A.JSON.parse(a):(new Function("return "+
a))();else c.error("Invalid JSON: "+a)},noop:function(){},globalEval:function(a){if(a&&Va.test(a)){var b=s.getElementsByTagName("head")[0]||s.documentElement,d=s.createElement("script");d.type="text/javascript";if(c.support.scriptEval)d.appendChild(s.createTextNode(a));else d.text=a;b.insertBefore(d,b.firstChild);b.removeChild(d)}},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,b,d){var f,e=0,j=a.length,i=j===w||c.isFunction(a);if(d)if(i)for(f in a){if(b.apply(a[f],d)===false)break}else for(;e<j;){if(b.apply(a[e++],d)===false)break}else if(i)for(f in a){if(b.call(a[f],f,a[f])===false)break}else for(d=a[0];e<j&&b.call(d,e,d)!==false;d=a[++e]);return a},trim:function(a){return(a||"").replace(Wa,"")},makeArray:function(a,b){b=b||[];if(a!=null)a.length==null||typeof a==="string"||c.isFunction(a)||typeof a!=="function"&&a.setInterval?ba.call(b,a):c.merge(b,a);return b},inArray:function(a,b){if(b.indexOf)return b.indexOf(a);for(var d=0,f=b.length;d<f;d++)if(b[d]===a)return d;return-1},merge:function(a,b){var d=a.length,f=0;if(typeof b.length==="number")for(var e=b.length;f<e;f++)a[d++]=b[f];else for(;b[f]!==w;)a[d++]=b[f++];a.length=d;return a},grep:function(a,b,d){for(var f=[],e=0,j=a.length;e<j;e++)!d!==!b(a[e],e)&&f.push(a[e]);return f},map:function(a,b,d){for(var f=[],e,j=0,i=a.length;j<i;j++){e=b(a[j],j,d);if(e!=null)f[f.length]=e}return f.concat.apply([],f)},guid:1,proxy:function(a,b,d){if(arguments.length===2)if(typeof b==="string"){d=a;a=d[b];b=w}else if(b&&!c.isFunction(b)){d=b;b=w}if(!b&&a)b=function(){return a.apply(d||this,arguments)};if(a)b.guid=a.guid=a.guid||b.guid||c.guid++;return b},uaMatch:function(a){a=a.toLowerCase();a=/(webkit)[ \/]([\w.]+)/.exec(a)||/(opera)(?:.*version)?[ \/]([\w.]+)/.exec(a)||/(msie) ([\w.]+)/.exec(a)||!/compatible/.test(a)&&/(mozilla)(?:.*? rv:([\w.]+))?/.exec(a)||[];return{browser:a[1]||"",version:a[2]||"0"}},browser:{}});P=c.uaMatch(P);if(P.browser){c.browser[P.browser]=true;c.browser.version=P.version}if(c.browser.webkit)c.browser.safari=true;if(ya)c.inArray=function(a,b){return ya.call(b,a)};T=c(s);if(s.addEventListener)L=function(){s.removeEventListener("DOMContentLoaded",L,false);c.ready()};else if(s.attachEvent)L=function(){if(s.readyState==="complete"){s.detachEvent("onreadystatechange",L);c.ready()}};(function(){c.support={};var a=s.documentElement,b=s.createElement("script"),d=s.createElement("div"),f="script"+J();d.style.display="none";d.innerHTML="   <link/><table></table><a href='/a' style='color:red;float:left;opacity:.55;'>a</a><input type='checkbox'/>";var e=d.getElementsByTagName("*"),j=d.getElementsByTagName("a")[0];if(!(!e||!e.length||!j)){c.support={leadingWhitespace:d.firstChild.nodeType===3,tbody:!d.getElementsByTagName("tbody").length,htmlSerialize:!!d.getElementsByTagName("link").length,style:/red/.test(j.getAttribute("style")),hrefNormalized:j.getAttribute("href")==="/a",opacity:/^0.55$/.test(j.style.opacity),cssFloat:!!j.style.cssFloat,checkOn:d.getElementsByTagName("input")[0].value==="on",optSelected:s.createElement("select").appendChild(s.createElement("option")).selected,parentNode:d.removeChild(d.appendChild(s.createElement("div"))).parentNode===null,deleteExpando:true,checkClone:false,scriptEval:false,noCloneEvent:true,boxModel:null};b.type="text/javascript";try{b.appendChild(s.createTextNode("window."+f+"=1;"))}catch(i){}a.insertBefore(b,a.firstChild);if(A[f]){c.support.scriptEval=true;delete A[f]}try{delete b.test}catch(o){c.support.deleteExpando=false}a.removeChild(b);if(d.attachEvent&&d.fireEvent){d.attachEvent("onclick",function k(){c.support.noCloneEvent=false;d.detachEvent("onclick",k)});d.cloneNode(true).fireEvent("onclick")}d=s.createElement("div");d.innerHTML="<input type='radio' name='radiotest' checked='checked'/>";a=s.createDocumentFragment();a.appendChild(d.firstChild);c.support.checkClone=a.cloneNode(true).cloneNode(true).lastChild.checked;c(function(){var k=s.createElement("div");k.style.width=k.style.paddingLeft="1px";s.body.appendChild(k);c.boxModel=c.support.boxModel=k.offsetWidth===2;s.body.removeChild(k).style.display="none"});a=function(k){var n=s.createElement("div");k="on"+k;var r=k in n;if(!r){n.setAttribute(k,"return;");r=typeof n[k]==="function"}return r};c.support.submitBubbles=a("submit");c.support.changeBubbles=a("change");a=b=d=e=j=null}})();c.props={"for":"htmlFor","class":"className",readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing",rowspan:"rowSpan",colspan:"colSpan",tabindex:"tabIndex",usemap:"useMap",frameborder:"frameBorder"};var G="jQuery"+J(),Ya=0,za={};c.extend({cache:{},expando:G,noData:{embed:true,object:true,applet:true},data:function(a,b,d){if(!(a.nodeName&&c.noData[a.nodeName.toLowerCase()])){a=a==A?za:a;var f=a[G],e=c.cache;if(!f&&typeof b==="string"&&d===w)return null;f||(f=++Ya);if(typeof b==="object"){a[G]=f;e[f]=c.extend(true,{},b)}else if(!e[f]){a[G]=f;e[f]={}}a=e[f];if(d!==w)a[b]=d;return typeof b==="string"?a[b]:a}},removeData:function(a,b){if(!(a.nodeName&&c.noData[a.nodeName.toLowerCase()])){a=a==A?za:a;var d=a[G],f=c.cache,e=f[d];if(b){if(e){delete e[b];c.isEmptyObject(e)&&c.removeData(a)}}else{if(c.support.deleteExpando)delete a[c.expando];else a.removeAttribute&&a.removeAttribute(c.expando);delete f[d]}}}});c.fn.extend({data:function(a,b){if(typeof a==="undefined"&&this.length)return c.data(this[0]);else if(typeof a==="object")return this.each(function(){c.data(this,a)});var d=a.split(".");d[1]=d[1]?"."+d[1]:"";if(b===w){var f=this.triggerHandler("getData"+d[1]+"!",[d[0]]);if(f===w&&this.length)f=c.data(this[0],a);return f===w&&d[1]?this.data(d[0]):f}else return this.trigger("setData"+d[1]+"!",[d[0],b]).each(function(){c.data(this,a,b)})},removeData:function(a){return this.each(function(){c.removeData(this,a)})}});c.extend({queue:function(a,b,d){if(a){b=(b||"fx")+"queue";var f=c.data(a,b);if(!d)return f||[];if(!f||c.isArray(d))f=c.data(a,b,c.makeArray(d));else f.push(d);return f}},dequeue:function(a,b){b=b||"fx";var d=c.queue(a,b),f=d.shift();if(f==="inprogress")f=d.shift();if(f){b==="fx"&&d.unshift("inprogress");f.call(a,function(){c.dequeue(a,b)})}}});c.fn.extend({queue:function(a,b){if(typeof a!=="string"){b=a;a="fx"}if(b===w)return c.queue(this[0],a);return this.each(function(){var d=c.queue(this,a,b);a==="fx"&&d[0]!=="inprogress"&&c.dequeue(this,a)})},dequeue:function(a){return this.each(function(){c.dequeue(this,a)})},delay:function(a,b){a=c.fx?c.fx.speeds[a]||a:a;b=b||"fx";return this.queue(b,function(){var d=this;setTimeout(function(){c.dequeue(d,b)},a)})},clearQueue:function(a){return this.queue(a||"fx",[])}});var Aa=/[\n\t]/g,ca=/\s+/,Za=/\r/g,$a=/href|src|style/,ab=/(button|input)/i,bb=/(button|input|object|select|textarea)/i,cb=/^(a|area)$/i,Ba=/radio|checkbox/;c.fn.extend({attr:function(a,b){return X(this,a,b,true,c.attr)},removeAttr:function(a){return this.each(function(){c.attr(this,a,"");this.nodeType===1&&this.removeAttribute(a)})},addClass:function(a){if(c.isFunction(a))return this.each(function(n){var r=c(this);r.addClass(a.call(this,n,r.attr("class")))});if(a&&typeof a==="string")for(var b=(a||"").split(ca),d=0,f=this.length;d<f;d++){var e=this[d];if(e.nodeType===1)if(e.className){for(var j=" "+e.className+" ",i=e.className,o=0,k=b.length;o<k;o++)if(j.indexOf(" "+b[o]+" ")<0)i+=" "+b[o];e.className=c.trim(i)}else e.className=a}return this},removeClass:function(a){if(c.isFunction(a))return this.each(function(k){var n=c(this);n.removeClass(a.call(this,k,n.attr("class")))});if(a&&typeof a==="string"||a===w)for(var b=(a||"").split(ca),d=0,f=this.length;d<f;d++){var e=this[d];if(e.nodeType===1&&e.className)if(a){for(var j=(" "+e.className+" ").replace(Aa," "),i=0,o=b.length;i<o;i++)j=j.replace(" "+b[i]+" "," ");e.className=c.trim(j)}else e.className=""}return this},toggleClass:function(a,b){var d=typeof a,f=typeof b==="boolean";if(c.isFunction(a))return this.each(function(e){var j=c(this);j.toggleClass(a.call(this,e,j.attr("class"),b),b)});return this.each(function(){if(d==="string")for(var e,j=0,i=c(this),o=b,k=a.split(ca);e=k[j++];){o=f?o:!i.hasClass(e);i[o?"addClass":"removeClass"](e)}else if(d==="undefined"||d==="boolean"){this.className&&c.data(this,"__className__",this.className);this.className=this.className||a===false?"":c.data(this,"__className__")||""}})},hasClass:function(a){a=" "+a+" ";for(var b=0,d=this.length;b<d;b++)if((" "+this[b].className+" ").replace(Aa," ").indexOf(a)>-1)return true;return false},val:function(a){if(a===w){var b=this[0];if(b){if(c.nodeName(b,"option"))return(b.attributes.value||{}).specified?b.value:b.text;if(c.nodeName(b,"select")){var d=b.selectedIndex,f=[],e=b.options;b=b.type==="select-one";if(d<0)return null;var j=b?d:0;for(d=b?d+1:e.length;j<d;j++){var i=e[j];if(i.selected){a=c(i).val();if(b)return a;f.push(a)}}return f}if(Ba.test(b.type)&&!c.support.checkOn)return b.getAttribute("value")===null?"on":b.value;return(b.value||"").replace(Za,"")}return w}var o=c.isFunction(a);return this.each(function(k){var n=c(this),r=a;if(this.nodeType===1){if(o)r=a.call(this,k,n.val());if(typeof r==="number")r+="";if(c.isArray(r)&&Ba.test(this.type))this.checked=c.inArray(n.val(),r)>=0;else if(c.nodeName(this,"select")){var u=c.makeArray(r);c("option",this).each(function(){this.selected=c.inArray(c(this).val(),u)>=0});if(!u.length)this.selectedIndex=-1}else this.value=r}})}});c.extend({attrFn:{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true},attr:function(a,b,d,f){if(!a||a.nodeType===3||a.nodeType===8)return w;if(f&&b in c.attrFn)return c(a)[b](d);f=a.nodeType!==1||!c.isXMLDoc(a);var e=d!==w;b=f&&c.props[b]||b;if(a.nodeType===1){var j=$a.test(b);if(b in a&&f&&!j){if(e){b==="type"&&ab.test(a.nodeName)&&a.parentNode&&c.error("type property can't be changed");a[b]=d}if(c.nodeName(a,"form")&&a.getAttributeNode(b))return a.getAttributeNode(b).nodeValue;if(b==="tabIndex")return(b=a.getAttributeNode("tabIndex"))&&b.specified?b.value:bb.test(a.nodeName)||cb.test(a.nodeName)&&a.href?0:w;return a[b]}if(!c.support.style&&f&&b==="style"){if(e)a.style.cssText=""+d;return a.style.cssText}e&&a.setAttribute(b,""+d);a=!c.support.hrefNormalized&&f&&j?a.getAttribute(b,2):a.getAttribute(b);return a===null?w:a}return c.style(a,b,d)}});var O=/\.(.*)$/,db=function(a){return a.replace(/[^\w\s\.\|`]/g,function(b){return"\\"+b})};c.event={add:function(a,b,d,f){if(!(a.nodeType===3||a.nodeType===8)){if(a.setInterval&&a!==A&&!a.frameElement)a=A;var e,j;if(d.handler){e=d;d=e.handler}if(!d.guid)d.guid=c.guid++;if(j=c.data(a)){var i=j.events=j.events||{},o=j.handle;if(!o)j.handle=o=function(){return typeof c!=="undefined"&&!c.event.triggered?c.event.handle.apply(o.elem,arguments):w};o.elem=a;b=b.split(" ");for(var k,n=0,r;k=b[n++];){j=e?c.extend({},e):{handler:d,data:f};if(k.indexOf(".")>-1){r=k.split(".");k=r.shift();j.namespace=r.slice(0).sort().join(".")}else{r=[];j.namespace=""}j.type=k;j.guid=d.guid;var u=i[k],z=c.event.special[k]||{};if(!u){u=i[k]=[];if(!z.setup||z.setup.call(a,f,r,o)===false)if(a.addEventListener)a.addEventListener(k,o,false);else a.attachEvent&&a.attachEvent("on"+k,o)}if(z.add){z.add.call(a,j);if(!j.handler.guid)j.handler.guid=d.guid}u.push(j);c.event.global[k]=true}a=null}}},global:{},remove:function(a,b,d,f){if(!(a.nodeType===3||a.nodeType===8)){var e,j=0,i,o,k,n,r,u,z=c.data(a),C=z&&z.events;if(z&&C){if(b&&b.type){d=b.handler;b=b.type}if(!b||typeof b==="string"&&b.charAt(0)==="."){b=b||"";for(e in C)c.event.remove(a,e+b)}else{for(b=b.split(" ");e=b[j++];){n=e;i=e.indexOf(".")<0;o=[];if(!i){o=e.split(".");e=o.shift();k=new RegExp("(^|\\.)"+c.map(o.slice(0).sort(),db).join("\\.(?:.*\\.)?")+"(\\.|$)")}if(r=C[e])if(d){n=c.event.special[e]||{};for(B=f||0;B<r.length;B++){u=r[B];if(d.guid===u.guid){if(i||k.test(u.namespace)){f==null&&r.splice(B--,1);n.remove&&n.remove.call(a,u)}if(f!=null)break}}if(r.length===0||f!=null&&r.length===1){if(!n.teardown||n.teardown.call(a,o)===false)Ca(a,e,z.handle);delete C[e]}}else for(var B=0;B<r.length;B++){u=r[B];if(i||k.test(u.namespace)){c.event.remove(a,n,u.handler,B);r.splice(B--,1)}}}if(c.isEmptyObject(C)){if(b=z.handle)b.elem=null;delete z.events;delete z.handle;c.isEmptyObject(z)&&c.removeData(a)}}}}},trigger:function(a,b,d,f){var e=a.type||a;if(!f){a=typeof a==="object"?a[G]?a:c.extend(c.Event(e),a):c.Event(e);if(e.indexOf("!")>=0){a.type=e=e.slice(0,-1);a.exclusive=true}if(!d){a.stopPropagation();c.event.global[e]&&c.each(c.cache,function(){this.events&&this.events[e]&&c.event.trigger(a,b,this.handle.elem)})}if(!d||d.nodeType===3||d.nodeType===8)return w;a.result=w;a.target=d;b=c.makeArray(b);b.unshift(a)}a.currentTarget=d;(f=c.data(d,"handle"))&&f.apply(d,b);f=d.parentNode||d.ownerDocument;try{if(!(d&&d.nodeName&&c.noData[d.nodeName.toLowerCase()]))if(d["on"+e]&&d["on"+e].apply(d,b)===false)a.result=false}catch(j){}if(!a.isPropagationStopped()&&f)c.event.trigger(a,b,f,true);else if(!a.isDefaultPrevented()){f=a.target;var i,o=c.nodeName(f,"a")&&e==="click",k=c.event.special[e]||{};if((!k._default||k._default.call(d,a)===false)&&!o&&!(f&&f.nodeName&&c.noData[f.nodeName.toLowerCase()])){try{if(f[e]){if(i=f["on"+e])f["on"+e]=null;c.event.triggered=true;f[e]()}}catch(n){}if(i)f["on"+e]=i;c.event.triggered=false}}},handle:function(a){var b,d,f,e;a=arguments[0]=c.event.fix(a||A.event);a.currentTarget=this;b=a.type.indexOf(".")<0&&!a.exclusive;if(!b){d=a.type.split(".");a.type=d.shift();f=new RegExp("(^|\\.)"+d.slice(0).sort().join("\\.(?:.*\\.)?")+"(\\.|$)")}e=c.data(this,"events");d=e[a.type];if(e&&d){d=d.slice(0);e=0;for(var j=d.length;e<j;e++){var i=d[e];if(b||f.test(i.namespace)){a.handler=i.handler;a.data=i.data;a.handleObj=i;i=i.handler.apply(this,arguments);if(i!==w){a.result=i;if(i===false){a.preventDefault();a.stopPropagation()}}if(a.isImmediatePropagationStopped())break}}}return a.result},props:"altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode layerX layerY metaKey newValue offsetX offsetY originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target toElement view wheelDelta which".split(" "),fix:function(a){if(a[G])return a;var b=a;a=c.Event(b);for(var d=this.props.length,f;d;){f=this.props[--d];a[f]=b[f]}if(!a.target)a.target=a.srcElement||s;if(a.target.nodeType===3)a.target=a.target.parentNode;if(!a.relatedTarget&&a.fromElement)a.relatedTarget=a.fromElement===a.target?a.toElement:a.fromElement;if(a.pageX==null&&a.clientX!=null){b=s.documentElement;d=s.body;a.pageX=a.clientX+(b&&b.scrollLeft||d&&d.scrollLeft||0)-(b&&b.clientLeft||d&&d.clientLeft||0);a.pageY=a.clientY+(b&&b.scrollTop||d&&d.scrollTop||0)-(b&&b.clientTop||d&&d.clientTop||0)}if(!a.which&&(a.charCode||a.charCode===0?a.charCode:a.keyCode))a.which=a.charCode||a.keyCode;if(!a.metaKey&&a.ctrlKey)a.metaKey=a.ctrlKey;if(!a.which&&a.button!==w)a.which=a.button&1?1:a.button&2?3:a.button&4?2:0;return a},guid:1E8,proxy:c.proxy,special:{ready:{setup:c.bindReady,teardown:c.noop},live:{add:function(a){c.event.add(this,a.origType,c.extend({},a,{handler:oa}))},remove:function(a){var b=true,d=a.origType.replace(O,"");c.each(c.data(this,"events").live||[],function(){if(d===this.origType.replace(O,""))return b=false});b&&c.event.remove(this,a.origType,oa)}},beforeunload:{setup:function(a,b,d){if(this.setInterval)this.onbeforeunload=d;return false},teardown:function(a,b){if(this.onbeforeunload===b)this.onbeforeunload=null}}}};var Ca=s.removeEventListener?function(a,b,d){a.removeEventListener(b,d,false)}:function(a,b,d){a.detachEvent("on"+b,d)};c.Event=function(a){if(!this.preventDefault)return new c.Event(a);if(a&&a.type){this.originalEvent=a;this.type=a.type}else this.type=a;this.timeStamp=J();this[G]=true};c.Event.prototype={preventDefault:function(){this.isDefaultPrevented=Z;var a=this.originalEvent;if(a){a.preventDefault&&a.preventDefault();a.returnValue=false}},stopPropagation:function(){this.isPropagationStopped=Z;var a=this.originalEvent;if(a){a.stopPropagation&&a.stopPropagation();a.cancelBubble=true}},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=Z;this.stopPropagation()},isDefaultPrevented:Y,isPropagationStopped:Y,isImmediatePropagationStopped:Y};var Da=function(a){var b=a.relatedTarget;try{for(;b&&b!==this;)b=b.parentNode;if(b!==this){a.type=a.data;c.event.handle.apply(this,arguments)}}catch(d){}},Ea=function(a){a.type=a.data;c.event.handle.apply(this,arguments)};c.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(a,b){c.event.special[a]={setup:function(d){c.event.add(this,b,d&&d.selector?Ea:Da,a)},teardown:function(d){c.event.remove(this,b,d&&d.selector?Ea:Da)}}});if(!c.support.submitBubbles)c.event.special.submit={setup:function(){if(this.nodeName.toLowerCase()!=="form"){c.event.add(this,"click.specialSubmit",function(a){var b=a.target,d=b.type;if((d==="submit"||d==="image")&&c(b).closest("form").length)return na("submit",this,arguments)});c.event.add(this,"keypress.specialSubmit",function(a){var b=a.target,d=b.type;if((d==="text"||d==="password")&&c(b).closest("form").length&&a.keyCode===13)return na("submit",this,arguments)})}else return false},teardown:function(){c.event.remove(this,".specialSubmit")}};if(!c.support.changeBubbles){var da=/textarea|input|select/i,ea,Fa=function(a){var b=a.type,d=a.value;if(b==="radio"||b==="checkbox")d=a.checked;else if(b==="select-multiple")d=a.selectedIndex>-1?c.map(a.options,function(f){return f.selected}).join("-"):"";else if(a.nodeName.toLowerCase()==="select")d=a.selectedIndex;return d},fa=function(a,b){var d=a.target,f,e;if(!(!da.test(d.nodeName)||d.readOnly)){f=c.data(d,"_change_data");e=Fa(d);if(a.type!=="focusout"||d.type!=="radio")c.data(d,"_change_data",e);if(!(f===w||e===f))if(f!=null||e){a.type="change";return c.event.trigger(a,b,d)}}};c.event.special.change={filters:{focusout:fa,click:function(a){var b=a.target,d=b.type;if(d==="radio"||d==="checkbox"||b.nodeName.toLowerCase()==="select")return fa.call(this,a)},keydown:function(a){var b=a.target,d=b.type;if(a.keyCode===13&&b.nodeName.toLowerCase()!=="textarea"||a.keyCode===32&&(d==="checkbox"||d==="radio")||d==="select-multiple")return fa.call(this,a)},beforeactivate:function(a){a=a.target;c.data(a,"_change_data",Fa(a))}},setup:function(){if(this.type==="file")return false;for(var a in ea)c.event.add(this,a+".specialChange",ea[a]);return da.test(this.nodeName)},teardown:function(){c.event.remove(this,".specialChange");return da.test(this.nodeName)}};ea=c.event.special.change.filters}s.addEventListener&&c.each({focus:"focusin",blur:"focusout"},function(a,b){function d(f){f=c.event.fix(f);f.type=b;return c.event.handle.call(this,f)}c.event.special[b]={setup:function(){this.addEventListener(a,d,true)},teardown:function(){this.removeEventListener(a,d,true)}}});c.each(["bind","one"],function(a,b){c.fn[b]=function(d,f,e){if(typeof d==="object"){for(var j in d)this[b](j,f,d[j],e);return this}if(c.isFunction(f)){e=f;f=w}var i=b==="one"?c.proxy(e,function(k){c(this).unbind(k,i);return e.apply(this,arguments)}):e;if(d==="unload"&&b!=="one")this.one(d,f,e);else{j=0;for(var o=this.length;j<o;j++)c.event.add(this[j],d,i,f)}return this}});c.fn.extend({unbind:function(a,b){if(typeof a==="object"&&!a.preventDefault)for(var d in a)this.unbind(d,a[d]);else{d=0;for(var f=this.length;d<f;d++)c.event.remove(this[d],a,b)}return this},delegate:function(a,b,d,f){return this.live(b,d,f,a)},undelegate:function(a,b,d){return arguments.length===0?this.unbind("live"):this.die(b,null,d,a)},trigger:function(a,b){return this.each(function(){c.event.trigger(a,b,this)})},triggerHandler:function(a,b){if(this[0]){a=c.Event(a);a.preventDefault();a.stopPropagation();c.event.trigger(a,b,this[0]);return a.result}},toggle:function(a){for(var b=arguments,d=1;d<b.length;)c.proxy(a,b[d++]);return this.click(c.proxy(a,function(f){var e=(c.data(this,"lastToggle"+a.guid)||0)%d;c.data(this,"lastToggle"+a.guid,e+1);f.preventDefault();return b[e].apply(this,arguments)||false}))},hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}});var Ga={focus:"focusin",blur:"focusout",mouseenter:"mouseover",mouseleave:"mouseout"};c.each(["live","die"],function(a,b){c.fn[b]=function(d,f,e,j){var i,o=0,k,n,r=j||this.selector,u=j?this:c(this.context);if(c.isFunction(f)){e=f;f=w}for(d=(d||"").split(" ");(i=d[o++])!=null;){j=O.exec(i);k="";if(j){k=j[0];i=i.replace(O,"")}if(i==="hover")d.push("mouseenter"+k,"mouseleave"+k);else{n=i;if(i==="focus"||i==="blur"){d.push(Ga[i]+k);i+=k}else i=(Ga[i]||i)+k;b==="live"?u.each(function(){c.event.add(this,pa(i,r),{data:f,selector:r,handler:e,origType:i,origHandler:e,preType:n})}):u.unbind(pa(i,r),e)}}return this}});c.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error".split(" "),function(a,b){c.fn[b]=function(d){return d?this.bind(b,d):this.trigger(b)};if(c.attrFn)c.attrFn[b]=true});A.attachEvent&&!A.addEventListener&&A.attachEvent("onunload",function(){for(var a in c.cache)if(c.cache[a].handle)try{c.event.remove(c.cache[a].handle.elem)}catch(b){}});(function(){function a(g){for(var h="",l,m=0;g[m];m++){l=g[m];if(l.nodeType===3||l.nodeType===4)h+=l.nodeValue;else if(l.nodeType!==8)h+=a(l.childNodes)}return h}function b(g,h,l,m,q,p){q=0;for(var v=m.length;q<v;q++){var t=m[q];if(t){t=t[g];for(var y=false;t;){if(t.sizcache===l){y=m[t.sizset];break}if(t.nodeType===1&&!p){t.sizcache=l;t.sizset=q}if(t.nodeName.toLowerCase()===h){y=t;break}t=t[g]}m[q]=y}}}function d(g,h,l,m,q,p){q=0;for(var v=m.length;q<v;q++){var t=m[q];if(t){t=t[g];for(var y=false;t;){if(t.sizcache===l){y=m[t.sizset];break}if(t.nodeType===1){if(!p){t.sizcache=l;t.sizset=q}if(typeof h!=="string"){if(t===h){y=true;break}}else if(k.filter(h,[t]).length>0){y=t;break}}t=t[g]}m[q]=y}}}var f=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,e=0,j=Object.prototype.toString,i=false,o=true;[0,0].sort(function(){o=false;return 0});var k=function(g,h,l,m){l=l||[];var q=h=h||s;if(h.nodeType!==1&&h.nodeType!==9)return[];if(!g||typeof g!=="string")return l;for(var p=[],v,t,y,S,H=true,M=x(h),I=g;(f.exec(""),v=f.exec(I))!==null;){I=v[3];p.push(v[1]);if(v[2]){S=v[3];break}}if(p.length>1&&r.exec(g))if(p.length===2&&n.relative[p[0]])t=ga(p[0]+p[1],h);else for(t=n.relative[p[0]]?[h]:k(p.shift(),h);p.length;){g=p.shift();if(n.relative[g])g+=p.shift();t=ga(g,t)}else{if(!m&&p.length>1&&h.nodeType===9&&!M&&n.match.ID.test(p[0])&&!n.match.ID.test(p[p.length-1])){v=k.find(p.shift(),h,M);h=v.expr?k.filter(v.expr,v.set)[0]:v.set[0]}if(h){v=m?{expr:p.pop(),set:z(m)}:k.find(p.pop(),p.length===1&&(p[0]==="~"||p[0]==="+")&&h.parentNode?h.parentNode:h,M);t=v.expr?k.filter(v.expr,v.set):v.set;if(p.length>0)y=z(t);else H=false;for(;p.length;){var D=p.pop();v=D;if(n.relative[D])v=p.pop();else D="";if(v==null)v=h;n.relative[D](y,v,M)}}else y=[]}y||(y=t);y||k.error(D||g);if(j.call(y)==="[object Array]")if(H)if(h&&h.nodeType===1)for(g=0;y[g]!=null;g++){if(y[g]&&(y[g]===true||y[g].nodeType===1&&E(h,y[g])))l.push(t[g])}else for(g=0;y[g]!=null;g++)y[g]&&y[g].nodeType===1&&l.push(t[g]);else l.push.apply(l,y);else z(y,l);if(S){k(S,q,l,m);k.uniqueSort(l)}return l};k.uniqueSort=function(g){if(B){i=o;g.sort(B);if(i)for(var h=1;h<g.length;h++)g[h]===g[h-1]&&g.splice(h--,1)}return g};k.matches=function(g,h){return k(g,null,null,h)};k.find=function(g,h,l){var m,q;if(!g)return[];for(var p=0,v=n.order.length;p<v;p++){var t=n.order[p];if(q=n.leftMatch[t].exec(g)){var y=q[1];q.splice(1,1);if(y.substr(y.length-1)!=="\\"){q[1]=(q[1]||"").replace(/\\/g,"");m=n.find[t](q,h,l);if(m!=null){g=g.replace(n.match[t],"");break}}}}m||(m=h.getElementsByTagName("*"));return{set:m,expr:g}};k.filter=function(g,h,l,m){for(var q=g,p=[],v=h,t,y,S=h&&h[0]&&x(h[0]);g&&h.length;){for(var H in n.filter)if((t=n.leftMatch[H].exec(g))!=null&&t[2]){var M=n.filter[H],I,D;D=t[1];y=false;t.splice(1,1);if(D.substr(D.length-
1)!=="\\"){if(v===p)p=[];if(n.preFilter[H])if(t=n.preFilter[H](t,v,l,p,m,S)){if(t===true)continue}else y=I=true;if(t)for(var U=0;(D=v[U])!=null;U++)if(D){I=M(D,t,U,v);var Ha=m^!!I;if(l&&I!=null)if(Ha)y=true;else v[U]=false;else if(Ha){p.push(D);y=true}}if(I!==w){l||(v=p);g=g.replace(n.match[H],"");if(!y)return[];break}}}if(g===q)if(y==null)k.error(g);else break;q=g}return v};k.error=function(g){throw"Syntax error, unrecognized expression: "+g;};var n=k.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF-]|\\.)+)\s*(?:(\S?=)\s*(['"]*)(.*?)\3|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\((even|odd|[\dn+-]*)\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(g){return g.getAttribute("href")}},relative:{"+":function(g,h){var l=typeof h==="string",m=l&&!/\W/.test(h);l=l&&!m;if(m)h=h.toLowerCase();m=0;for(var q=g.length,p;m<q;m++)if(p=g[m]){for(;(p=p.previousSibling)&&p.nodeType!==1;);g[m]=l||p&&p.nodeName.toLowerCase()===h?p||false:p===h}l&&k.filter(h,g,true)},">":function(g,h){var l=typeof h==="string";if(l&&!/\W/.test(h)){h=h.toLowerCase();for(var m=0,q=g.length;m<q;m++){var p=g[m];if(p){l=p.parentNode;g[m]=l.nodeName.toLowerCase()===h?l:false}}}else{m=0;for(q=g.length;m<q;m++)if(p=g[m])g[m]=l?p.parentNode:p.parentNode===h;l&&k.filter(h,g,true)}},"":function(g,h,l){var m=e++,q=d;if(typeof h==="string"&&!/\W/.test(h)){var p=h=h.toLowerCase();q=b}q("parentNode",h,m,g,p,l)},"~":function(g,h,l){var m=e++,q=d;if(typeof h==="string"&&!/\W/.test(h)){var p=h=h.toLowerCase();q=b}q("previousSibling",h,m,g,p,l)}},find:{ID:function(g,h,l){if(typeof h.getElementById!=="undefined"&&!l)return(g=h.getElementById(g[1]))?[g]:[]},NAME:function(g,h){if(typeof h.getElementsByName!=="undefined"){var l=[];h=h.getElementsByName(g[1]);for(var m=0,q=h.length;m<q;m++)h[m].getAttribute("name")===g[1]&&l.push(h[m]);return l.length===0?null:l}},TAG:function(g,h){return h.getElementsByTagName(g[1])}},preFilter:{CLASS:function(g,h,l,m,q,p){g=" "+g[1].replace(/\\/g,"")+" ";if(p)return g;p=0;for(var v;(v=h[p])!=null;p++)if(v)if(q^(v.className&&(" "+v.className+" ").replace(/[\t\n]/g," ").indexOf(g)>=0))l||m.push(v);else if(l)h[p]=false;return false},ID:function(g){return g[1].replace(/\\/g,"")},TAG:function(g){return g[1].toLowerCase()},CHILD:function(g){if(g[1]==="nth"){var h=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(g[2]==="even"&&"2n"||g[2]==="odd"&&"2n+1"||!/\D/.test(g[2])&&"0n+"+g[2]||g[2]);g[2]=h[1]+(h[2]||1)-0;g[3]=h[3]-0}g[0]=e++;return g},ATTR:function(g,h,l,m,q,p){h=g[1].replace(/\\/g,"");if(!p&&n.attrMap[h])g[1]=n.attrMap[h];if(g[2]==="~=")g[4]=" "+g[4]+" ";return g},PSEUDO:function(g,h,l,m,q){if(g[1]==="not")if((f.exec(g[3])||"").length>1||/^\w/.test(g[3]))g[3]=k(g[3],null,null,h);else{g=k.filter(g[3],h,l,true^q);l||m.push.apply(m,g);return false}else if(n.match.POS.test(g[0])||n.match.CHILD.test(g[0]))return true;return g},POS:function(g){g.unshift(true);return g}},filters:{enabled:function(g){return g.disabled===false&&g.type!=="hidden"},disabled:function(g){return g.disabled===true},checked:function(g){return g.checked===true},selected:function(g){return g.selected===true},parent:function(g){return!!g.firstChild},empty:function(g){return!g.firstChild},has:function(g,h,l){return!!k(l[3],g).length},header:function(g){return/h\d/i.test(g.nodeName)},text:function(g){return"text"===g.type},radio:function(g){return"radio"===g.type},checkbox:function(g){return"checkbox"===g.type},file:function(g){return"file"===g.type},password:function(g){return"password"===g.type},submit:function(g){return"submit"===g.type},image:function(g){return"image"===g.type},reset:function(g){return"reset"===g.type},button:function(g){return"button"===g.type||g.nodeName.toLowerCase()==="button"},input:function(g){return/input|select|textarea|button/i.test(g.nodeName)}},setFilters:{first:function(g,h){return h===0},last:function(g,h,l,m){return h===m.length-1},even:function(g,h){return h%2===0},odd:function(g,h){return h%2===1},lt:function(g,h,l){return h<l[3]-0},gt:function(g,h,l){return h>l[3]-0},nth:function(g,h,l){return l[3]-0===h},eq:function(g,h,l){return l[3]-0===h}},filter:{PSEUDO:function(g,h,l,m){var q=h[1],p=n.filters[q];if(p)return p(g,l,h,m);else if(q==="contains")return(g.textContent||g.innerText||a([g])||"").indexOf(h[3])>=0;else if(q==="not"){h=h[3];l=0;for(m=h.length;l<m;l++)if(h[l]===g)return false;return true}else k.error("Syntax error, unrecognized expression: "+q)},CHILD:function(g,h){var l=h[1],m=g;switch(l){case"only":case"first":for(;m=m.previousSibling;)if(m.nodeType===1)return false;if(l==="first")return true;m=g;case"last":for(;m=m.nextSibling;)if(m.nodeType===1)return false;return true;case"nth":l=h[2];var q=h[3];if(l===1&&q===0)return true;h=h[0];var p=g.parentNode;if(p&&(p.sizcache!==h||!g.nodeIndex)){var v=0;for(m=p.firstChild;m;m=m.nextSibling)if(m.nodeType===1)m.nodeIndex=++v;p.sizcache=h}g=g.nodeIndex-q;return l===0?g===0:g%l===0&&g/l>=0}},ID:function(g,h){return g.nodeType===1&&g.getAttribute("id")===h},TAG:function(g,h){return h==="*"&&g.nodeType===1||g.nodeName.toLowerCase()===h},CLASS:function(g,h){return(" "+(g.className||g.getAttribute("class"))+" ").indexOf(h)>-1},ATTR:function(g,h){var l=h[1];g=n.attrHandle[l]?n.attrHandle[l](g):g[l]!=null?g[l]:g.getAttribute(l);l=g+"";var m=h[2];h=h[4];return g==null?m==="!=":m==="="?l===h:m==="*="?l.indexOf(h)>=0:m==="~="?(" "+l+" ").indexOf(h)>=0:!h?l&&g!==false:m==="!="?l!==h:m==="^="?l.indexOf(h)===0:m==="$="?l.substr(l.length-h.length)===h:m==="|="?l===h||l.substr(0,h.length+1)===h+"-":false},POS:function(g,h,l,m){var q=n.setFilters[h[2]];if(q)return q(g,l,h,m)}}},r=n.match.POS;for(var u in n.match){n.match[u]=new RegExp(n.match[u].source+/(?![^\[]*\])(?![^\(]*\))/.source);n.leftMatch[u]=new RegExp(/(^(?:.|\r|\n)*?)/.source+n.match[u].source.replace(/\\(\d+)/g,function(g,h){return"\\"+(h-0+1)}))}var z=function(g,h){g=Array.prototype.slice.call(g,0);if(h){h.push.apply(h,g);return h}return g};try{Array.prototype.slice.call(s.documentElement.childNodes,0)}catch(C){z=function(g,h){h=h||[];if(j.call(g)==="[object Array]")Array.prototype.push.apply(h,g);else if(typeof g.length==="number")for(var l=0,m=g.length;l<m;l++)h.push(g[l]);else for(l=0;g[l];l++)h.push(g[l]);return h}}var B;if(s.documentElement.compareDocumentPosition)B=function(g,h){if(!g.compareDocumentPosition||!h.compareDocumentPosition){if(g==h)i=true;return g.compareDocumentPosition?-1:1}g=g.compareDocumentPosition(h)&4?-1:g===h?0:1;if(g===0)i=true;return g};else if("sourceIndex"in s.documentElement)B=function(g,h){if(!g.sourceIndex||!h.sourceIndex){if(g==h)i=true;return g.sourceIndex?-1:1}g=g.sourceIndex-h.sourceIndex;if(g===0)i=true;return g};else if(s.createRange)B=function(g,h){if(!g.ownerDocument||!h.ownerDocument){if(g==h)i=true;return g.ownerDocument?-1:1}var l=g.ownerDocument.createRange(),m=h.ownerDocument.createRange();l.setStart(g,0);l.setEnd(g,0);m.setStart(h,0);m.setEnd(h,0);g=l.compareBoundaryPoints(Range.START_TO_END,m);if(g===0)i=true;return g};(function(){var g=s.createElement("div"),h="script"+(new Date).getTime();g.innerHTML="<a name='"+h+"'/>";var l=s.documentElement;l.insertBefore(g,l.firstChild);if(s.getElementById(h)){n.find.ID=function(m,q,p){if(typeof q.getElementById!=="undefined"&&!p)return(q=q.getElementById(m[1]))?q.id===m[1]||typeof q.getAttributeNode!=="undefined"&&q.getAttributeNode("id").nodeValue===m[1]?[q]:w:[]};n.filter.ID=function(m,q){var p=typeof m.getAttributeNode!=="undefined"&&m.getAttributeNode("id");return m.nodeType===1&&p&&p.nodeValue===q}}l.removeChild(g);l=g=null})();(function(){var g=s.createElement("div");g.appendChild(s.createComment(""));if(g.getElementsByTagName("*").length>0)n.find.TAG=function(h,l){l=l.getElementsByTagName(h[1]);if(h[1]==="*"){h=[];for(var m=0;l[m];m++)l[m].nodeType===1&&h.push(l[m]);l=h}return l};g.innerHTML="<a href='#'></a>";if(g.firstChild&&typeof g.firstChild.getAttribute!=="undefined"&&g.firstChild.getAttribute("href")!=="#")n.attrHandle.href=function(h){return h.getAttribute("href",2)};g=null})();s.querySelectorAll&&function(){var g=k,h=s.createElement("div");h.innerHTML="<p class='TEST'></p>";if(!(h.querySelectorAll&&h.querySelectorAll(".TEST").length===0)){k=function(m,q,p,v){q=q||s;if(!v&&q.nodeType===9&&!x(q))try{return z(q.querySelectorAll(m),p)}catch(t){}return g(m,q,p,v)};for(var l in g)k[l]=g[l];h=null}}();(function(){var g=s.createElement("div");g.innerHTML="<div class='test e'></div><div class='test'></div>";if(!(!g.getElementsByClassName||g.getElementsByClassName("e").length===0)){g.lastChild.className="e";if(g.getElementsByClassName("e").length!==1){n.order.splice(1,0,"CLASS");n.find.CLASS=function(h,l,m){if(typeof l.getElementsByClassName!=="undefined"&&!m)return l.getElementsByClassName(h[1])};g=null}}})();var E=s.compareDocumentPosition?function(g,h){return!!(g.compareDocumentPosition(h)&16)}:function(g,h){return g!==h&&(g.contains?g.contains(h):true)},x=function(g){return(g=(g?g.ownerDocument||g:0).documentElement)?g.nodeName!=="HTML":false},ga=function(g,h){var l=[],m="",q;for(h=h.nodeType?[h]:h;q=n.match.PSEUDO.exec(g);){m+=q[0];g=g.replace(n.match.PSEUDO,"")}g=n.relative[g]?g+"*":g;q=0;for(var p=h.length;q<p;q++)k(g,h[q],l);return k.filter(m,l)};c.find=k;c.expr=k.selectors;c.expr[":"]=c.expr.filters;c.unique=k.uniqueSort;c.text=a;c.isXMLDoc=x;c.contains=E})();var eb=/Until$/,fb=/^(?:parents|prevUntil|prevAll)/,gb=/,/;R=Array.prototype.slice;var Ia=function(a,b,d){if(c.isFunction(b))return c.grep(a,function(e,j){return!!b.call(e,j,e)===d});else if(b.nodeType)return c.grep(a,function(e){return e===b===d});else if(typeof b==="string"){var f=c.grep(a,function(e){return e.nodeType===1});if(Ua.test(b))return c.filter(b,f,!d);else b=c.filter(b,f)}return c.grep(a,function(e){return c.inArray(e,b)>=0===d})};c.fn.extend({find:function(a){for(var b=this.pushStack("","find",a),d=0,f=0,e=this.length;f<e;f++){d=b.length;c.find(a,this[f],b);if(f>0)for(var j=d;j<b.length;j++)for(var i=0;i<d;i++)if(b[i]===b[j]){b.splice(j--,1);break}}return b},has:function(a){var b=c(a);return this.filter(function(){for(var d=0,f=b.length;d<f;d++)if(c.contains(this,b[d]))return true})},not:function(a){return this.pushStack(Ia(this,a,false),"not",a)},filter:function(a){return this.pushStack(Ia(this,a,true),"filter",a)},is:function(a){return!!a&&c.filter(a,this).length>0},closest:function(a,b){if(c.isArray(a)){var d=[],f=this[0],e,j={},i;if(f&&a.length){e=0;for(var o=a.length;e<o;e++){i=a[e];j[i]||(j[i]=c.expr.match.POS.test(i)?c(i,b||this.context):i)}for(;f&&f.ownerDocument&&f!==b;){for(i in j){e=j[i];if(e.jquery?e.index(f)>-1:c(f).is(e)){d.push({selector:i,elem:f});delete j[i]}}f=f.parentNode}}return d}var k=c.expr.match.POS.test(a)?c(a,b||this.context):null;return this.map(function(n,r){for(;r&&r.ownerDocument&&r!==b;){if(k?k.index(r)>-1:c(r).is(a))return r;r=r.parentNode}return null})},index:function(a){if(!a||typeof a==="string")return c.inArray(this[0],a?c(a):this.parent().children());return c.inArray(a.jquery?a[0]:a,this)},add:function(a,b){a=typeof a==="string"?c(a,b||this.context):c.makeArray(a);b=c.merge(this.get(),a);return this.pushStack(qa(a[0])||qa(b[0])?b:c.unique(b))},andSelf:function(){return this.add(this.prevObject)}});c.each({parent:function(a){return(a=a.parentNode)&&a.nodeType!==11?a:null},parents:function(a){return c.dir(a,"parentNode")},parentsUntil:function(a,b,d){return c.dir(a,"parentNode",d)},next:function(a){return c.nth(a,2,"nextSibling")},prev:function(a){return c.nth(a,2,"previousSibling")},nextAll:function(a){return c.dir(a,"nextSibling")},prevAll:function(a){return c.dir(a,"previousSibling")},nextUntil:function(a,b,d){return c.dir(a,"nextSibling",d)},prevUntil:function(a,b,d){return c.dir(a,"previousSibling",d)},siblings:function(a){return c.sibling(a.parentNode.firstChild,a)},children:function(a){return c.sibling(a.firstChild)},contents:function(a){return c.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:c.makeArray(a.childNodes)}},function(a,b){c.fn[a]=function(d,f){var e=c.map(this,b,d);eb.test(a)||(f=d);if(f&&typeof f==="string")e=c.filter(f,e);e=this.length>1?c.unique(e):e;if((this.length>1||gb.test(f))&&fb.test(a))e=e.reverse();return this.pushStack(e,a,R.call(arguments).join(","))}});c.extend({filter:function(a,b,d){if(d)a=":not("+a+")";return c.find.matches(a,b)},dir:function(a,b,d){var f=[];for(a=a[b];a&&a.nodeType!==9&&(d===w||a.nodeType!==1||!c(a).is(d));){a.nodeType===1&&f.push(a);a=a[b]}return f},nth:function(a,b,d){b=b||1;for(var f=0;a;a=a[d])if(a.nodeType===1&&++f===b)break;return a},sibling:function(a,b){for(var d=[];a;a=a.nextSibling)a.nodeType===1&&a!==b&&d.push(a);return d}});var Ja=/ jQuery\d+="(?:\d+|null)"/g,V=/^\s+/,Ka=/(<([\w:]+)[^>]*?)\/>/g,hb=/^(?:area|br|col|embed|hr|img|input|link|meta|param)$/i,La=/<([\w:]+)/,ib=/<tbody/i,jb=/<|&#?\w+;/,ta=/<script|<object|<embed|<option|<style/i,ua=/checked\s*(?:[^=]|=\s*.checked.)/i,Ma=function(a,b,d){return hb.test(d)?a:b+"></"+d+">"},F={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]};F.optgroup=F.option;F.tbody=F.tfoot=F.colgroup=F.caption=F.thead;F.th=F.td;if(!c.support.htmlSerialize)F._default=[1,"div<div>","</div>"];c.fn.extend({text:function(a){if(c.isFunction(a))return this.each(function(b){var d=c(this);d.text(a.call(this,b,d.text()))});if(typeof a!=="object"&&a!==w)return this.empty().append((this[0]&&this[0].ownerDocument||s).createTextNode(a));return c.text(this)},wrapAll:function(a){if(c.isFunction(a))return this.each(function(d){c(this).wrapAll(a.call(this,d))});if(this[0]){var b=c(a,this[0].ownerDocument).eq(0).clone(true);this[0].parentNode&&b.insertBefore(this[0]);b.map(function(){for(var d=this;d.firstChild&&d.firstChild.nodeType===1;)d=d.firstChild;return d}).append(this)}return this},wrapInner:function(a){if(c.isFunction(a))return this.each(function(b){c(this).wrapInner(a.call(this,b))});return this.each(function(){var b=c(this),d=b.contents();d.length?d.wrapAll(a):b.append(a)})},wrap:function(a){return this.each(function(){c(this).wrapAll(a)})},unwrap:function(){return this.parent().each(function(){c.nodeName(this,"body")||c(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,true,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,true,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,false,function(b){this.parentNode.insertBefore(b,this)});else if(arguments.length){var a=c(arguments[0]);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,false,function(b){this.parentNode.insertBefore(b,this.nextSibling)});else if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,c(arguments[0]).toArray());return a}},remove:function(a,b){for(var d=0,f;(f=this[d])!=null;d++)if(!a||c.filter(a,[f]).length){if(!b&&f.nodeType===1){c.cleanData(f.getElementsByTagName("*"));c.cleanData([f])}f.parentNode&&f.parentNode.removeChild(f)}return this},empty:function(){for(var a=0,b;(b=this[a])!=null;a++)for(b.nodeType===1&&c.cleanData(b.getElementsByTagName("*"));b.firstChild;)b.removeChild(b.firstChild);return this},clone:function(a){var b=this.map(function(){if(!c.support.noCloneEvent&&!c.isXMLDoc(this)){var d=this.outerHTML,f=this.ownerDocument;if(!d){d=f.createElement("div");d.appendChild(this.cloneNode(true));d=d.innerHTML}return c.clean([d.replace(Ja,"").replace(/=([^="'>\s]+\/)>/g,'="$1">').replace(V,"")],f)[0]}else return this.cloneNode(true)});if(a===true){ra(this,b);ra(this.find("*"),b.find("*"))}return b},html:function(a){if(a===w)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(Ja,""):null;else if(typeof a==="string"&&!ta.test(a)&&(c.support.leadingWhitespace||!V.test(a))&&!F[(La.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Ka,Ma);try{for(var b=0,d=this.length;b<d;b++)if(this[b].nodeType===1){c.cleanData(this[b].getElementsByTagName("*"));this[b].innerHTML=a}}catch(f){this.empty().append(a)}}else c.isFunction(a)?this.each(function(e){var j=c(this),i=j.html();j.empty().append(function(){return a.call(this,e,i)})}):this.empty().append(a);return this},replaceWith:function(a){if(this[0]&&this[0].parentNode){if(c.isFunction(a))return this.each(function(b){var d=c(this),f=d.html();d.replaceWith(a.call(this,b,f))});if(typeof a!=="string")a=c(a).detach();return this.each(function(){var b=this.nextSibling,d=this.parentNode;c(this).remove();b?c(b).before(a):c(d).append(a)})}else return this.pushStack(c(c.isFunction(a)?a():a),"replaceWith",a)},detach:function(a){return this.remove(a,true)},domManip:function(a,b,d){function f(u){return c.nodeName(u,"table")?u.getElementsByTagName("tbody")[0]||u.appendChild(u.ownerDocument.createElement("tbody")):u}var e,j,i=a[0],o=[],k;if(!c.support.checkClone&&arguments.length===3&&typeof i==="string"&&ua.test(i))return this.each(function(){c(this).domManip(a,b,d,true)});if(c.isFunction(i))return this.each(function(u){var z=c(this);a[0]=i.call(this,u,b?z.html():w);z.domManip(a,b,d)});if(this[0]){e=i&&i.parentNode;e=c.support.parentNode&&e&&e.nodeType===11&&e.childNodes.length===this.length?{fragment:e}:sa(a,this,o);k=e.fragment;if(j=k.childNodes.length===1?(k=k.firstChild):k.firstChild){b=b&&c.nodeName(j,"tr");for(var n=0,r=this.length;n<r;n++)d.call(b?f(this[n],j):this[n],n>0||e.cacheable||this.length>1?k.cloneNode(true):k)}o.length&&c.each(o,Qa)}return this}});c.fragments={};c.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){c.fn[a]=function(d){var f=[];d=c(d);var e=this.length===1&&this[0].parentNode;if(e&&e.nodeType===11&&e.childNodes.length===1&&d.length===1){d[b](this[0]);return this}else{e=0;for(var j=d.length;e<j;e++){var i=(e>0?this.clone(true):this).get();c.fn[b].apply(c(d[e]),i);f=f.concat(i)}return this.pushStack(f,a,d.selector)}}});c.extend({clean:function(a,b,d,f){b=b||s;if(typeof b.createElement==="undefined")b=b.ownerDocument||b[0]&&b[0].ownerDocument||s;for(var e=[],j=0,i;(i=a[j])!=null;j++){if(typeof i==="number")i+="";if(i){if(typeof i==="string"&&!jb.test(i))i=b.createTextNode(i);else if(typeof i==="string"){i=i.replace(Ka,Ma);var o=(La.exec(i)||["",""])[1].toLowerCase(),k=F[o]||F._default,n=k[0],r=b.createElement("div");for(r.innerHTML=k[1]+i+k[2];n--;)r=r.lastChild;if(!c.support.tbody){n=ib.test(i);o=o==="table"&&!n?r.firstChild&&r.firstChild.childNodes:k[1]==="<table>"&&!n?r.childNodes:[];for(k=o.length-1;k>=0;--k)c.nodeName(o[k],"tbody")&&!o[k].childNodes.length&&o[k].parentNode.removeChild(o[k])}!c.support.leadingWhitespace&&V.test(i)&&r.insertBefore(b.createTextNode(V.exec(i)[0]),r.firstChild);i=r.childNodes}if(i.nodeType)e.push(i);else e=c.merge(e,i)}}if(d)for(j=0;e[j];j++)if(f&&c.nodeName(e[j],"script")&&(!e[j].type||e[j].type.toLowerCase()==="text/javascript"))f.push(e[j].parentNode?e[j].parentNode.removeChild(e[j]):e[j]);else{e[j].nodeType===1&&e.splice.apply(e,[j+1,0].concat(c.makeArray(e[j].getElementsByTagName("script"))));d.appendChild(e[j])}return e},cleanData:function(a){for(var b,d,f=c.cache,e=c.event.special,j=c.support.deleteExpando,i=0,o;(o=a[i])!=null;i++)if(d=o[c.expando]){b=f[d];if(b.events)for(var k in b.events)e[k]?c.event.remove(o,k):Ca(o,k,b.handle);if(j)delete o[c.expando];else o.removeAttribute&&o.removeAttribute(c.expando);delete f[d]}}});var kb=/z-?index|font-?weight|opacity|zoom|line-?height/i,Na=/alpha\([^)]*\)/,Oa=/opacity=([^)]*)/,ha=/float/i,ia=/-([a-z])/ig,lb=/([A-Z])/g,mb=/^-?\d+(?:px)?$/i,nb=/^-?\d/,ob={position:"absolute",visibility:"hidden",display:"block"},pb=["Left","Right"],qb=["Top","Bottom"],rb=s.defaultView&&s.defaultView.getComputedStyle,Pa=c.support.cssFloat?"cssFloat":"styleFloat",ja=function(a,b){return b.toUpperCase()};c.fn.css=function(a,b){return X(this,a,b,true,function(d,f,e){if(e===w)return c.curCSS(d,f);if(typeof e==="number"&&!kb.test(f))e+="px";c.style(d,f,e)})};c.extend({style:function(a,b,d){if(!a||a.nodeType===3||a.nodeType===8)return w;if((b==="width"||b==="height")&&parseFloat(d)<0)d=w;var f=a.style||a,e=d!==w;if(!c.support.opacity&&b==="opacity"){if(e){f.zoom=1;b=parseInt(d,10)+""==="NaN"?"":"alpha(opacity="+d*100+")";a=f.filter||c.curCSS(a,"filter")||"";f.filter=Na.test(a)?a.replace(Na,b):b}return f.filter&&f.filter.indexOf("opacity=")>=0?parseFloat(Oa.exec(f.filter)[1])/100+"":""}if(ha.test(b))b=Pa;b=b.replace(ia,ja);if(e)f[b]=d;return f[b]},css:function(a,b,d,f){if(b==="width"||b==="height"){var e,j=b==="width"?pb:qb;function i(){e=b==="width"?a.offsetWidth:a.offsetHeight;f!=="border"&&c.each(j,function(){f||(e-=parseFloat(c.curCSS(a,"padding"+this,true))||0);if(f==="margin")e+=parseFloat(c.curCSS(a,"margin"+this,true))||0;else e-=parseFloat(c.curCSS(a,"border"+this+"Width",true))||0})}a.offsetWidth!==0?i():c.swap(a,ob,i);return Math.max(0,Math.round(e))}return c.curCSS(a,b,d)},curCSS:function(a,b,d){var f,e=a.style;if(!c.support.opacity&&b==="opacity"&&a.currentStyle){f=Oa.test(a.currentStyle.filter||"")?parseFloat(RegExp.$1)/100+"":"";return f===""?"1":f}if(ha.test(b))b=Pa;if(!d&&e&&e[b])f=e[b];else if(rb){if(ha.test(b))b="float";b=b.replace(lb,"-$1").toLowerCase();e=a.ownerDocument.defaultView;if(!e)return null;if(a=e.getComputedStyle(a,null))f=a.getPropertyValue(b);if(b==="opacity"&&f==="")f="1"}else if(a.currentStyle){d=b.replace(ia,ja);f=a.currentStyle[b]||a.currentStyle[d];if(!mb.test(f)&&nb.test(f)){b=e.left;var j=a.runtimeStyle.left;a.runtimeStyle.left=a.currentStyle.left;e.left=d==="fontSize"?"1em":f||0;f=e.pixelLeft+"px";e.left=b;a.runtimeStyle.left=j}}return f},swap:function(a,b,d){var f={};for(var e in b){f[e]=a.style[e];a.style[e]=b[e]}d.call(a);for(e in b)a.style[e]=f[e]}});if(c.expr&&c.expr.filters){c.expr.filters.hidden=function(a){var b=a.offsetWidth,d=a.offsetHeight,f=a.nodeName.toLowerCase()==="tr";return b===0&&d===0&&!f?true:b>0&&d>0&&!f?false:c.curCSS(a,"display")==="none"};c.expr.filters.visible=function(a){return!c.expr.filters.hidden(a)}}var sb=J(),tb=/<script(.|\s)*?\/script>/gi,ub=/select|textarea/i,vb=/color|date|datetime|email|hidden|month|number|password|range|search|tel|text|time|url|week/i,N=/=\?(&|$)/,ka=/\?/,wb=/(\?|&)_=.*?(&|$)/,xb=/^(\w+:)?\/\/([^\/?#]+)/,yb=/%20/g,zb=c.fn.load;c.fn.extend({load:function(a,b,d){if(typeof a!=="string")return zb.call(this,a);else if(!this.length)return this;var f=a.indexOf(" ");if(f>=0){var e=a.slice(f,a.length);a=a.slice(0,f)}f="GET";if(b)if(c.isFunction(b)){d=b;b=null}else if(typeof b==="object"){b=c.param(b,c.ajaxSettings.traditional);f="POST"}var j=this;c.ajax({url:a,type:f,dataType:"html",data:b,complete:function(i,o){if(o==="success"||o==="notmodified")j.html(e?c("<div />").append(i.responseText.replace(tb,"")).find(e):i.responseText);d&&j.each(d,[i.responseText,o,i])}});return this},serialize:function(){return c.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?c.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||ub.test(this.nodeName)||vb.test(this.type))}).map(function(a,b){a=c(this).val();return a==null?null:c.isArray(a)?c.map(a,function(d){return{name:b.name,value:d}}):{name:b.name,value:a}}).get()}});c.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){c.fn[b]=function(d){return this.bind(b,d)}});c.extend({get:function(a,b,d,f){if(c.isFunction(b)){f=f||d;d=b;b=null}return c.ajax({type:"GET",url:a,data:b,success:d,dataType:f})},getScript:function(a,b){return c.get(a,null,b,"script")},getJSON:function(a,b,d){return c.get(a,b,d,"json")},post:function(a,b,d,f){if(c.isFunction(b)){f=f||d;d=b;b={}}return c.ajax({type:"POST",url:a,data:b,success:d,dataType:f})},ajaxSetup:function(a){c.extend(c.ajaxSettings,a)},ajaxSettings:{url:location.href,global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,xhr:A.XMLHttpRequest&&(A.location.protocol!=="file:"||!A.ActiveXObject)?function(){return new A.XMLHttpRequest}:function(){try{return new A.ActiveXObject("Microsoft.XMLHTTP")}catch(a){}},accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},etag:{},ajax:function(a){function b(){e.success&&e.success.call(k,o,i,x);e.global&&f("ajaxSuccess",[x,e])}function d(){e.complete&&e.complete.call(k,x,i);e.global&&f("ajaxComplete",[x,e]);e.global&&!--c.active&&c.event.trigger("ajaxStop")}function f(q,p){(e.context?c(e.context):c.event).trigger(q,p)}var e=c.extend(true,{},c.ajaxSettings,a),j,i,o,k=a&&a.context||e,n=e.type.toUpperCase();if(e.data&&e.processData&&typeof e.data!=="string")e.data=c.param(e.data,e.traditional);if(e.dataType==="jsonp"){if(n==="GET")N.test(e.url)||(e.url+=(ka.test(e.url)?"&":"?")+(e.jsonp||"callback")+"=?");else if(!e.data||!N.test(e.data))e.data=(e.data?e.data+"&":"")+(e.jsonp||"callback")+"=?";e.dataType="json"}if(e.dataType==="json"&&(e.data&&N.test(e.data)||N.test(e.url))){j=e.jsonpCallback||"jsonp"+sb++;if(e.data)e.data=(e.data+"").replace(N,"="+j+"$1");e.url=e.url.replace(N,"="+j+"$1");e.dataType="script";A[j]=A[j]||function(q){o=q;b();d();A[j]=w;try{delete A[j]}catch(p){}z&&z.removeChild(C)}}if(e.dataType==="script"&&e.cache===null)e.cache=false;if(e.cache===false&&n==="GET"){var r=J(),u=e.url.replace(wb,"$1_="+r+"$2");e.url=u+(u===e.url?(ka.test(e.url)?"&":"?")+"_="+r:"")}if(e.data&&n==="GET")e.url+=(ka.test(e.url)?"&":"?")+e.data;e.global&&!c.active++&&c.event.trigger("ajaxStart");r=(r=xb.exec(e.url))&&(r[1]&&r[1]!==location.protocol||r[2]!==location.host);if(e.dataType==="script"&&n==="GET"&&r){var z=s.getElementsByTagName("head")[0]||s.documentElement,C=s.createElement("script");C.src=e.url;if(e.scriptCharset)C.charset=e.scriptCharset;if(!j){var B=false;C.onload=C.onreadystatechange=function(){if(!B&&(!this.readyState||this.readyState==="loaded"||this.readyState==="complete")){B=true;b();d();C.onload=C.onreadystatechange=null;z&&C.parentNode&&z.removeChild(C)}}}z.insertBefore(C,z.firstChild);return w}var E=false,x=e.xhr();if(x){e.username?x.open(n,e.url,e.async,e.username,e.password):x.open(n,e.url,e.async);try{if(e.data||a&&a.contentType)x.setRequestHeader("Content-Type",e.contentType);if(e.ifModified){c.lastModified[e.url]&&x.setRequestHeader("If-Modified-Since",c.lastModified[e.url]);c.etag[e.url]&&x.setRequestHeader("If-None-Match",c.etag[e.url])}r||x.setRequestHeader("X-Requested-With","XMLHttpRequest");x.setRequestHeader("Accept",e.dataType&&e.accepts[e.dataType]?e.accepts[e.dataType]+", */*":e.accepts._default)}catch(ga){}if(e.beforeSend&&e.beforeSend.call(k,x,e)===false){e.global&&!--c.active&&c.event.trigger("ajaxStop");x.abort();return false}e.global&&f("ajaxSend",[x,e]);var g=x.onreadystatechange=function(q){if(!x||x.readyState===0||q==="abort"){E||d();E=true;if(x)x.onreadystatechange=c.noop}else if(!E&&x&&(x.readyState===4||q==="timeout")){E=true;x.onreadystatechange=c.noop;i=q==="timeout"?"timeout":!c.httpSuccess(x)?"error":e.ifModified&&c.httpNotModified(x,e.url)?"notmodified":"success";var p;if(i==="success")try{o=c.httpData(x,e.dataType,e)}catch(v){i="parsererror";p=v}if(i==="success"||i==="notmodified")j||b();else c.handleError(e,x,i,p);d();q==="timeout"&&x.abort();if(e.async)x=null}};try{var h=x.abort;x.abort=function(){x&&h.call(x);g("abort")}}catch(l){}e.async&&e.timeout>0&&setTimeout(function(){x&&!E&&g("timeout")},e.timeout);try{x.send(n==="POST"||n==="PUT"||n==="DELETE"?e.data:null)}catch(m){c.handleError(e,x,null,m);d()}e.async||g();return x}},handleError:function(a,b,d,f){if(a.error)a.error.call(a.context||a,b,d,f);if(a.global)(a.context?c(a.context):c.event).trigger("ajaxError",[b,a,f])},active:0,httpSuccess:function(a){try{return!a.status&&location.protocol==="file:"||a.status>=200&&a.status<300||a.status===304||a.status===1223||a.status===0}catch(b){}return false},httpNotModified:function(a,b){var d=a.getResponseHeader("Last-Modified"),f=a.getResponseHeader("Etag");if(d)c.lastModified[b]=d;if(f)c.etag[b]=f;return a.status===304||a.status===0},httpData:function(a,b,d){var f=a.getResponseHeader("content-type")||"",e=b==="xml"||!b&&f.indexOf("xml")>=0;a=e?a.responseXML:a.responseText;e&&a.documentElement.nodeName==="parsererror"&&c.error("parsererror");if(d&&d.dataFilter)a=d.dataFilter(a,b);if(typeof a==="string")if(b==="json"||!b&&f.indexOf("json")>=0)a=c.parseJSON(a);else if(b==="script"||!b&&f.indexOf("javascript")>=0)c.globalEval(a);return a},param:function(a,b){function d(i,o){if(c.isArray(o))c.each(o,function(k,n){b||/\[\]$/.test(i)?f(i,n):d(i+"["+(typeof n==="object"||c.isArray(n)?k:"")+"]",n)});else!b&&o!=null&&typeof o==="object"?c.each(o,function(k,n){d(i+"["+k+"]",n)}):f(i,o)}function f(i,o){o=c.isFunction(o)?o():o;e[e.length]=encodeURIComponent(i)+"="+encodeURIComponent(o)}var e=[];if(b===w)b=c.ajaxSettings.traditional;if(c.isArray(a)||a.jquery)c.each(a,function(){f(this.name,this.value)});else for(var j in a)d(j,a[j]);return e.join("&").replace(yb,"+")}});var la={},Ab=/toggle|show|hide/,Bb=/^([+-]=)?([\d+-.]+)(.*)$/,W,va=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]];c.fn.extend({show:function(a,b){if(a||a===0)return this.animate(K("show",3),a,b);else{a=0;for(b=this.length;a<b;a++){var d=c.data(this[a],"olddisplay");this[a].style.display=d||"";if(c.css(this[a],"display")==="none"){d=this[a].nodeName;var f;if(la[d])f=la[d];else{var e=c("<"+d+" />").appendTo("body");f=e.css("display");if(f==="none")f="block";e.remove();la[d]=f}c.data(this[a],"olddisplay",f)}}a=0;for(b=this.length;a<b;a++)this[a].style.display=c.data(this[a],"olddisplay")||"";return this}},hide:function(a,b){if(a||a===0)return this.animate(K("hide",3),a,b);else{a=0;for(b=this.length;a<b;a++){var d=c.data(this[a],"olddisplay");!d&&d!=="none"&&c.data(this[a],"olddisplay",c.css(this[a],"display"))}a=0;for(b=this.length;a<b;a++)this[a].style.display="none";return this}},_toggle:c.fn.toggle,toggle:function(a,b){var d=typeof a==="boolean";if(c.isFunction(a)&&c.isFunction(b))this._toggle.apply(this,arguments);else a==null||d?this.each(function(){var f=d?a:c(this).is(":hidden");c(this)[f?"show":"hide"]()}):this.animate(K("toggle",3),a,b);return this},fadeTo:function(a,b,d){return this.filter(":hidden").css("opacity",0).show().end().animate({opacity:b},a,d)},animate:function(a,b,d,f){var e=c.speed(b,d,f);if(c.isEmptyObject(a))return this.each(e.complete);return this[e.queue===false?"each":"queue"](function(){var j=c.extend({},e),i,o=this.nodeType===1&&c(this).is(":hidden"),k=this;for(i in a){var n=i.replace(ia,ja);if(i!==n){a[n]=a[i];delete a[i];i=n}if(a[i]==="hide"&&o||a[i]==="show"&&!o)return j.complete.call(this);if((i==="height"||i==="width")&&this.style){j.display=c.css(this,"display");j.overflow=this.style.overflow}if(c.isArray(a[i])){(j.specialEasing=j.specialEasing||{})[i]=a[i][1];a[i]=a[i][0]}}if(j.overflow!=null)this.style.overflow="hidden";j.curAnim=c.extend({},a);c.each(a,function(r,u){var z=new c.fx(k,j,r);if(Ab.test(u))z[u==="toggle"?o?"show":"hide":u](a);else{var C=Bb.exec(u),B=z.cur(true)||0;if(C){u=parseFloat(C[2]);var E=C[3]||"px";if(E!=="px"){k.style[r]=(u||1)+E;B=(u||1)/z.cur(true)*B;k.style[r]=B+E}if(C[1])u=(C[1]==="-="?-1:1)*u+B;z.custom(B,u,E)}else z.custom(B,u,"")}});return true})},stop:function(a,b){var d=c.timers;a&&this.queue([]);this.each(function(){for(var f=d.length-1;f>=0;f--)if(d[f].elem===this){b&&d[f](true);d.splice(f,1)}});b||this.dequeue();return this}});c.each({slideDown:K("show",1),slideUp:K("hide",1),slideToggle:K("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"}},function(a,b){c.fn[a]=function(d,f){return this.animate(b,d,f)}});c.extend({speed:function(a,b,d){var f=a&&typeof a==="object"?a:{complete:d||!d&&b||c.isFunction(a)&&a,duration:a,easing:d&&b||b&&!c.isFunction(b)&&b};f.duration=c.fx.off?0:typeof f.duration==="number"?f.duration:c.fx.speeds[f.duration]||c.fx.speeds._default;f.old=f.complete;f.complete=function(){f.queue!==false&&c(this).dequeue();c.isFunction(f.old)&&f.old.call(this)};return f},easing:{linear:function(a,b,d,f){return d+f*a},swing:function(a,b,d,f){return(-Math.cos(a*Math.PI)/2+0.5)*f+d}},timers:[],fx:function(a,b,d){this.options=b;this.elem=a;this.prop=d;if(!b.orig)b.orig={}}});c.fx.prototype={update:function(){this.options.step&&this.options.step.call(this.elem,this.now,this);(c.fx.step[this.prop]||c.fx.step._default)(this);if((this.prop==="height"||this.prop==="width")&&this.elem.style)this.elem.style.display="block"},cur:function(a){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null))return this.elem[this.prop];return(a=parseFloat(c.css(this.elem,this.prop,a)))&&a>-10000?a:parseFloat(c.curCSS(this.elem,this.prop))||0},custom:function(a,b,d){function f(j){return e.step(j)}this.startTime=J();this.start=a;this.end=b;this.unit=d||this.unit||"px";this.now=this.start;this.pos=this.state=0;var e=this;f.elem=this.elem;if(f()&&c.timers.push(f)&&!W)W=setInterval(c.fx.tick,13)},show:function(){this.options.orig[this.prop]=c.style(this.elem,this.prop);this.options.show=true;this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur());c(this.elem).show()},hide:function(){this.options.orig[this.prop]=c.style(this.elem,this.prop);this.options.hide=true;this.custom(this.cur(),0)},step:function(a){var b=J(),d=true;if(a||b>=this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;for(var f in this.options.curAnim)if(this.options.curAnim[f]!==true)d=false;if(d){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;a=c.data(this.elem,"olddisplay");this.elem.style.display=a?a:this.options.display;if(c.css(this.elem,"display")==="none")this.elem.style.display="block"}this.options.hide&&c(this.elem).hide();if(this.options.hide||this.options.show)for(var e in this.options.curAnim)c.style(this.elem,e,this.options.orig[e]);this.options.complete.call(this.elem)}return false}else{e=b-this.startTime;this.state=e/this.options.duration;a=this.options.easing||(c.easing.swing?"swing":"linear");this.pos=c.easing[this.options.specialEasing&&this.options.specialEasing[this.prop]||a](this.state,e,0,1,this.options.duration);this.now=this.start+(this.end-this.start)*this.pos;this.update()}return true}};c.extend(c.fx,{tick:function(){for(var a=c.timers,b=0;b<a.length;b++)a[b]()||a.splice(b--,1);a.length||c.fx.stop()},stop:function(){clearInterval(W);W=null},speeds:{slow:600,fast:200,_default:400},step:{opacity:function(a){c.style(a.elem,"opacity",a.now)},_default:function(a){if(a.elem.style&&a.elem.style[a.prop]!=null)a.elem.style[a.prop]=(a.prop==="width"||a.prop==="height"?Math.max(0,a.now):a.now)+a.unit;else a.elem[a.prop]=a.now}}});if(c.expr&&c.expr.filters)c.expr.filters.animated=function(a){return c.grep(c.timers,function(b){return a===b.elem}).length};c.fn.offset="getBoundingClientRect"in s.documentElement?function(a){var b=this[0];if(a)return this.each(function(e){c.offset.setOffset(this,a,e)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return c.offset.bodyOffset(b);var d=b.getBoundingClientRect(),f=b.ownerDocument;b=f.body;f=f.documentElement;return{top:d.top+(self.pageYOffset||c.support.boxModel&&f.scrollTop||b.scrollTop)-(f.clientTop||b.clientTop||0),left:d.left+(self.pageXOffset||c.support.boxModel&&f.scrollLeft||b.scrollLeft)-(f.clientLeft||b.clientLeft||0)}}:function(a){var b=this[0];if(a)return this.each(function(r){c.offset.setOffset(this,a,r)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return c.offset.bodyOffset(b);c.offset.initialize();var d=b.offsetParent,f=b,e=b.ownerDocument,j,i=e.documentElement,o=e.body;f=(e=e.defaultView)?e.getComputedStyle(b,null):b.currentStyle;for(var k=b.offsetTop,n=b.offsetLeft;(b=b.parentNode)&&b!==o&&b!==i;){if(c.offset.supportsFixedPosition&&f.position==="fixed")break;j=e?e.getComputedStyle(b,null):b.currentStyle;k-=b.scrollTop;n-=b.scrollLeft;if(b===d){k+=b.offsetTop;n+=b.offsetLeft;if(c.offset.doesNotAddBorder&&!(c.offset.doesAddBorderForTableAndCells&&/^t(able|d|h)$/i.test(b.nodeName))){k+=parseFloat(j.borderTopWidth)||0;n+=parseFloat(j.borderLeftWidth)||0}f=d;d=b.offsetParent}if(c.offset.subtractsBorderForOverflowNotVisible&&j.overflow!=="visible"){k+=parseFloat(j.borderTopWidth)||0;n+=parseFloat(j.borderLeftWidth)||0}f=j}if(f.position==="relative"||f.position==="static"){k+=o.offsetTop;n+=o.offsetLeft}if(c.offset.supportsFixedPosition&&f.position==="fixed"){k+=Math.max(i.scrollTop,o.scrollTop);n+=Math.max(i.scrollLeft,o.scrollLeft)}return{top:k,left:n}};c.offset={initialize:function(){var a=s.body,b=s.createElement("div"),d,f,e,j=parseFloat(c.curCSS(a,"marginTop",true))||0;c.extend(b.style,{position:"absolute",top:0,left:0,margin:0,border:0,width:"1px",height:"1px",visibility:"hidden"});b.innerHTML="<div style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;'><div></div></div><table style='position:absolute;top:0;left:0;margin:0;border:5px solid #000;padding:0;width:1px;height:1px;' cellpadding='0' cellspacing='0'><tr><td></td></tr></table>";a.insertBefore(b,a.firstChild);d=b.firstChild;f=d.firstChild;e=d.nextSibling.firstChild.firstChild;this.doesNotAddBorder=f.offsetTop!==5;this.doesAddBorderForTableAndCells=e.offsetTop===5;f.style.position="fixed";f.style.top="20px";this.supportsFixedPosition=f.offsetTop===20||f.offsetTop===15;f.style.position=f.style.top="";d.style.overflow="hidden";d.style.position="relative";this.subtractsBorderForOverflowNotVisible=f.offsetTop===-5;this.doesNotIncludeMarginInBodyOffset=a.offsetTop!==j;a.removeChild(b);c.offset.initialize=c.noop},bodyOffset:function(a){var b=a.offsetTop,d=a.offsetLeft;c.offset.initialize();if(c.offset.doesNotIncludeMarginInBodyOffset){b+=parseFloat(c.curCSS(a,"marginTop",true))||0;d+=parseFloat(c.curCSS(a,"marginLeft",true))||0}return{top:b,left:d}},setOffset:function(a,b,d){if(/static/.test(c.curCSS(a,"position")))a.style.position="relative";var f=c(a),e=f.offset(),j=parseInt(c.curCSS(a,"top",true),10)||0,i=parseInt(c.curCSS(a,"left",true),10)||0;if(c.isFunction(b))b=b.call(a,d,e);d={top:b.top-e.top+j,left:b.left-e.left+i};"using"in b?b.using.call(a,d):f.css(d)}};c.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),d=this.offset(),f=/^body|html$/i.test(b[0].nodeName)?{top:0,left:0}:b.offset();d.top-=parseFloat(c.curCSS(a,"marginTop",true))||0;d.left-=parseFloat(c.curCSS(a,"marginLeft",true))||0;f.top+=parseFloat(c.curCSS(b[0],"borderTopWidth",true))||0;f.left+=parseFloat(c.curCSS(b[0],"borderLeftWidth",true))||0;return{top:d.top-
f.top,left:d.left-f.left}},offsetParent:function(){return this.map(function(){for(var a=this.offsetParent||s.body;a&&!/^body|html$/i.test(a.nodeName)&&c.css(a,"position")==="static";)a=a.offsetParent;return a})}});c.each(["Left","Top"],function(a,b){var d="scroll"+b;c.fn[d]=function(f){var e=this[0],j;if(!e)return null;if(f!==w)return this.each(function(){if(j=wa(this))j.scrollTo(!a?f:c(j).scrollLeft(),a?f:c(j).scrollTop());else this[d]=f});else return(j=wa(e))?"pageXOffset"in j?j[a?"pageYOffset":"pageXOffset"]:c.support.boxModel&&j.document.documentElement[d]||j.document.body[d]:e[d]}});c.each(["Height","Width"],function(a,b){var d=b.toLowerCase();c.fn["inner"+b]=function(){return this[0]?c.css(this[0],d,false,"padding"):null};c.fn["outer"+b]=function(f){return this[0]?c.css(this[0],d,false,f?"margin":"border"):null};c.fn[d]=function(f){var e=this[0];if(!e)return f==null?null:this;if(c.isFunction(f))return this.each(function(j){var i=c(this);i[d](f.call(this,j,i[d]()))});return"scrollTo"in
e&&e.document?e.document.compatMode==="CSS1Compat"&&e.document.documentElement["client"+b]||e.document.body["client"+b]:e.nodeType===9?Math.max(e.documentElement["client"+b],e.body["scroll"+b],e.documentElement["scroll"+b],e.body["offset"+b],e.documentElement["offset"+b]):f===w?c.css(e,d):this.css(d,typeof f==="string"?f:f+"px")}});A.jQuery=A.$=c})(window);
window.MV=window.MV||{};window.MV.Util=MV.Util||{};$.extend(MV.Util,{extend:function(obj)
{$.extend(true,this,obj);}});
MV.Util.extend({namespace:function(nsString){var parts=nsString.split('.'),parent=MV,i;if(parts[0]==='MV'){parts=parts.slice(1);}
for(i=0;i<parts.length;i++){if(typeof parent[parts[i]]==='undefined'){parent[parts[i]]={};}
parent=parent[parts[i]];}
return parent;}});
var Config={Analytics:{Client:'BCBST',Version:'EPD 3.0',Enabled:true,Interval:0}};
(function(win){win.MV=win.MV||{};win.MV.WebServices=win.MV.WebServices||{};var WebService={Call:function(webservice,params,callback,error){return this._call(webservice,params,function(results,success){if(success&&callback){callback(results);}},function(xhr,status,e){if(error){var errorObj={Status:xhr.status,StatusText:xhr.statusText}
try{errorObj.ResponseData=eval('('+xhr.responseText+')');}catch(e){errorObj.ResponseText=xhr.responseText;}
error(errorObj);}});},_formatWSParameters:function(paramobj){var returnary=[];for(var property in paramobj){returnary.push(property);returnary.push(paramobj[property]);}
return returnary;},_call:function(webservice,params,callback,error)
{var options;if(MV.Config&&MV.Config.Platform=='java')
{options=this._getJavaWebServiceParams(webservice,params,callback,error);}
else
{options=this._getDotNetWebServiceParams(webservice,params,callback,error);}
return $.ajax(options);},_getJavaWebServiceParams:function(webservice,params,callback,error)
{var FormatParams=function(paramArray)
{var retstr='';for(var i=0;i<paramArray.length;i+=2){retstr+=paramArray[i]+"="+paramArray[i+1]+'&';}
if(retstr.length>0){retstr=retstr.substr(0,retstr.length-1);}
return retstr;};var options={global:false,type:'POST',dataType:'json',contentType:'application/x-www-form-urlencoded',url:this.Location+'?action='+webservice,data:FormatParams(params)||'',success:callback,error:error};return options;},_getDotNetWebServiceParams:function(webservice,params,callback,error)
{var FormatParams=function(paramArray)
{if(!paramArray)
{return'{}';}
else
{return JSON.stringify(params);}};var options={global:false,type:'POST',dataType:'json',contentType:'application/json',url:this.Location+"/"+webservice,data:FormatParams(params)||'',success:function(results,success){callback(results.d,success);},error:error};return options;}};var BatchWebService={BatchFunctions:{},IsAborted:false,Call:function(batchCallback)
{this.IsAborted=false;var that=this;var fireOnCompletes=function()
{for(var x in that.BatchFunctions.batchData)
{if(that.BatchFunctions.batchData[x].Callback&&!that.BatchFunctions.batchData[x].Errored){that.BatchFunctions.batchData[x].Callback(that.BatchFunctions.batchData[x].Results);}
else if(that.BatchFunctions.batchData[x].ErrorCallback&&that.BatchFunctions.batchData[x].Errored)
{that.BatchFunctions.batchData[x].ErrorCallback(that.BatchFunctions.batchData[x].Results);}}
if(batchCallback){batchCallback(that.BatchFunctions.batchData);}
if(that.BatchFunctions.batchCallback){that.BatchFunctions.batchCallback(that.BatchFunctions.batchData);}};var masterCallback=function()
{var bool=true;for(var ws in that.BatchFunctions.batchData)
{bool=bool&&that.BatchFunctions.batchData[ws].Completed;}
if(bool&!that.IsAborted){fireOnCompletes();}};for(var ws in this.BatchFunctions.batchData)
{var current=this.BatchFunctions.batchData[ws];var func=function()
{var that=this;return function(results)
{that.Results=results;that.Completed=true;masterCallback();};};var funcError=function()
{var that=this;return function(results)
{that.Results=results;that.Completed=true;that.Errored=true;masterCallback();};};if(!current.Params)
{current.XHR=current.WebService[current.Method](func.call(current),funcError.call(current));}
else
{current.XHR=current.WebService[current.Method](current.Params,func.call(current),funcError.call(current));}}},Abort:function()
{this.IsAborted=true;for(var x in this.BatchFunctions.batchData)
{if(this.BatchFunctions.batchData[x].XHR){this.BatchFunctions.batchData[x].XHR.abort();}}}};win.MV.WebServices={Add:function(obj)
{obj=$.extend(obj,WebService);win.MV.WebServices[obj.Name]=obj;},CreateBatch:function(obj)
{var batch=$.extend({},BatchWebService);batch.BatchFunctions=obj;return batch;}};if(!this.JSON){this.JSON={};}
(function(){function f(n){return n<10?'0'+n:n;}
if(typeof Date.prototype.toJSON!=='function'){Date.prototype.toJSON=function(key){return isFinite(this.valueOf())?this.getUTCFullYear()+'-'+
f(this.getUTCMonth()+1)+'-'+
f(this.getUTCDate())+'T'+
f(this.getUTCHours())+':'+
f(this.getUTCMinutes())+':'+
f(this.getUTCSeconds())+'Z':null;};String.prototype.toJSON=Number.prototype.toJSON=Boolean.prototype.toJSON=function(key){return this.valueOf();};}
var cx=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,escapable=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,gap,indent,meta={'\b':'\\b','\t':'\\t','\n':'\\n','\f':'\\f','\r':'\\r','"':'\\"','\\':'\\\\'},rep;function quote(string){escapable.lastIndex=0;return escapable.test(string)?'"'+string.replace(escapable,function(a){var c=meta[a];return typeof c==='string'?c:'\\u'+('0000'+a.charCodeAt(0).toString(16)).slice(-4);})+'"':'"'+string+'"';}
function str(key,holder){var i,k,v,length,mind=gap,partial,value=holder[key];if(value&&typeof value==='object'&&typeof value.toJSON==='function'){value=value.toJSON(key);}
if(typeof rep==='function'){value=rep.call(holder,key,value);}
switch(typeof value){case'string':return quote(value);case'number':return isFinite(value)?String(value):'null';case'boolean':case'null':return String(value);case'object':if(!value){return'null';}
gap+=indent;partial=[];if(Object.prototype.toString.apply(value)==='[object Array]'){length=value.length;for(i=0;i<length;i+=1){partial[i]=str(i,value)||'null';}
v=partial.length===0?'[]':gap?'[\n'+gap+
partial.join(',\n'+gap)+'\n'+
mind+']':'['+partial.join(',')+']';gap=mind;return v;}
if(rep&&typeof rep==='object'){length=rep.length;for(i=0;i<length;i+=1){k=rep[i];if(typeof k==='string'){v=str(k,value);if(v){partial.push(quote(k)+(gap?': ':':')+v);}}}}else{for(k in value){if(Object.hasOwnProperty.call(value,k)){v=str(k,value);if(v){partial.push(quote(k)+(gap?': ':':')+v);}}}}
v=partial.length===0?'{}':gap?'{\n'+gap+partial.join(',\n'+gap)+'\n'+
mind+'}':'{'+partial.join(',')+'}';gap=mind;return v;}}
if(typeof JSON.stringify!=='function'){JSON.stringify=function(value,replacer,space){var i;gap='';indent='';if(typeof space==='number'){for(i=0;i<space;i+=1){indent+=' ';}}else if(typeof space==='string'){indent=space;}
rep=replacer;if(replacer&&typeof replacer!=='function'&&(typeof replacer!=='object'||typeof replacer.length!=='number')){throw new Error('JSON.stringify');}
return str('',{'':value});};}
if(typeof JSON.parse!=='function'){JSON.parse=function(text,reviver){var j;function walk(holder,key){var k,v,value=holder[key];if(value&&typeof value==='object'){for(k in value){if(Object.hasOwnProperty.call(value,k)){v=walk(value,k);if(v!==undefined){value[k]=v;}else{delete value[k];}}}}
return reviver.call(holder,key,value);}
cx.lastIndex=0;if(cx.test(text)){text=text.replace(cx,function(a){return'\\u'+
('0000'+a.charCodeAt(0).toString(16)).slice(-4);});}
if(/^[\],:{}\s]*$/.test(text.replace(/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,'@').replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,']').replace(/(?:^|:|,)(?:\s*\[)+/g,''))){j=eval('('+text+')');return typeof reviver==='function'?walk({'':j},''):j;}
throw new SyntaxError('JSON.parse');};}}());})(window);
(function(win){win.MV=win.MV||{};win.MV.Strings=win.MV.Strings||{};var StringsAPI={Name:'Strings',Location:'strings.asmx',Get:function(groups,callback,error)
{this.Call('GetStringEntriesForGroupUI',{groupsCSV:groups.join(',')},callback,error);}};MV.WebServices.Add(StringsAPI);win.MV.Strings={Entries:{},Clear:function()
{this.Entries={};},Load:function(groups,callback,error)
{var that=this;var getCallback=function(results)
{$.extend(that.Entries,results);if(callback)
{callback(results);}};MV.WebServices.Strings.Get(groups,getCallback,error);}};})(window);
MV=MV||{};MV.Event={fns:[],fire:function(){for(var i=0;i<this.fns.length;i++){this.fns[i].apply(null,arguments);}},subscribe:function(fn){var alreadySubscribed=false;for(var i=0,l=this.fns.length;i<l;i++){if(this.fns[i].toString()==fn.toString()){alreadySubscribed=true;break;}}
if(!alreadySubscribed){this.fns.push(fn);}},unsubscribe:function(fn){for(var i=0;i<this.fns.length;i++){if(this.fns[i]===fn){this.fns.splice(i,1);}}}};
MV=MV||{};MV.EventsManager={events:{},getEvent:function(eventId){return this.events[eventId]||null;},addEvent:function(eventId,event){if(event&&event instanceof MV.Event){this.events[eventId]=event;}else if(!this.events[eventId]){this.events[eventId]=$.extend(true,{},MV.Event);}
return this.events[eventId];},subscribeToEvent:function(eventId,func){try{var event=this.getEvent(eventId);if(!event){event=this.addEvent(eventId);}
event.subscribe(func);}catch(error){MV.Console.call('warn','EventsManager.subscribeToEvent :: '+eventId+' :: '+error);}},unsubscribeFromEvent:function(eventId,func){try{this.events[eventId].unsubscribe(func);}catch(error){MV.Console.call('warn','EventsManager.usubscribeFromEvent :: '+eventId+' :: '+error);}},fireEvent:function(eventId,args){try{var event=this.getEvent(eventId);if(!event){return false}
if(args instanceof Array){event.fire.apply(event,args);}else{event.fire(args);}}catch(error){}}};
MV=MV||{};MV.ResultsManager={results:[],resultsPerPage:0,resultsPerPageOptions:[],updatedDate:null,init:function(opts){this.setResults(opts.results||[]);this.setNumberOfResultsPerPage(opts.resultsPerPage||0);this.setNumberOfResultsPerPageOptions(opts.resultsPerPageOptions||[]);},moveValuesToTop:function(field,values){if(!field||!values||!values.length){return;}
var valueHash=[];for(var vi=0,vl=values.length;vi<vl;vi++){valueHash[values[vi]]=true;}
var top=[];var bottom=[];for(var ri=0,rl=this.results.length;ri<rl;ri++){var result=this.results[ri];if((result[field]!==undefined)&&valueHash[result[field]]){top.push(result);}else{bottom.push(result);}}
this.results=top.concat(bottom);},sortResults:function(params){MV.Util.Array.sort(this.results,params);},setResults:function(data){this.results=data;},setNumberOfResultsPerPage:function(value){this.resultsPerPage=value;},getNumberOfResultsPerPage:function(){return this.resultsPerPage||this.getNumberOfResults();},setNumberOfResultsPerPageOptions:function(options){if(options instanceof Array){this.resultsPerPageOptions=options;}else{this.resultsPerPageOptions=[options];}},getNumberOfResultsPerPageOptions:function(){if(this.resultsPerPageOptions[0]&&(this.resultsPerPageOptions[0]<this.getNumberOfResults())){return this.resultsPerPageOptions;}else{return[];}},getNumberOfResults:function(){return this.results.length;},getResultsFromPosition:function(index){return this.getResultsForRange([index,index+this.resultsPerPage]);},getResultsForPage:function(pageNumber){return this.getResultsFromPosition(((pageNumber-1)*this.resultsPerPage)+1);},getResultsForRange:function(range){var numResults=this.getNumberOfResults();if(range[0]>numResults){return[];}
if(range[1]>numResults){return this.results.slice(range[0]-1);}
return this.results.slice(range[0]-1,range[1]-1);},getPageRanges:function(){var numResults=this.getNumberOfResults();var ranges=[];var range=[1,this.resultsPerPage];while(true){if(range[0]>numResults){return ranges;}else if(range[1]>=numResults){range[1]=numResults;ranges.push(range);return ranges;}
ranges.push(range);range=[range[0]+this.resultsPerPage,range[1]+this.resultsPerPage];}},toggleFlagByKey:function(flag,key,value){for(var i=0,l=this.results.length;i<l;i++){if(this.results[i][key]===value){this.results[i][flag]=!this.results[i][flag];return this.results[i][key];}}},removeResultByKey:function(key,value){for(var i=0,l=this.results.length;i<l;i++){if(this.results[i][key]===value){return this.results.splice(i,1)[0];}}},getResults:function(){return this.results;},setUpdatedDate:function(date){this.updatedDate=date;},getUpdatedDate:function(){return this.updatedDate;}};
var Console={};Console.enabled=true;Console.log=function(){if(Console.enabled&&window.console&&window.console.log){console.log.apply(console,arguments);}};Console.debug=function(){if(Console.enabled&&window.console&&window.console.debug){console.debug.apply(console,arguments);}};Console.info=function(){if(Console.enabled&&window.console&&window.console.info){console.info.apply(console,arguments);}};Console.warn=function(){if(Console.enabled&&window.console&&window.console.warn){console.warn.apply(console,arguments);}};Console.error=function(){if(Console.enabled&&window.console&&window.console.error){console.error.apply(console,arguments);}else if(Console.enabled){var errMsg="";for(arg in arguments){errMsg+=arg;}
alert("An error has occurred. Please enable FireBug to debug it. "+
errMsg);}};Console.assert=function(){if(Console.enabled&&window.console&&window.console.assert){console.assert.apply(console,arguments);}else if(Console.enabled&&arguments[0]==false){alert("An error has occurred. Please enable FireBug to debug it. "+
arguments[1]);}};Console.dir=function(){if(Console.enabled&&window.console&&window.console.dir){console.dir.apply(console,arguments);}};Console.time=function(){if(Console.enabled&&window.console&&window.console.time){console.time.apply(console,arguments);}};Console.timeEnd=function(){if(Console.enabled&&window.console&&window.console.timeEnd){console.timeEnd.apply(console,arguments);}};
window.MV=MV||{};MV.Console={call:function(method){if(window.Console&&window.Debug){Console[method].apply(Console,[].slice.call(arguments,1));}}};
MV.Util.extend({DOMCreation:{createElementsAndBindDataSupplant:function(data,DOMTemplate,transformFunction){var fragment=document.createDocumentFragment();var dataItem,transformedData,returnedDOMTemplate,$DOMTemplate;for(var i=0,l=data.length;i<l;i++){dataItem=data[i];if(dataItem){returnedDOMTemplate=DOMTemplate;if(typeof DOMTemplate==='function'){returnedDOMTemplate=DOMTemplate(dataItem);}
$DOMTemplate=$('<div>').append(returnedDOMTemplate.clone());transformedData=transformFunction?transformFunction(dataItem,{}):dataItem;transformedData.Zebra=((i+1)%2==0)?'even':'odd';transformedData.Level=dataItem.Level!==null?dataItem.Level:'';if($DOMTemplate.hasClass('template')){fragment.appendChild($DOMTemplate.supplant(transformedData).get(0).childNodes[1]);}else{fragment.appendChild($DOMTemplate.supplant(transformedData).get(0).childNodes[0]);}}}
return fragment;}}});
MV.Util.extend({DOMCreation:{formatToParentChildrenSupplant:function(data,parentTemplate,childTemplate,transformFunction,cache){var $parentTemplate=parentTemplate.clone();var dataItem,$childTemplate,transformedData,returnedChildTemplate;for(var i=0,l=data.length;i<l;i++){dataItem=data[i];if(dataItem){returnedChildTemplate=childTemplate;if(typeof childTemplate==='function'){returnedChildTemplate=childTemplate(dataItem);}
$childTemplate=returnedChildTemplate.clone();transformedData=transformFunction?transformFunction(dataItem,{Zebra:((i+1)%2==0)?'even':'odd',Level:dataItem.Level!==null?dataItem.Level:''}):dataItem;if($childTemplate.hasClass('template')){$parentTemplate.append($childTemplate.supplant(transformedData,cache)[0].childNodes);}else{$parentTemplate.append($childTemplate.supplant(transformedData,cache));}}}
return $parentTemplate;}}});
MV.Util.extend({Array:{sort:function(data,params,copy){params=params.length?params:[params];data=copy?$.extend(true,[],data):data;var sortFunction=function(a,b){var retval,typedData;for(var i=0,l=params.length;i<l;i++){var param=params[i];typedData=getTypedData(a,b,param.element,param.type);retval=innerSort(typedData.a,typedData.b,param.direction);if(retval!=0){break;}}
return retval;};var getTypedData=function(a,b,element,type){var preA,preB;var typedA,typedB;preA=getValue(a,element);preB=getValue(b,element);if(type=='date'){typedA=preA?new Date(Date.parse(preA)):new Date(9999);typedB=preB?new Date(Date.parse(preB)):new Date(9999);}else if(type=='boolean'){typedA=preA?'a':'b';typedB=preB?'a':'b';}else if(type=='number'){if(typeof preA=='number'){typedA=preA;}else{typedA=preA?new Number(preA):Number.MAX_VALUE;}
if(typeof preB=='number'){typedB=preB;}else{typedB=preB?new Number(preB):Number.MAX_VALUE;}}else{typedA=preA?new String(preA).toLowerCase():'~~~~~~~~~~';typedB=preB?new String(preB).toLowerCase():'~~~~~~~~~~';}
return{a:typedA,b:typedB};};var getValue=function(obj,element){var elements=element.split(/\s+/);for(var i=0,e=elements.length;i<e;i++){var levels=elements[i].split(/\./);var value=obj[levels[0]];if(value===undefined||value===null){continue;}
for(var j=1,l=levels.length;j<l;j++){if(typeof value=="object"){value=value[levels[j]];if(value===undefined||value===null){break;}}else{value=undefined;break;}}
if(value!==undefined&&value!==null){return value;}}
return null;};var innerSort=function(a,b,direction){var retval;if(a>b){retval=1;}else if(a<b){retval=-1;}else{retval=0;}
if(direction=='descending'){retval*=-1;}
return retval;};if(data)data.sort(sortFunction);return data;}}});
MV.Util.extend({Events:{jumpLinks:function(params){var container=(params.scrollElement&&typeof params.scrollElement==='object'&&params.scrollElement.length>0)?params.scrollElement:$(params.scrollElement);params.$content.find('.jump').each(function(i){var anchor=$(this);anchor.unbind('click').bind('click',function(event){event.preventDefault();var href=anchor.attr('href');var hashIndex=href.indexOf('#');var name=anchor.attr('href').substr(hashIndex+1);var offset=params.$content.find('a[name='+name+']').offset().top-params.$content.offset().top+container.scrollTop()-params.offset;if(params.scrollElement===undefined){scrollTo(0,offset);}else{container.animate({scrollTop:offset},0);}
return false;});});}}});
MV.Util.extend({String:{supplant:function(s,o){return s.replace(/\%7B/g,'{').replace(/\%7D/g,'}').replace(/{([^{}]*)}/g,function(a,b){var retval,r,ar=b.split('.'),data=o;switch(ar.length){case 1:r=typeof data=='object'?data[ar[0]]:data;break;case 2:r=data[ar[0]][ar[1]];break;default:r=data[ar[0]];}
switch(typeof r){case'string':case'number':retval=r;break;case'object':if(r&&r.jquery&&r.length>0){retval=document.createElement('div');retval.appendChild(r[0]);retval=retval.innerHTML;}else{retval=a;}
break;default:retval=a;}
return retval;});}}});
MV=MV||{};MV.Validation=(function(){var debug=false;var checkable=function(element){return(/radio|checkbox/i).test(element.type);};var getLength=function(value,element){switch(element.nodeName.toLowerCase()){case'select':return $("option:selected",element).length;case'input':if(checkable(element)){return this.findByName(element.name).filter(':checked').length;}}
return value.length;};var findByName=function(name){var form=this.currentForm;return $(document.getElementsByName(name)).map(function(index,element){return element.form==form&&element.name==name&&element||null;});};var getValue=function(selector){var element=$('#'+selector);var value=element.val();var label=element.prev().text();return $.trim(value).length>0&&label==value?'':value;};var getDependentValues=function(selectorArray){var valueArray=[];for(var i=0;i<selectorArray.length;i++){var trueVal=getValue(selectorArray[i]);if(trueVal){valueArray.push(trueVal);}}
return valueArray;};var isNumber=function(value){return(/^-?(?:\d+|\d{1,3}(?:,\d{3})+)(?:\.\d+)?$/).test(value);};var defaultValidators={required:function(value,element,param){switch(element.nodeName.toLowerCase()){case'select':var options=$("option:selected",element);return options.length>0&&(element.type=="select-multiple"||($.browser.msie&&!(options[0].attributes.value.specified)?options[0].text:options[0].value).length>0);case'input':if(checkable(element)){return getLength(value,element)>0;}else{return $.trim(value).length>0;}
break;default:return $.trim(value).length>0;}},number:function(value,element){return value===''||isNumber(value);},digits:function(value,element){return(/^\d+$/).test(value);},exclusiveRequired:function(value,element,additionalArgs){value=$.trim(value);var label=$(element).prev().text();var dependentElement=$('#'+additionalArgs[0]);var dependantValue=$.trim(dependentElement.val());var dependantLabel=dependentElement.prev().text();value=value.length>0&&label==value?'':value;dependantValue=dependantValue.length>0&&dependantLabel==dependantValue?'':dependantValue;return(value||dependantValue)&&(!value||!dependantValue);},dependent:function(value,element,additionalArgs){var dependents=getDependentValues(additionalArgs);return $.trim(value).length>0||dependents.length>0;},location:function(value,element,additionalArgs){var dependents=getDependentValues(additionalArgs);return dependents.length==additionalArgs.length||($.trim(value).length>0&&isNumber(value));},zipCode:function(value,element){return getValue(element.id)===''||/^\d{5}$|^\d{5}-\d{4}$/.test(value);},alwaysPass:function(){return true;},alwaysFail:function(){return false;}};var defaultRules={};return{validators:{},rules:{},displayedMessages:{},init:function(opts){if(opts.leftOffsetReferenceSelector){this.leftOffsetReferenceElement=$(opts.leftOffsetReferenceSelector);}
this.validators=$.extend({},defaultValidators,opts.validators);this.rules=$.extend({},opts.validationRules);this.template=opts.template;this.errorClass=opts.errorClass;this.errorMessageLeftPosition='';return this;},validate:function(){var failedRules=this.runValidationRules('submit');if(failedRules){this.displayValidationErrors(failedRules);}
return failedRules.length===0?true:false;},validateElement:function(element,testType,forceError){var failedTests=this.runValidationRuleTests(element,this.rules[element].tests,testType,forceError);if(failedTests&&failedTests.length>0){this.displayValidationError(element,failedTests);return false;}else{this.clearValidationError(element);return true;}},displayValidationErrors:function(failedRules){this.clearAllValidationErrors();for(var j=0;j<failedRules.length;j++){var rule=failedRules[j];this.displayValidationError(rule.id,rule.failedTests);}},displayValidationError:function(referenceElementSelector,failedTests){var errorExists=$('#'+referenceElementSelector+'ErrorMessage').length>0;var errorMessage=this.createValidationErrorMessage(failedTests);var error=this.createValidationError(referenceElementSelector,errorMessage);if(errorExists){this.clearValidationError(referenceElementSelector);}
this.showValidationError(error);},showValidationError:function(errorObj){var error=this.displayedMessages[errorObj.top];if(error){if(parseInt(error.css('left'))>errorObj.left){error.prepend(errorObj.element);}else{error.append(errorObj.element);error.css('left',errorObj.left);}}else{error=this.template.clone().css({position:"absolute",marginLeft:0,marginTop:0,top:errorObj.top,left:errorObj.left});error.append(errorObj.element);$('body').append(error);this.displayedMessages[errorObj.top]=error;}
if(this.errorClass){errorObj.referenceElement.addClass(this.errorClass);}},forceValidationError:function(referenceElementSelector,errorMessage){var error=this.createValidationError(referenceElementSelector,errorMessage);this.showValidationError(error);},createValidationError:function(referenceElementSelector,errorMessage){var $referenceElement=$('#'+referenceElementSelector);var targetOffset=$referenceElement.offset();var leftOffset=targetOffset.left+$referenceElement.width();if($.browser.msie&&$referenceElement.is('select')&&(($referenceElement.parent().offset().left+$referenceElement.parent().width())<($referenceElement.offset().left+$referenceElement.width()))){leftOffset=$referenceElement.parent().offset().left+$referenceElement.parent().width()+12;}
return{element:$('<span/>').attr('id',referenceElementSelector+'ErrorMessage').html(errorMessage),left:Math.round(this.getErrorLeftPosition()||leftOffset),top:Math.round(targetOffset.top),referenceElement:$referenceElement};},createValidationErrorMessage:function(failedTests){var errorMessage='';for(var i=0;i<failedTests.length;i++){var test=failedTests[i];if(test){errorMessage=i>0?errorMessage+'<br/>'+test.message:test.message;}}
return errorMessage;},clearAllValidationErrors:function(){var hasElements=function(object){for(var key in object){return true;}}
if(hasElements(this.displayedMessages)){$('.popup').remove();if(this.errorClass){$('.'+this.errorClass).removeClass(this.errorClass);}
this.displayedMessages={};}},clearValidationError:function(referenceElementSelector){if(this.errorClass){$('#'+referenceElementSelector).removeClass(this.errorClass);}
var errorObj=this.getErrorMessageObject(referenceElementSelector);if(errorObj){var errorContainer=errorObj.element.parent();errorObj.element.remove();if(errorContainer.children().length===0){errorContainer.remove();delete this.displayedMessages[errorObj.top];}}},runValidationRules:function(testType){var failedRules=[];for(var ruleName in this.rules){var failedTests=this.runValidationRuleTests(ruleName,this.rules[ruleName].tests,testType);if(failedTests&&failedTests.length>0){failedRules.push({id:ruleName,failedTests:failedTests});}}
return failedRules;},runValidationRuleTests:function(selector,tests,testType,forceError){var $element=$('#'+selector);try{var element=$element.get(0);var _failedTests=[];for(var i=0;i<tests.length;i++){var test=tests[i];if(!testType||test.events.join(',').indexOf(testType)>=0){var additionalArgs=test.additionalArgs&&test.additionalArgs.length?test.additionalArgs:[];var p=forceError?false:this.validators[test.name]($.trim(element.value),element,additionalArgs);if(!p){_failedTests.push({name:test.name,pass:p,message:test.message});}}}
return _failedTests;}catch(e){if(debug&&window.console){console.log("exception occured when checking element %s, check the %s rule",selector);}}},reset:function(){this.clearAllValidationErrors();},addValidators:function(hash){$.extend(this.validators,hash);},addValidator:function(key,fn){this.validators[key]=fn;},removeValidator:function(key){delete this.validators[key];},addRules:function(hash){$.extend(this.rules,hash);},addRule:function(key,fn){this.rules[key]=fn;},getErrorLeftPosition:function(){if(!this.leftOffsetReferenceElement){return 0;}
var left=(this.errorMessageLeftPosition)?this.errorMessageLeftPosition:this.leftOffsetReferenceElement.offset().left+this.leftOffsetReferenceElement.width()+7;this.errorMessageLeftPosition=left;return left;},getErrorMessageObject:function(referenceElementSelector){var err=$('#'+referenceElementSelector+'ErrorMessage');if(err.length>0){return{element:err,left:parseInt(err.parent().css('left')),top:parseInt(err.parent().css('top')),referenceElement:$('#'+referenceElementSelector)};}
return null;}};})();
MV.Util.namespace('MV.User');MV.User={_attributes:{},setAttribute:function(key,value){if(value==='true'){value=true;}
if(value==='false'){value=false;}
this._attributes[key]=value;},getAttribute:function(key){return this._attributes[key];},init:function(data){var item;for(item in data){this.setAttribute(item,data[item]);}
this.initComplete&&this.initComplete(data);}};
(function($){$.fn.extend({autocomplete:function(urlOrData,options){var isUrl=typeof urlOrData=="string";options=$.extend({},$.Autocompleter.defaults,{url:isUrl?urlOrData:null,data:isUrl?null:urlOrData,delay:isUrl?$.Autocompleter.defaults.delay:10,max:options&&!options.scroll?10:150},options);options.highlight=options.highlight||function(value){return value;};options.formatMatch=options.formatMatch||options.formatItem;return this.each(function(){new $.Autocompleter(this,options);});},result:function(handler){return this.bind("result",handler);},search:function(handler){return this.trigger("search",[handler]);},flushCache:function(){return this.trigger("flushCache");},setOptions:function(options){return this.trigger("setOptions",[options]);},unautocomplete:function(){return this.trigger("unautocomplete");}});$.Autocompleter=function(input,options){var KEY={UP:38,DOWN:40,DEL:46,TAB:9,RETURN:13,ESC:27,COMMA:188,PAGEUP:33,PAGEDOWN:34,BACKSPACE:8};var $input=$(input).attr("autocomplete","off").addClass(options.inputClass);var timeout;var previousValue="";var cache=$.Autocompleter.Cache(options);var hasFocus=0;var lastKeyPressCode;var config={mouseDownOnSelect:false};var select=$.Autocompleter.Select(options,input,selectCurrent,config);var blockSubmit;$.browser.opera&&$(input.form).bind("submit.autocomplete",function(){if(blockSubmit){blockSubmit=false;return false;}});$input.bind(($.browser.opera?"keypress":"keydown")+".autocomplete",function(event){hasFocus=1;lastKeyPressCode=event.keyCode;switch(event.keyCode){case KEY.UP:event.preventDefault();if(select.visible()){select.prev();}else{onChange(0,true);}
break;case KEY.DOWN:event.preventDefault();if(select.visible()){select.next();}else{onChange(0,true);}
break;case KEY.PAGEUP:event.preventDefault();if(select.visible()){select.pageUp();}else{onChange(0,true);}
break;case KEY.PAGEDOWN:event.preventDefault();if(select.visible()){select.pageDown();}else{onChange(0,true);}
break;case options.multiple&&$.trim(options.multipleSeparator)==","&&KEY.COMMA:case KEY.TAB:case KEY.RETURN:if(selectCurrent()){event.preventDefault();blockSubmit=true;return false;}
break;case KEY.ESC:select.hide();break;default:clearTimeout(timeout);timeout=setTimeout(onChange,options.delay);break;}}).focus(function(){hasFocus++;}).blur(function(){hasFocus=0;if(!config.mouseDownOnSelect){hideResults();}}).click(function(){if(hasFocus++>1&&!select.visible()){onChange(0,true);}}).bind("search",function(){var fn=(arguments.length>1)?arguments[1]:null;function findValueCallback(q,data){var result;if(data&&data.length){for(var i=0;i<data.length;i++){if(data[i].result.toLowerCase()==q.toLowerCase()){result=data[i];break;}}}
if(typeof fn=="function"){fn(result);}else{$input.trigger("result",result&&[result.data,result.value]);}}
$.each(trimWords($input.val()),function(i,value){request(value,findValueCallback,findValueCallback);});}).bind("flushCache",function(){cache.flush();}).bind("setOptions",function(){$.extend(options,arguments[1]);if("data"in arguments[1]){cache.populate();}}).bind("unautocomplete",function(){select.unbind();$input.unbind();$(input.form).unbind(".autocomplete");});function selectCurrent(){var selected=select.selected();if(!selected){return false;}
var v=selected.result;previousValue=v;if(options.multiple){var words=trimWords($input.val());if(words.length>1){var seperator=options.multipleSeparator.length;var cursorAt=$(input).selection().start;var wordAt,progress=0;$.each(words,function(i,word){progress+=word.length;if(cursorAt<=progress){wordAt=i;return false;}
progress+=seperator;});words[wordAt]=v;v=words.join(options.multipleSeparator);}
v+=options.multipleSeparator;}
$input.val(v);hideResultsNow();$input.trigger("result",[selected.data,selected.value]);return true;}
function onChange(crap,skipPrevCheck){if(lastKeyPressCode==KEY.DEL){select.hide();return;}
var currentValue=$input.val();if(!skipPrevCheck&&currentValue==previousValue){return;}
previousValue=currentValue;currentValue=lastWord(currentValue);if(currentValue.length>=options.minChars){$input.addClass(options.loadingClass);if(!options.matchCase){currentValue=currentValue.toLowerCase();}
request(currentValue,receiveData,hideResultsNow);}else{stopLoading();select.hide();}}
function trimWords(value){if(!value){return[""];}
if(!options.multiple){return[$.trim(value)];}
return $.map(value.split(options.multipleSeparator),function(word){return $.trim(value).length?$.trim(word):null;});}
function lastWord(value){if(!options.multiple){return value;}
var words=trimWords(value);if(words.length==1){return words[0];}
var cursorAt=$(input).selection().start;if(cursorAt==value.length){words=trimWords(value);}else{words=trimWords(value.replace(value.substring(cursorAt),""));}
return words[words.length-1];}
function autoFill(q,sValue){if(options.autoFill&&(lastWord($input.val()).toLowerCase()==q.toLowerCase())&&lastKeyPressCode!=KEY.BACKSPACE){$input.val($input.val()+sValue.substring(lastWord(previousValue).length));$(input).selection(previousValue.length,previousValue.length+sValue.length);}}
function hideResults(){clearTimeout(timeout);timeout=setTimeout(hideResultsNow,200);}
function hideResultsNow(){var wasVisible=select.visible();select.hide();clearTimeout(timeout);stopLoading();if(options.mustMatch){$input.search(function(result){if(!result){if(options.multiple){var words=trimWords($input.val()).slice(0,-1);$input.val(words.join(options.multipleSeparator)+(words.length?options.multipleSeparator:""));}
else{$input.val("");$input.trigger("result",null);}}});}}
function receiveData(q,data){if(data&&data.length&&hasFocus){stopLoading();select.display(data,q);autoFill(q,data[0].value);select.show();}else{hideResultsNow();}}
function request(term,success,failure){if(!options.matchCase){term=term.toLowerCase();}
var data=cache.load(term);if(data&&data.length){success(term,data);}else if((typeof options.url=="string")&&(options.url.length>0)){var extraParams={timestamp:+new Date()};$.each(options.extraParams,function(key,param){extraParams[key]=typeof param=="function"?param():param;});$.ajax({mode:"abort",port:"autocomplete"+input.name,dataType:options.dataType,url:options.url,data:$.extend({q:lastWord(term),limit:options.max},extraParams),success:function(data){var parsed=options.parse&&options.parse(data)||parse(data);cache.add(term,parsed);success(term,parsed);}});}else{select.emptyList();failure(term);}}
function parse(data){var parsed=[];var rows=data.split("\n");for(var i=0;i<rows.length;i++){var row=$.trim(rows[i]);if(row){row=row.split("|");parsed[parsed.length]={data:row,value:row[0],result:options.formatResult&&options.formatResult(row,row[0])||row[0]};}}
return parsed;}
function stopLoading(){$input.removeClass(options.loadingClass);}};$.Autocompleter.defaults={inputClass:"ac_input",resultsClass:"ac_results",loadingClass:"ac_loading",minChars:1,delay:400,matchCase:false,matchSubset:true,matchContains:false,cacheLength:10,max:100,mustMatch:false,extraParams:{},selectFirst:true,formatItem:function(row){return row[0];},formatMatch:null,autoFill:false,width:0,multiple:false,multipleSeparator:", ",highlight:function(value,term){return value.replace(new RegExp("(?![^&;]+;)(?!<[^<>]*)("+term.replace(/([\^\$\(\)\[\]\{\}\*\.\+\?\|\\])/gi,"\\$1")+")(?![^<>]*>)(?![^&;]+;)","gi"),"<strong>$1</strong>");},scroll:true,scrollHeight:180};$.Autocompleter.Cache=function(options){var data={};var length=0;function matchSubset(s,sub){if(!options.matchCase){s=s.toLowerCase();}
var i=s.indexOf(sub);if(options.matchContains=="word"){i=s.toLowerCase().search("\\b"+sub.toLowerCase());}
if(i==-1){return false;}
return i==0||options.matchContains;}
function add(q,value){if(length>options.cacheLength){flush();}
if(!data[q]){length++;}
data[q]=value;}
function populate(){if(!options.data){return false;}
var stMatchSets={},nullData=0;if(!options.url){options.cacheLength=1;}
stMatchSets[""]=[];for(var i=0,ol=options.data.length;i<ol;i++){var rawValue=options.data[i];rawValue=(typeof rawValue=="string")?[rawValue]:rawValue;var value=options.formatMatch(rawValue,i+1,options.data.length);if(value===false){continue;}
var firstChar=value.charAt(0).toLowerCase();if(!stMatchSets[firstChar]){stMatchSets[firstChar]=[];}
var row={value:value,data:rawValue,result:options.formatResult&&options.formatResult(rawValue)||value};stMatchSets[firstChar].push(row);if(nullData++<options.max){stMatchSets[""].push(row);}}
$.each(stMatchSets,function(i,value){options.cacheLength++;add(i,value);});}
setTimeout(populate,25);function flush(){data={};length=0;}
return{flush:flush,add:add,populate:populate,load:function(q){if(!options.cacheLength||!length){return null;}
if(!options.url&&options.matchContains){var csub=[];for(var k in data){if(k.length>0){var c=data[k];$.each(c,function(i,x){if(matchSubset(x.value,q)){csub.push(x);}});}}
return csub;}else
if(data[q]){return data[q];}else
if(options.matchSubset){for(var i=q.length-1;i>=options.minChars;i--){var c=data[q.substr(0,i)];if(c){var csub=[];$.each(c,function(i,x){if(matchSubset(x.value,q)){csub[csub.length]=x;}});return csub;}}}
return null;}};};$.Autocompleter.Select=function(options,input,select,config){var CLASSES={ACTIVE:"ac_over"};var listItems,active=-1,data,term="",needsInit=true,element,list;function init(){if(!needsInit){return;}
element=$("<div/>").hide().addClass(options.resultsClass).css("position","absolute").appendTo(document.body);list=$("<ul/>").appendTo(element).mouseover(function(event){if(target(event).nodeName&&target(event).nodeName.toUpperCase()=='LI'){active=$("li",list).removeClass(CLASSES.ACTIVE).index(target(event));$(target(event)).addClass(CLASSES.ACTIVE);}}).click(function(event){$(target(event)).addClass(CLASSES.ACTIVE);select();input.focus();return false;}).mousedown(function(){config.mouseDownOnSelect=true;}).mouseup(function(){config.mouseDownOnSelect=false;});if(options.width>0){element.css("width",options.width);}
needsInit=false;}
function target(event){var element=event.target;while(element&&element.tagName!="LI"){element=element.parentNode;}
if(!element){return[];}
return element;}
function moveSelect(step){listItems.slice(active,active+1).removeClass(CLASSES.ACTIVE);movePosition(step);var activeItem=listItems.slice(active,active+1).addClass(CLASSES.ACTIVE);if(options.scroll){var offset=0;listItems.slice(0,active).each(function(){offset+=this.offsetHeight;});if((offset+activeItem[0].offsetHeight-list.scrollTop())>list[0].clientHeight){list.scrollTop(offset+activeItem[0].offsetHeight-list.innerHeight());}else if(offset<list.scrollTop()){list.scrollTop(offset);}}}
function movePosition(step){active+=step;if(active<0){active=listItems.size()-1;}else if(active>=listItems.size()){active=0;}}
function limitNumberOfItems(available){return options.max&&options.max<available?options.max:available;}
function fillList(){list.empty();var max=limitNumberOfItems(data.length);for(var i=0;i<max;i++){if(!data[i]){continue;}
var formatted=options.formatItem(data[i].data,i+1,max,data[i].value,term);if(formatted===false){continue;}
var li=$("<li/>").html(options.highlight(formatted,term)).addClass(i%2==0?"ac_even":"ac_odd").appendTo(list)[0];$.data(li,"ac_data",data[i]);}
listItems=list.find("li");if(options.selectFirst){listItems.slice(0,1).addClass(CLASSES.ACTIVE);active=0;}
if($.fn.bgiframe){list.bgiframe();}}
return{display:function(d,q){init();data=d;term=q;fillList();},next:function(){moveSelect(1);},prev:function(){moveSelect(-1);},pageUp:function(){if(active!=0&&active-8<0){moveSelect(-active);}else{moveSelect(-8);}},pageDown:function(){if(active!=listItems.size()-1&&active+8>listItems.size()){moveSelect(listItems.size()-1-active);}else{moveSelect(8);}},hide:function(){if(element){element.hide();}
if(listItems){listItems.removeClass(CLASSES.ACTIVE);}
active=-1;},visible:function(){return element&&element.is(":visible");},current:function(){return this.visible()&&(listItems.filter("."+CLASSES.ACTIVE)[0]||options.selectFirst&&listItems[0]);},show:function(){var offset=$(input).offset();element.css({width:typeof options.width=="string"||options.width>0?options.width:$(input).width(),top:offset.top+input.offsetHeight,left:offset.left}).show();if(options.scroll){list.scrollTop(0);list.css({maxHeight:options.scrollHeight,overflow:'auto'});if($.browser.msie&&typeof document.body.style.maxHeight==="undefined"){var listHeight=0;listItems.each(function(){listHeight+=this.offsetHeight;});var scrollbarsVisible=listHeight>options.scrollHeight;list.css('height',scrollbarsVisible?options.scrollHeight:listHeight);if(!scrollbarsVisible){listItems.width(list.width()-parseInt(listItems.css("padding-left"))-parseInt(listItems.css("padding-right")));}}}},selected:function(){var selected=listItems&&listItems.filter("."+CLASSES.ACTIVE).removeClass(CLASSES.ACTIVE);return selected&&selected.length&&$.data(selected[0],"ac_data");},emptyList:function(){if(list){list.empty();}},unbind:function(){if(element){element.remove();}}};};$.fn.selection=function(start,end){if(start!==undefined){return this.each(function(){if(this.createTextRange){var selRange=this.createTextRange();if(end===undefined||start==end){selRange.move("character",start);selRange.select();}else{selRange.collapse(true);selRange.moveStart("character",start);selRange.moveEnd("character",end);selRange.select();}}else if(this.setSelectionRange){this.setSelectionRange(start,end);}else if(this.selectionStart){this.selectionStart=start;this.selectionEnd=end;}});}
var field=this[0];if(field.createTextRange){var range=document.selection.createRange(),orig=field.value,teststring="<->",textLength=range.text.length;range.text=teststring;var caretAt=field.value.indexOf(teststring);field.value=orig;this.selection(caretAt,caretAt+textLength);return{start:caretAt,end:caretAt+textLength};}else if(field.selectionStart!==undefined){return{start:field.selectionStart,end:field.selectionEnd};}};})(jQuery);
(function($){$.fn.bgIframe=$.fn.bgiframe=function(s){if($.browser.msie&&/6.0/.test(navigator.userAgent)){s=$.extend({top:'auto',left:'auto',width:'auto',height:'auto',opacity:true,src:'javascript:false;'},s||{});var prop=function(n){return n&&n.constructor==Number?n+'px':n;},html='<iframe class="bgiframe"frameborder="0"tabindex="-1"src="'+s.src+'"'+'style="display:block;position:absolute;z-index:-1;'+
(s.opacity!==false?'filter:Alpha(Opacity=\'0\');':'')+'top:'+(s.top=='auto'?'expression(((parseInt(this.parentNode.currentStyle.borderTopWidth)||0)*-1)+\'px\')':prop(s.top))+';'+'left:'+(s.left=='auto'?'expression(((parseInt(this.parentNode.currentStyle.borderLeftWidth)||0)*-1)+\'px\')':prop(s.left))+';'+'width:'+(s.width=='auto'?'expression(this.parentNode.offsetWidth+\'px\')':prop(s.width))+';'+'height:'+(s.height=='auto'?'expression(this.parentNode.offsetHeight+\'px\')':prop(s.height))+';'+'"/>';return this.each(function(){if($('> iframe.bgiframe',this).length==0)
this.insertBefore(document.createElement(html),this.firstChild);});}
return this;};})(jQuery);
jQuery.cookie=function(name,value,options){if(typeof value!='undefined'){options=options||{};if(value===null){value='';options.expires=-1;}
var expires='';if(options.expires&&(typeof options.expires=='number'||options.expires.toUTCString)){var date;if(typeof options.expires=='number'){date=new Date();date.setTime(date.getTime()+(options.expires*24*60*60*1000));}else{date=options.expires;}
expires='; expires='+date.toUTCString();}
var path=options.path?'; path='+(options.path):'';var domain=options.domain?'; domain='+(options.domain):'';var secure=options.secure?'; secure':'';document.cookie=[name,'=',encodeURIComponent(value),expires,path,domain,secure].join('');}else{var cookieValue=null;if(document.cookie&&document.cookie!=''){var cookies=document.cookie.split(';');for(var i=0;i<cookies.length;i++){var cookie=jQuery.trim(cookies[i]);if(cookie.substring(0,name.length+1)==(name+'=')){cookieValue=decodeURIComponent(cookie.substring(name.length+1));break;}}}
return cookieValue;}};
var DD_roundies={stack:100,ns:'DD_roundies',IE6:false,IE7:false,IE8:false,IEversion:function(){if(document.documentMode!=8&&document.namespaces&&!document.namespaces[this.ns]){this.IE6=true;this.IE7=true;}
else if(document.documentMode==8){this.IE8=true;}},querySelector:document.querySelectorAll,selectorsToProcess:[],imgSize:{},createVmlNameSpace:function(){if(this.IE6||this.IE7){document.namespaces.add(this.ns,'urn:schemas-microsoft-com:vml');}
if(this.IE8){document.writeln('<?import namespace="'+this.ns+'" implementation="#default#VML" ?>');}},createVmlStyleSheet:function(){var style=document.createElement('style');document.documentElement.firstChild.insertBefore(style,document.documentElement.firstChild.firstChild);if(style.styleSheet){try{var styleSheet=style.styleSheet;styleSheet.addRule(this.ns+'\\:*','{behavior:url(#default#VML)}');this.styleSheet=styleSheet;}catch(err){}}
else{this.styleSheet=style;}},addRule:function(selector,rad,standards){if(typeof rad=='undefined'||rad===null){rad=0;}
if(rad.constructor.toString().search('Array')==-1){rad=rad.toString().replace(/[^0-9 ]/g,'').split(' ');}
for(var i=0;i<4;i++){rad[i]=(!rad[i]&&rad[i]!==0)?rad[Math.max((i-2),0)]:rad[i];}
if(this.styleSheet){if(this.styleSheet.addRule){var selectors=selector.split(',');for(var i=0;i<selectors.length;i++){this.styleSheet.addRule(selectors[i],'behavior:expression(DD_roundies.roundify.call(this, ['+rad.join(',')+']))');}}
else if(standards){var moz_implementation=rad.join('px ')+'px';this.styleSheet.appendChild(document.createTextNode(selector+' {border-radius:'+moz_implementation+'; -moz-border-radius:'+moz_implementation+';}'));this.styleSheet.appendChild(document.createTextNode(selector+' {-webkit-border-top-left-radius:'+rad[0]+'px '+rad[0]+'px; -webkit-border-top-right-radius:'+rad[1]+'px '+rad[1]+'px; -webkit-border-bottom-right-radius:'+rad[2]+'px '+rad[2]+'px; -webkit-border-bottom-left-radius:'+rad[3]+'px '+rad[3]+'px;}'));}}
else if(this.IE8){this.selectorsToProcess.push({'selector':selector,'radii':rad});}},readPropertyChanges:function(el){switch(event.propertyName){case'style.border':case'style.borderWidth':case'style.padding':this.applyVML(el);break;case'style.borderColor':this.vmlStrokeColor(el);break;case'style.backgroundColor':case'style.backgroundPosition':case'style.backgroundRepeat':this.applyVML(el);break;case'style.display':el.vmlBox.style.display=(el.style.display=='none')?'none':'block';break;case'style.filter':this.vmlOpacity(el);break;case'style.zIndex':el.vmlBox.style.zIndex=el.style.zIndex;break;case'className':el.vmlBox.style.display=($(event.srcElement).hasClass('invisible'))?'none':'block';break;break;}},applyVML:function(el){el.runtimeStyle.cssText='';this.vmlFill(el);this.vmlStrokeColor(el);this.vmlStrokeWeight(el);this.vmlOffsets(el);this.vmlPath(el);this.nixBorder(el);this.vmlOpacity(el);},vmlOpacity:function(el){if(el.currentStyle.filter.search('lpha')!=-1){var trans=el.currentStyle.filter;trans=parseInt(trans.substring(trans.lastIndexOf('=')+1,trans.lastIndexOf(')')),10)/100;for(var v in el.vml){el.vml[v].filler.opacity=trans;}}},vmlFill:function(el){if(!el.currentStyle){return;}else{var elStyle=el.currentStyle;}
el.runtimeStyle.backgroundColor='';el.runtimeStyle.backgroundImage='';var noColor=(elStyle.backgroundColor=='transparent');var noImg=true;if(elStyle.backgroundImage!='none'||el.isImg){if(!el.isImg){el.vmlBg=elStyle.backgroundImage;el.vmlBg=el.vmlBg.substr(5,el.vmlBg.lastIndexOf('")')-5);}
else{el.vmlBg=el.src;}
var lib=this;if(!lib.imgSize[el.vmlBg]){var img=document.createElement('img');img.attachEvent('onload',function(){this.width=this.offsetWidth;this.height=this.offsetHeight;lib.vmlOffsets(el);});img.className=lib.ns+'_sizeFinder';img.runtimeStyle.cssText='behavior:none; position:absolute; top:-10000px; left:-10000px; border:none;';img.src=el.vmlBg;img.removeAttribute('width');img.removeAttribute('height');document.body.insertBefore(img,document.body.firstChild);lib.imgSize[el.vmlBg]=img;}
el.vml.image.filler.src=el.vmlBg;noImg=false;}
el.vml.image.filled=!noImg;el.vml.image.fillcolor='none';el.vml.color.filled=!noColor;el.vml.color.fillcolor=elStyle.backgroundColor;el.runtimeStyle.backgroundImage='none';el.runtimeStyle.backgroundColor='transparent';},vmlStrokeColor:function(el){el.vml.stroke.fillcolor=el.currentStyle.borderColor;},vmlStrokeWeight:function(el){var borders=['Top','Right','Bottom','Left'];el.bW={};for(var b=0;b<4;b++){el.bW[borders[b]]=parseInt(el.currentStyle['border'+borders[b]+'Width'],10)||0;}},vmlOffsets:function(el){var dims=['Left','Top','Width','Height'];for(var d=0;d<4;d++){el.dim[dims[d]]=el['offset'+dims[d]];}
var assign=function(obj,topLeft){obj.style.left=(topLeft?0:el.dim.Left)+'px';obj.style.top=(topLeft?0:el.dim.Top)+'px';obj.style.width=el.dim.Width+'px';obj.style.height=el.dim.Height+'px';};for(var v in el.vml){var mult=(v=='image')?1:2;el.vml[v].coordsize=(el.dim.Width*mult)+', '+(el.dim.Height*mult);assign(el.vml[v],true);}
assign(el.vmlBox,false);if(DD_roundies.IE8){el.vml.stroke.style.margin='-1px';if(typeof el.bW=='undefined'){this.vmlStrokeWeight(el);}
el.vml.color.style.margin=(el.bW.Top-1)+'px '+(el.bW.Left-1)+'px';}},vmlPath:function(el){var coords=function(direction,w,h,r,aL,aT,mult){var cmd=direction?['m','qy','l','qx','l','qy','l','qx','l']:['qx','l','qy','l','qx','l','qy','l','m'];aL*=mult;aT*=mult;w*=mult;h*=mult;var R=r.slice();for(var i=0;i<4;i++){R[i]*=mult;R[i]=Math.min(w/2,h/2,R[i]);}
var coords=[cmd[0]+Math.floor(0+aL)+','+Math.floor(R[0]+aT),cmd[1]+Math.floor(R[0]+aL)+','+Math.floor(0+aT),cmd[2]+Math.ceil(w-R[1]+aL)+','+Math.floor(0+aT),cmd[3]+Math.ceil(w+aL)+','+Math.floor(R[1]+aT),cmd[4]+Math.ceil(w+aL)+','+Math.ceil(h-R[2]+aT),cmd[5]+Math.ceil(w-R[2]+aL)+','+Math.ceil(h+aT),cmd[6]+Math.floor(R[3]+aL)+','+Math.ceil(h+aT),cmd[7]+Math.floor(0+aL)+','+Math.ceil(h-R[3]+aT),cmd[8]+Math.floor(0+aL)+','+Math.floor(R[0]+aT)];if(!direction){coords.reverse();}
var path=coords.join('');return path;};if(typeof el.bW=='undefined'){this.vmlStrokeWeight(el);}
var bW=el.bW;var rad=el.DD_radii.slice();var outer=coords(true,el.dim.Width,el.dim.Height,rad,0,0,2);rad[0]-=Math.max(bW.Left,bW.Top);rad[1]-=Math.max(bW.Top,bW.Right);rad[2]-=Math.max(bW.Right,bW.Bottom);rad[3]-=Math.max(bW.Bottom,bW.Left);for(var i=0;i<4;i++){rad[i]=Math.max(rad[i],0);}
var inner=coords(false,el.dim.Width-bW.Left-bW.Right,el.dim.Height-bW.Top-bW.Bottom,rad,bW.Left,bW.Top,2);var image=coords(true,el.dim.Width-bW.Left-bW.Right+1,el.dim.Height-bW.Top-bW.Bottom+1,rad,bW.Left,bW.Top,1);el.vml.color.path=inner;el.vml.image.path=image;el.vml.stroke.path=outer+inner;this.clipImage(el);},nixBorder:function(el){var s=el.currentStyle;var sides=['Top','Left','Right','Bottom'];for(var i=0;i<4;i++){el.runtimeStyle['padding'+sides[i]]=(parseInt(s['padding'+sides[i]],10)||0)+(parseInt(s['border'+sides[i]+'Width'],10)||0)+'px';}
el.runtimeStyle.border='none';},clipImage:function(el){var lib=DD_roundies;if(!el.vmlBg||!lib.imgSize[el.vmlBg]){return;}
var thisStyle=el.currentStyle;var bg={'X':0,'Y':0};var figurePercentage=function(axis,position){var fraction=true;switch(position){case'left':case'top':bg[axis]=0;break;case'center':bg[axis]=0.5;break;case'right':case'bottom':bg[axis]=1;break;default:if(position.search('%')!=-1){bg[axis]=parseInt(position,10)*0.01;}
else{fraction=false;}}
var horz=(axis=='X');bg[axis]=Math.ceil(fraction?((el.dim[horz?'Width':'Height']-(el.bW[horz?'Left':'Top']+el.bW[horz?'Right':'Bottom']))*bg[axis])-(lib.imgSize[el.vmlBg][horz?'width':'height']*bg[axis]):parseInt(position,10));bg[axis]+=1;};for(var b in bg){figurePercentage(b,thisStyle['backgroundPosition'+b]);}
el.vml.image.filler.position=(bg.X/(el.dim.Width-el.bW.Left-el.bW.Right+1))+','+(bg.Y/(el.dim.Height-el.bW.Top-el.bW.Bottom+1));var bgR=thisStyle.backgroundRepeat;var c={'T':1,'R':el.dim.Width+1,'B':el.dim.Height+1,'L':1};var altC={'X':{'b1':'L','b2':'R','d':'Width'},'Y':{'b1':'T','b2':'B','d':'Height'}};if(bgR!='repeat'){c={'T':(bg.Y),'R':(bg.X+lib.imgSize[el.vmlBg].width),'B':(bg.Y+lib.imgSize[el.vmlBg].height),'L':(bg.X)};if(bgR.search('repeat-')!=-1){var v=bgR.split('repeat-')[1].toUpperCase();c[altC[v].b1]=1;c[altC[v].b2]=el.dim[altC[v].d]+1;}
if(c.B>el.dim.Height){c.B=el.dim.Height+1;}}
el.vml.image.style.clip='rect('+c.T+'px '+c.R+'px '+c.B+'px '+c.L+'px)';},pseudoClass:function(el){var self=this;setTimeout(function(){self.applyVML(el);},1);},reposition:function(el){this.vmlOffsets(el);this.vmlPath(el);},roundify:function(rad,noBind){this.style.behavior='none';if(!this.currentStyle){return;}
else{var thisStyle=this.currentStyle;}
var allowed={BODY:false,TABLE:false,TR:false,TD:false,SELECT:false,OPTION:false,TEXTAREA:false};if(allowed[this.nodeName]===false){return;}
var self=this;var lib=DD_roundies;this.DD_radii=rad;this.dim={};var handlers={resize:'reposition',move:'reposition'};if(this.nodeName=='A'){var moreForAs={mouseleave:'pseudoClass',mouseenter:'pseudoClass',focus:'pseudoClass',blur:'pseudoClass'};for(var a in moreForAs){handlers[a]=moreForAs[a];}}
for(var h in handlers){this.attachEvent('on'+h,function(){lib[handlers[h]](self);});}
if(!noBind){this.attachEvent('onpropertychange',function(){lib.readPropertyChanges(self);});}
var giveLayout=function(el){el.style.zoom=1;if(el.currentStyle.position=='static'){el.style.position='relative';}};giveLayout(this.offsetParent);giveLayout(this);this.vmlBox=document.createElement('ignore');this.vmlBox.runtimeStyle.cssText='behavior:none; position:absolute; margin:0; padding:0; border:0; background:none;';this.vmlBox.style.zIndex=thisStyle.zIndex;this.vml={'color':true,'image':true,'stroke':true};for(var v in this.vml){this.vml[v]=document.createElement(lib.ns+':shape');this.vml[v].filler=document.createElement(lib.ns+':fill');this.vml[v].appendChild(this.vml[v].filler);this.vml[v].stroked=false;this.vml[v].style.position='absolute';this.vml[v].style.zIndex=thisStyle.zIndex;this.vml[v].coordorigin='1,1';this.vmlBox.appendChild(this.vml[v]);}
this.vml.image.fillcolor='none';this.vml.image.filler.type='tile';this.parentNode.insertBefore(this.vmlBox,this);this.isImg=false;if(this.nodeName=='IMG'){this.isImg=true;this.style.visibility='hidden';}
setTimeout(function(){lib.applyVML(self);},1);}};(function($){var initRoundies=function(){try{document.execCommand("BackgroundImageCache",false,true);}catch(err){}
DD_roundies.IEversion();DD_roundies.createVmlNameSpace();DD_roundies.createVmlStyleSheet();if(DD_roundies.IE8&&document.attachEvent&&DD_roundies.querySelector){document.attachEvent('onreadystatechange',function(){if(document.readyState=='complete'){var selectors=DD_roundies.selectorsToProcess;var length=selectors.length;var delayedCall=function(node,radii,index){setTimeout(function(){DD_roundies.roundify.call(node,radii);},index*100);};for(var i=0;i<length;i++){var results=document.querySelectorAll(selectors[i].selector);var rLength=results.length;for(var r=0;r<rLength;r++){if(results[r].nodeName!='INPUT'){delayedCall(results[r],selectors[i].radii,r);}}}}});}};initRoundies();$.extend({ddroundies:function(selector,rad,standards){DD_roundies.addRule(selector,rad||null,standards||null);}});})(jQuery);
(function($){var win=$(window);var body=$('body');var currentMousePosition={x:0,y:0};var mouseUpdate=function(e)
{currentMousePosition.x=e.pageX;currentMousePosition.y=e.pageY;};body.mousemove(mouseUpdate);$.fn.extend({hideHoverHelp:function()
{return this.each(function(){var obj=$(this);obj.trigger('hide');});},removeHoverHelp:function()
{return this.each(function(){var obj=$(this);obj.trigger('remove');});},hoverHelp:function(target,options){var defaults={yOffset:10,xOffset:20,delay:300};var settings=$.extend(defaults,options);return this.each(function(){var obj=$(this);obj.bgiframe({src:"BLOCKED SCRIPT'&lt;html&gt;&lt;/html&gt;';"});var show=function(e)
{clearHoverTimeout(e);if(isMouseOverTarget(e))
{var hoverObj=e.data.hoverObj;var viewportDimensions={top:win.scrollTop()+4,left:win.scrollLeft()+4,width:win.width()-25,height:win.height()-25};body.prepend(hoverObj);hoverObj.bind('mouseleave',e.data,objRollout);hoverObj.css('left','0px');hoverObj.css('top','0px');var w=hoverObj.width();var h=hoverObj.height();hoverObj.css('width',w+'px');hoverObj.css('height',h+'px');if(!hoverObj.data('mvHoverHelp_defaultWidth'))
{hoverObj.data('mvHoverHelp_defaultWidth',w);}
if(!hoverObj.data('mvHoverHelp_defaultHeight'))
{hoverObj.data('mvHoverHelp_defaultHeight',h);}
var objHeight=hoverObj.data('mvHoverHelp_defaultHeight');var objWidth=hoverObj.data('mvHoverHelp_defaultWidth');var objX=currentMousePosition.x;var objY=currentMousePosition.y;objY+=settings.yOffset;objX+=settings.xOffset;if(objX+objWidth>viewportDimensions.left+viewportDimensions.width)
{objX-=((objX+objWidth)-(viewportDimensions.left+viewportDimensions.width));}
if(objX<viewportDimensions.left)
{objX=viewportDimensions.left;}
if(objY+objHeight>viewportDimensions.top+viewportDimensions.height)
{objY-=((objY+objHeight)-(viewportDimensions.top+viewportDimensions.height));}
if(objY<viewportDimensions.top)
{objY=viewportDimensions.top;}
hoverObj.css('left',objX+'px');hoverObj.css('top',objY+'px');}};var hide=function(e)
{var hoverObj=e.data.hoverObj;hoverObj.remove();};var remove=function(e)
{clearHoverTimeout(e);clearHoverInterval(e);addTargetTitle(e.data);var hoverObj=e.data.hoverObj;hoverObj.data('mvHoverHelp_active',false);hoverObj.unbind('mouseout',objRollout);hoverObj.unbind('remove');hoverObj.unbind('hide');hoverObj.remove();};var rollover=function(e)
{var hoverObj=e.data.hoverObj;var active=hoverObj.data('mvHoverHelp_active');if(!active)
{var timeout=setTimeout(function(){show(e);},settings.delay);var interval=setInterval(function(){checkTarget(e);},100);hoverObj.data('mvHoverHelp_interval',interval);hoverObj.data('mvHoverHelp_timeout',timeout);hoverObj.data('mvHoverHelp_active',true);hoverObj.bind('remove',{func:remove,e:e},function(e){e.data.func(e.data.e);});hoverObj.bind('hide',{func:hide,e:e},function(e){e.data.func(e.data.e);});removeTargetTitle(e.data);}};var rollout=function(e)
{if(!isMouseOverHoverHelp(e))
{remove(e);}};var objRollout=function(e)
{if(!isMouseOverTarget(e))
{remove(e);}};var isMouseOverTarget=function(e)
{var target=e.data.target;var mouseX=currentMousePosition.x;var mouseY=currentMousePosition.y;var targetDimensions={x1:target.offset().left,y1:target.offset().top,x2:target.offset().left+target.width(),y2:target.offset().top+target.height()};var mouseOverTarget=false;if(mouseX>=targetDimensions.x1&&mouseY>=targetDimensions.y1&&mouseX<=targetDimensions.x2&&mouseY<=targetDimensions.y2)
{mouseOverTarget=true;}
return mouseOverTarget;};var isMouseOverHoverHelp=function(e)
{var hoverObj=e.data.hoverObj;var mouseX=e.pageX;var mouseY=e.pageY;var objDimensions={x1:hoverObj.offset().left,y1:hoverObj.offset().top,x2:hoverObj.offset().left+hoverObj.width(),y2:hoverObj.offset().top+hoverObj.height()};var mouseOverHoverHelp=false;if(mouseX>=objDimensions.x1&&mouseY>=objDimensions.y1&&mouseX<=objDimensions.x2&&mouseY<=objDimensions.y2)
{mouseOverHoverHelp=true;}
return mouseOverHoverHelp;};var checkTarget=function(e)
{var target=e.data.target;if(!target.is(":visible"))
{remove(e);}};var clearHoverInterval=function(e)
{var hoverObj=e.data.hoverObj;var interval=hoverObj.data('mvHoverHelp_interval');clearInterval(interval);};var clearHoverTimeout=function(e)
{var hoverObj=e.data.hoverObj;var timeout=hoverObj.data('mvHoverHelp_timeout');clearTimeout(timeout);};var addTargetTitle=function(data)
{var tag=target.get(0).tagName.toLowerCase();data.target.attr('title',data.hoverObj.text());if(tag=='img')
{data.target.attr('alt',data.hoverObj.text());}};var removeTargetTitle=function(data)
{var tag=target.get(0).tagName.toLowerCase();data.target.attr('title','');if(tag=='img')
{data.target.attr('alt','');}};var data={target:target,hoverObj:obj};target.bind('mouseenter',data,rollover);target.bind('mouseleave',data,rollout);target.addClass('mvHoverHelpTarget');addTargetTitle(data);});}});})(jQuery);
(function($){var win=$(window);var body=$('body');var doc=$(document);var __modals=[];var adjustBackground=function()
{var vp=getViewport();for(var x=0;x<__modals.length;x++)
{if(__modals[x].background)
{__modals[x].background.width(vp.width+vp.left);__modals[x].background.height(vp.height+vp.top);}}};var centerModals=function()
{var vp=getViewport();var modal;for(var x=0;x<__modals.length;x++)
{if(__modals[x].settings.autoCenter)
{modal=__modals[x].modal;var mWidth=modal.width();var mHeight=modal.height();var offsetLeft=(vp.width-mWidth)/2;var offsetTop=(vp.height-mHeight)/2;var autoLeft=offsetLeft+vp.left;var autoTop=offsetTop+vp.top;if(autoLeft<0){autoLeft=0;}
if(autoTop<0){autoTop=0;}
modal.data('top',offsetTop);modal.data('left',offsetLeft);modal.css('top',autoTop+'px');modal.css('left',autoLeft+'px');if(__modals[x].settings.lockPosition)
{if(modal.data('startLeft'))
{var l=modal.data('startLeft');modal.css('left',l+'px');}
else
{modal.data('startLeft',autoLeft);}
if(modal.data('startTop'))
{var t=modal.data('startTop');modal.css('top',t+'px');}
else
{modal.data('startTop',autoTop);}}}}};var setModalPositions=function()
{var vp=getViewport();var modal;for(var x=0;x<__modals.length;x++)
{if(!__modals[x].settings.lockPosition)
{modal=__modals[x].modal;var mWidth=modal.width();var mHeight=modal.height();var relLeft=modal.data('left')+vp.left;var relTop=modal.data('top')+vp.top;var docWidth=doc.width();var docHeight=doc.height();if(relLeft+mWidth>docWidth){relLeft=docWidth-mWidth;}
if(relTop+mHeight>docHeight){relTop=docHeight-mHeight;}
if(relLeft<0){relLeft=0;}
if(relTop<0){relTop=0;}
modal.css('top',relTop+'px');modal.css('left',relLeft+'px');}}};var modalRemove=function(e)
{var indexToRemove=-1;for(var x=0;x<__modals.length;x++)
{if(__modals[x]==e.data)
{indexToRemove=x;__modals[x].modal.remove();if(__modals[x].background){__modals[x].background.remove();}}}
if(indexToRemove>=0)
{__modals.splice(indexToRemove,1);}};var getViewport=function()
{var dimSource=parent&&parent.document?$(parent.document):win;var vp={top:dimSource.scrollTop(),left:dimSource.scrollLeft(),width:win.width(),height:parent&&parent.document?parent.document.documentElement.clientHeight:win.height()};return vp;};var onScroll=function()
{adjustBackground();setTimeout(adjustBackground,50);setModalPositions();setTimeout(setModalPositions,50);};var onResize=function()
{adjustBackground();setTimeout(adjustBackground,50);centerModals();setTimeout(centerModals,50);};win.scroll(onScroll);win.resize(onResize);$.fn.extend({modal:function(options){var defaults={autoCenter:true,lockPosition:false,background:null};var settings=$.extend(defaults,options);return this.each(function(){var obj=$(this);var modal={modal:obj,background:settings.background,settings:settings};if($.fn.bgiframe)
{if(modal.background){modal.modal.bgiframe({src:"BLOCKED SCRIPT'&lt;html&gt;&lt;/html&gt;';"});}}
modal.modal.bind('modalClosed',modal,modalRemove);__modals.push(modal);body.prepend(modal.modal);modal.modal.css('left','');modal.modal.css('top','');modal.modal.data('left',modal.modal.offset().left);modal.modal.data('top',modal.modal.offset().top);if(modal.background){body.prepend(modal.background);}
adjustBackground();centerModals();setModalPositions();});},removeModal:function()
{return this.each(function(){var obj=$(this);obj.trigger('modalClosed');});}});})(jQuery);
(function($){$.fn.extend({initSupplantCache:function(){$.fn.extend({supplantCache:{hasInnerText:(document.getElementsByTagName("body")[0]&&document.getElementsByTagName("body")[0].innerText!=undefined)?true:false,RegExp:new RegExp('(href|src)="https?\:\/\/'+window.location.host+'\/(?:[^#"\.\/]+\/)*([{%])','g')}});},supplant:function(data,addToCache){var reg=$.fn.supplantCache.RegExp;var hasInnerText=$.fn.supplantCache.hasInnerText;var clean=function($elm){var key=makeDataKey($elm);if(getSupplantCache(key)){return getSupplantCache(key);}
var retval=$elm.html().toString().replace(/[\f\n\r\t\v\u00A0\u2028\u2029]/g,'').replace(/\%7B/g,'{').replace(/\%7D/g,'}');if($.browser.msie){retval=retval.replace(reg,'$1="$2');}
if(addToCache){setSupplantCache(key,retval);}
return retval;};var setSupplantCache=function(key,val){$.fn.supplantCache[key]=val;};var getSupplantCache=function(key){return $.fn.supplantCache[key];};var makeDataKey=function($elm){var elm=$elm[0];return elm.tagName+getTextLength(elm);}
var getTextLength=function(elm){return(hasInnerText)?elm.innerText.length:elm.textContent.length;}
return this.each(function(index,value){var $this=$(this),m;var d=clean($this).replace(/{([^{}]*)}/g,function(a,b,c){m=b||c;var retval,r,ar=m.split('.'),arlength=ar.length;switch(arlength){case 1:r=typeof data=='object'?data[ar[0]]:data;break;case 2:r=(data[ar[0]])?data[ar[0]][ar[1]]:'';break;case 3:r=(data[ar[0]]&&data[ar[0]][ar[1]])?data[ar[0]][ar[1]][ar[2]]:'';break;default:r=data[ar[0]];}
switch(typeof r){case'string':case'number':retval=r;break;case'object':if(r&&r.jquery&&r.length>0){retval=document.createElement('div');retval.appendChild(r[0]);retval=retval.innerHTML;}else{retval=a;}
break;default:retval=a;}
return retval;});$this.html(d);});}});$.fn.initSupplantCache();})(jQuery);
(function($){$.fn.extend({iedropdown:function(options){var defaultOptions={isLeveled:false,leaveWhitespace:true,hideOverflow:false,defaultWidth:200}
options=$.extend(defaultOptions,options);var substituteArrowWidth=17;var ddCloneIds=[];var updateOptions=function($select){var select=$select.get(0);var container=$select.closest('.ieDropdownContainer');var overflow=container.find('#'+select.id+'DDOverflow').get(0);var jqSelect=$(select);var parentWidth=jqSelect.parent().width()+substituteArrowWidth;var selectWidth=jqSelect.width();var noStretch=jqSelect.hasClass('ieNoStretch');var selectedIndex=null;if(overflow){overflow.runtimeStyle.width=overflow.currentStyle.width;overflow.style.width=overflow.currentStyle.width;if(parentWidth>1&&selectWidth!=0&&parentWidth>selectWidth&&!noStretch){select.style.width=parentWidth;}else if(noStretch&&selectWidth>0){overflow.style.pixelWidth=selectWidth;container.get(0).style.pixelWidth=selectWidth;}else if(noStretch&&selectWidth==0){options.hideOverflow=true;var clone=jqSelect.clone();clone.attr('style','display:block;visibility: hidden;');$('body').append(clone);var newWidth=clone.width()+5;overflow.style.pixelWidth=newWidth;container.get(0).style.pixelWidth=newWidth;clone.remove();}
selectedIndex=select.selectedIndex>0?select.selectedIndex:0;}};var opts=$.extend({},options);return this.each(function(){if($.browser.msie){var $select=$(this);if(opts.updated===true){updateOptions($select);var mclone=$($select).clone();mclone.attr('style','display:block;visibility: hidden;');$('body').append(mclone);var cWidth=mclone.width();mclone.remove();if(cWidth<options.defaultWidth&&!$($select).hasClass('ieNoStretch')){$($select).attr('style','width:'+(options.defaultWidth+substituteArrowWidth)+'px');}
setTimeout(function(){var iconId='#'+$select.attr('id')+'DDIcon';var icon=$(iconId);icon.attr('src','css/images/icon_dropdownArrow'+(($select.attr('disabled'))?'Disabled':'')+'.png');},1);return;}
if($select.closest('.ieDropdownContainer').length>0){return;}
var overflowClass=($select.hasClass('ieNoStretch'))?'':'ieDropdownContainerOverflow';var o=$(this).wrap('<div class="ieDropdownContainer"><div id="'+this.id+'DDOverflow" class="'+overflowClass+'"></div></div>').closest('.ieDropdownContainer').append('<img id="'+this.id+'DDIcon" src="css/images/icon_dropdownArrow'+(($($select).attr('disabled'))?'Disabled':'')+'.png"/>');var i=document.getElementById(this.id+'DDIcon');var d=document.getElementById(this.id);updateOptions($select);ddCloneIds.push(this.id+'Clone');i.onmousedown=function(){if(ddCloneIds.length>0){for(var z=0;z<ddCloneIds.length;z++){var rc=document.getElementById(ddCloneIds[z]);if(rc){rc.removeNode(true);}}}
i.hasClone=false;if(!i.hasClone){var e=d.cloneNode(true);e.style.position='absolute';e.style.top=$select.offset().top+d.offsetHeight;e.style.left=$select.offset().left;e.onchange=function(){document.getElementById(d.id).selectedIndex=e.selectedIndex;document.getElementById(d.id).fireEvent('onchange');e.removeNode(true);i.hasClone=false;};if($(e).attr('disabled')){return false;}
e.focus();e.onmouseleave=function(){e.removeNode(true);i.hasClone=false;document.body.onclick=null;};e.onblur=function(){document.getElementById(d.id).fireEvent('onchange');e.removeNode(true);i.hasClone=false;};document.body.appendChild(e);document.body.onclick=function(){if(window.event.srcElement.id!=i.id){e.onmouseleave();}};e.setAttribute('size',(e.options.length<25)?e.options.length+$(e).find('optGroup').length:25);e.style.width=d.offsetWidth;e.id=d.id+'Clone';e.options[d.selectedIndex].setAttribute('selected',true);e.setAttribute('class','DDClone');i.hasClone=true;}};d.onmousedown=function(){var c=document.getElementById(this.id+'Clone');if(c){document.body.removeChild(c);i.hasClone=false;}};}else{$(this).addClass('ieDropdownDefault');}});}});})(jQuery);
$(function(){$.fn.dropdownMenu=function(options){$.fn.dropdownMenu.defaults={submenuIndicator:' &raquo; ',hideTimeout:500,rebindHoverOnly:false};var options=$.extend({},$.fn.dropdownMenu.defaults,options);var offset;var isMouseOver=false;$(this).each(function(){$this=$(this);$submenus=$this.find('ul');if(options.rebindHoverOnly==false){$submenus.addClass('invisible');$this.addClass('dropdownMenu');$submenus.siblings('a').append(options.submenuIndicator).parent().addClass('dropdownSubMenu');$submenus.click(function(){isMouseOver=false;$(this).addClass('invisible');});}
$submenus.parent().hover(function(){$(this).addClass('selected').children('ul').removeClass('invisible');isMouseOver=true;},function(){var that=this;isMouseOver=false;$(that).removeClass('selected').children('ul').addClass('invisible');});$submenus.children('li').hover(function(){$(this).addClass('selected');},function(){$(this).removeClass('selected');});});};});

$(function(){$.fn.analyticsBinder=function(options){var events={external:'externalLinkAccessed'};this.bind('click',function(e){var $target=$(e.target).closest('a');var url=$target.attr('href');if(url!=null&&url.match(/^http(s?)\:\/\//i)){MV.EventsManager.fireEvent(events.external,[url,$target.text()]);}});};});
(function($){function History(){this._curHash='';this._callback=function(hash){};};$.extend(History.prototype,{init:function(callback){this._callback=callback;this._curHash=window.location.hash;if($.browser.msie){if(this._curHash==''){this._curHash='#';}
$("body").prepend('<iframe id="jQuery_history" style="display: none;"></iframe>');var iframe=$("#jQuery_history")[0].contentWindow.document;iframe.open();iframe.close();iframe.location.hash=this._curHash;}
this._callback(this._curHash.replace(/^#/,''));setInterval(this._check,10);},_check:function(){if($.browser.msie){var ihistory=$("#jQuery_history")[0];var iframe=ihistory.contentDocument||ihistory.contentWindow.document;var current_hash=iframe.location.hash;if(current_hash!=$.history._curHash){window.location.hash=current_hash;$.history._curHash=current_hash;$.history._callback(current_hash.replace(/^#/,''));}}else{var current_hash=window.location.hash;if(current_hash!=$.history._curHash){$.history._curHash=current_hash;$.history._callback(current_hash.replace(/^#/,''));}}},load:function(hash){var newhash='#'+hash;window.location.hash=newhash;if(newhash=='#'){return;}
if($.browser.msie){this._curHash=newhash;var ihistory=$("#jQuery_history")[0];var iframe=ihistory.contentWindow.document;iframe.open();iframe.close();iframe.location.hash=newhash;this._callback(hash);}}});$(document).ready(function(){$.history=new History();});})(jQuery);
MVC={};MVC.SystemController={controllers:{},start:function(){MV.EventsManager.fireEvent('application.init.onStart');MV.EventsManager.fireEvent('Analytics.application.init.onStart');MVC.Application.init({callback:function(){MVC.SystemController.dispatchRequest();MV.EventsManager.fireEvent('application.init.onComplete');MV.EventsManager.fireEvent('Analytics.application.init.onComplete');}});MV.EventsManager.subscribeToEvent('locationHashChanged',function(){MVC.SystemController.dispatchRequest();});MV.EventsManager.fireEvent('applicationStarted');},registerController:function(controller){var tempControl=$.extend({},MVC.Controller);var newController=$.extend(tempControl,controller);newController.view=$.extend({},MVC.View);newController.view.controllerId=newController.id;newController.viewScripts={};newController.models={};newController.isExtended=false;return this.setController(newController);},registerViewScript:function(controller,viewScript){var tempViewScript=$.extend({},MVC.ViewScript);var newViewScript=$.extend(tempViewScript,viewScript);newViewScript.containers={};newViewScript.templates={};newViewScript.view={};newViewScript.$html={};newViewScript.originalHtml='';newViewScript.cloneCount=0;newViewScript.response={};newViewScript.renderedStatus=false;newViewScript.loadedStatus=false;newViewScript.initializedStatus=false;newViewScript.isExtended=false;newViewScript.client={};if(controller.id==='application'&&newViewScript.id==='canvas'){MVC.Canvas.setSourceViewScript(newViewScript);}
return this.getController(controller.id).registerViewScript(newViewScript);},extendController:function(originalControllerObject,extendControllerObject){originalControllerObject.extend(extendControllerObject);},extendViewScript:function(originalViewScriptObject,extendViewScriptObject){originalViewScriptObject.extend(extendViewScriptObject);},dispatchRequest:function(request){if(!request){request=this.getRequest();}
MVC.Dispatcher.dispatchRequest(request);},getRequest:function(){var currentRequestHash=window.location.hash;var requestInfo=(currentRequestHash)?currentRequestHash.substr(1,currentRequestHash.length):'';return requestInfo?this.createRequest({hashString:requestInfo}):this.getDefaultRequest();},getDefaultRequest:function(){var defaultRequest=this.createRequest();defaultRequest.setControllerId('home');defaultRequest.setActionId('default');return defaultRequest;},createRequest:function(opts){var d=new Date();var tempRequest=$.extend({},MVC.Request);var controllerId,actionId,params;controllerId=opts&&opts.controllerId?opts.controllerId:'';actionId=opts&&opts.actionId?opts.actionId:'';params=opts&&opts.params?opts.params:{};if(opts&&opts.requestObj){opts.hashString=opts.requestObj.serialize();}
if(opts&&opts.hashString){var requestInfo=opts.hashString;var requestArray=requestInfo.split('/');controllerId=requestArray.length&&requestArray[0]?requestArray[0]:'';actionId=requestArray.length>1&&requestArray[1]?requestArray[1]:'';params=requestArray.length>2?requestArray.slice(2):{};}
if(controllerId==''){controllerId='home';}
if(actionId==''){actionId='default';}
tempRequest.id=d.getTime();tempRequest.setControllerId(controllerId);tempRequest.setActionId(actionId);tempRequest.setParams(params);return tempRequest;},sendRequest:function(request){if(request.setLocation){if($.history){$.history.load(request.serialize().substr(1));}else{window.location.hash=request.serialize();}}else{this.dispatchRequest(request);}},createResponse:function(opts){var d=new Date();var tempResponse=$.extend({},MVC.Response);tempResponse.id=d.getTime();tempResponse.segments=opts&&opts.segments&&opts.segments.length>0?segments:[];tempResponse.viewScript=opts&&opts.viewScript?opts.viewScript:{};tempResponse.callbacks=opts&&opts.callbacks?opts.callbacks:[];return tempResponse;},sendResponse:function(response){var segment,segmentId,$container;for(var i=0,l=response.segments.length;i<l;i++){segment=response.segments[i];segmentId=segment.id;$container=response.viewScript&&response.viewScript.containers?response.viewScript.containers[segmentId]:null;if(!$container||$container.length==0){$container=this.getController('application').getViewScript('default').containers[segmentId];}
try{switch(segment.manipulation){case'append':$container.append(segment.content);break;case'prepend':$container.prepend(segment.content);break;case'replaceWith':$container.replaceWith(segment.content);break;default:$container.empty().append(segment.content);}}
catch(err){MVC.Console.call('debug',"SystemController.sendResponse :: Container not available: "+segmentId+" :: "+err);}}
response.executeCallbacks();},createModel:function(data){var tempModel=$.extend({},MVC.Model);tempModel.setData(data||{});return tempModel;},getControllers:function(){return this.controllers;},getController:function(controlId){return this.controllers[controlId];},setController:function(controller){this.controllers[controller.id]=controller;return controller;}};
MVC.Action={id:''};
MVC.Application={id:'',body:{},canvasRegister:{},init:function(opts){this.body=$('body');var controller=MVC.SystemController.getController('application');var loadApplication=function(){controller.getViewScript('default')._smartRender({callback:function(){controller.getViewScript('canvas')._smartLoad({callback:opts.callback});}});};if(typeof controller.init=='function'){controller.init({callback:loadApplication});}else{loadApplication();}},changeBodyClass:function(className){this.body.removeAttr('class').addClass(className);},createCanvas:function(opts){var canvas=MVC.Canvas.create(opts);this.canvasRegister[opts.canvasId]=canvas;return canvas;},hideCanvas:function(canvasIds){if(!canvasIds||canvasIds===null||canvasIds===''){for(var canvas in this.canvasRegister){this.getCanvas(canvas).hide();}
return;}
var ids=canvasIds.split(',');if(ids.length>0){var cid;for(var i=0,l=ids.length;i<l;i++){cid=$.trim(ids[i]);if(this.getCanvas(cid)){this.getCanvas(cid).hide();}}}},showCanvas:function(canvasId){this.getCanvas(canvasId).show();},getCanvas:function(canvasId){return this.canvasRegister[canvasId];}};
MVC.Canvas={cloneCount:0,sourceViewScript:{},setSourceViewScript:function(viewScript){this.sourceViewScript=viewScript;},getSourceViewScript:function(){return this.sourceViewScript;},create:function(opts){var originalViewScript=this.getSourceViewScript();var c=originalViewScript.clone();c.setId(opts.viewScriptId||originalViewScript.getId()+'Clone-'+this.cloneCount);c.getContainer('canvas').attr(opts.attr).addClass('canvas');c.render();return c;}};
MVC.Console={call:function(method){if(MV&&MV.Console){MV.Console.call(method,[].slice.call(arguments,1));}}};
MVC.Constants={MODEL:{LOCATION:'js/models',EXTENSION:'.js'},VIEW:{LOCATION:'js/views',EXTENSION:'.html'},CLIENTMODEL:{LOCATION:'client/js/models',EXTENSION:'.js'},CLIENTVIEW:{LOCATION:'client/js/views',EXTENSION:'.html'},IMAGES:{LOCATION:'images',GIF_EXTENSION:'.gif',PNG_EXTENSION:'.png'},ESCAPE_HASH_VALUE_MAP:{'/':'~~'},UNESCAPE_HASH_VALUE_MAP:null,init:function(){if(!this.UNESCAPE_HASH_VALUE_MAP){this.UNESCAPE_HASH_VALUE_MAP={};for(var key in this.ESCAPE_HASH_VALUE_MAP){this.UNESCAPE_HASH_VALUE_MAP[this.ESCAPE_HASH_VALUE_MAP[key]]=key;}}}};MVC.Constants.init();
MVC.Controller={id:'',isExtended:false,view:{},models:{},viewScripts:{},defaultViewScriptLoaded:false,extend:function(extendController){this.isExtended=true;$.extend(this,extendController);},actionExists:function(actionId){return(this[actionId]&&typeof this[actionId]=='function');},registerViewScript:function(viewScript){this.setViewScript(viewScript);},getViewScript:function(viewScriptId){return this.viewScripts[viewScriptId];},setViewScript:function(viewScript){viewScript.controllerId=this.id;this.viewScripts[viewScript.id]=viewScript;return this.viewScripts[viewScript.id];},clearModels:function(){this.models={};},createModel:function(id,data){var model=$.extend({},MVC.Model);model.setData(data);this.setModel(id,model);},setModel:function(id,model){this.models[id]=model;},getModel:function(id){return this.models[id];},loadModel:function(modelName,callback,isClientModel){this.createModel(modelName);this.fetchModel(modelName,callback,isClientModel);},fetchModel:function(modelName,callback,isClientModel){var modelLocation=(isClientModel&&isClientModel===true)?MVC.Constants.CLIENTMODEL.LOCATION:MVC.Constants.MODEL.LOCATION;var modelExtension=(isClientModel&&isClientModel===true)?MVC.Constants.CLIENTMODEL.EXTENSION:MVC.Constants.MODEL.EXTENSION;var _controller=this;jQuery.getJSON(modelLocation+'/'+this.id+'/'+modelName+modelExtension,function(data){_controller.getModel(modelName).setData(data.d);callback(_controller);});},callWebService:function(opts,callback)
{var that=this;var batchCallback=function(results)
{for(var x in results)
{that.createModel(x,results[x].Results);}
if(callback)
{callback();}};var batchData={batchCallback:batchCallback,batchData:opts};var batch=MV.WebServices.CreateBatch(batchData);batch.Call();},callWS:function(opts){var _controller=this;var subscriberPayload={wsOpts:opts,wsData:null,wsError:null};MV.WebServices[opts.WSObjectName][opts.WSMethodName](opts.params,function(data){_controller.createModel(opts.WSMethodName,data);opts.callback(_controller);subscriberPayload.wsData=data;MV.EventsManager.fireEvent('webServiceReturned',[subscriberPayload]);MV.EventsManager.fireEvent('Analytics.webServices.'+opts.WSObjectName+'.'+opts.WSMethodName+'.onComplete',[subscriberPayload]);},function(error,xhr){if(opts.error){opts.error(_controller,error);}
subscriberPayload.wsError=error;MV.EventsManager.fireEvent('webServiceError',[opts,error]);MV.EventsManager.fireEvent('Analytics.webServices.'+opts.WSObjectName+'.'+opts.WSMethodName+'.onError',[subscriberPayload]);});MV.EventsManager.fireEvent('webServiceCalled',opts);MV.EventsManager.fireEvent('Analytics.webServices.'+opts.WSObjectName+'.'+opts.WSMethodName+'.onStart',[subscriberPayload]);},isDefaultViewScriptLoaded:function(){return this.defaultViewScriptLoaded?true:false;},setDefaultViewScriptLoaded:function(params){this.defaultViewScriptLoaded=params;},defaultViewSciptIsLoaded:function(){this.setDefaultViewScriptLoaded(true);},getId:function(){return this.id;},setId:function(id){this.id=id;}};
MVC.Dispatcher={requests:{},init:function(){MV.EventsManager.addEvent('requestDispatched');},dispatchRequest:function(request){var controllerId=request.getControllerId();var actionId=request.getActionId();var params=request.getParams();var controller=MVC.SystemController.getController(controllerId);var subscriberPayload={request:request};MV.EventsManager.fireEvent('requests.'+request.getControllerId()+'.'+request.getUrlFriendlyActionId()+'.onStart',[subscriberPayload]);MV.EventsManager.fireEvent('Analytics.requests.'+request.getControllerId()+'.'+request.getUrlFriendlyActionId()+'.onStart',[subscriberPayload]);if(!actionId){actionId='default';request.setActionId(actionId);}
if(!controllerId){controllerId='home';request.setControllerId(controllerId);}
if(!controller){return alert('Controller '+controllerId+' not registered');}
if(!controller.actionExists(actionId)){return alert('Action '+actionId+' does not exist');}
this.storeRequest(request);controller[actionId](params);MV.EventsManager.fireEvent('requestDispatched',subscriberPayload);MV.EventsManager.fireEvent('requests.'+request.getControllerId()+'.'+request.getUrlFriendlyActionId()+'.onComplete',subscriberPayload);MV.EventsManager.fireEvent('Analytics.requests.'+request.getControllerId()+'.'+request.getUrlFriendlyActionId()+'.onComplete',[subscriberPayload]);},getCachedRequest:function(requestId){return this.requests[requestId];},storeRequest:function(request){this.requests[request.id]=request;}};MVC.Dispatcher.init();
$(function(){if($.history){$.history.init(function(hash){if(hash.length>0){MV.EventsManager.fireEvent('locationHashChanged','#'+hash);}});if($.browser.msie){$('body').delegate("a[@rel=history]",'click',function(event){var hash=(this.href.indexOf('#')<0)?'':this.href.replace(/^.*#/,'');$.history.load(hash);});}}else{MVC.History={intervalId:'',previousHash:'',init:function(){var that=this;that.intervalId=setInterval(function(){var currentHash=window.location.hash;if(currentHash!=that.previousHash){that.previousHash=currentHash;MV.EventsManager.fireEvent('locationHashChanged',currentHash);}},10);}};MVC.History.init();}});
MVC.Model={id:'',data:{},findInData:function(dataPropertyName){return(this.data[dataPropertyName]!=undefined)?this.data[dataPropertyName]:null;},setInData:function(dataPropertyName,value){try{this.data[dataPropertyName]=value;}
catch(err){MVC.Console.call('debug',"Model.setInData :: propertyName not defined: "+objectPropertyName+" :: "+err);}},getData:function(){return this.data;},setData:function(data){this.data=data;}};
MVC.Request={id:'',controllerId:'',actionId:'',setLocation:false,setLocationParams:false,maskParams:false,forceDispatch:false,params:{},getId:function(){return this.id;},setActionId:function(id){this.actionId=id+'Action';return this;},getActionId:function(){return this.actionId;},getUrlFriendlyActionId:function(){return this.actionId.replace('Action','');},setControllerId:function(id){this.controllerId=id;return this;},getControllerId:function(){return this.controllerId;},setParams:function(params){if((params instanceof Array)&&(typeof params[0]!=='object')){params=MVC.Utilities.formatArrayToObject(params,MVC.Utilities.decodeHashValue);}
this.params=params;return this;},getParams:function(){return this.params;},formatParams:function(){var str=[];if(this.params&&typeof this.params=='object'){for(var param in this.params){str.push(param);str.push(MVC.Utilities.encodeHashValue(this.params[param]));}}
return str.join('/');},setParam:function(key,value){this.params[key]=value;return this;},getParam:function(key){return this.params[key];},setMaskParams:function(bool){this.maskParms=bool;return this;},getMaskParams:function(){return this.maskParams;},isParamsMasked:function(){return this.maskParams;},setProperty:function(name,value){this[name]=value;return this;},setRequestInAddress:function(bool){this.setLocation=bool;return this;},forceDispatch:function(bool){this.forceDispatch=bool;return this;},send:function(){MVC.SystemController.sendRequest(this);},serialize:function(){var h=[];var controllerId=this.getControllerId();var actionId=this.getUrlFriendlyActionId();if(this.forceDispatch===true){this.setParam('t',new Date().getTime());}
h.push(this.getControllerId()||'');h.push(this.getUrlFriendlyActionId()||'');h.push(this.formatParams());return'#'+h.join('/');}};
MVC.Response={id:'',segments:[],callbacks:[],viewScript:{},setContent:function(containerId,contentObj,domManipulation){this.segments.push({id:containerId,content:contentObj,manipulation:domManipulation});return this;},addCallback:function(fn){this.callbacks.push(fn);return this;},send:function(){MVC.SystemController.sendResponse(this);},bindViewScript:function(viewScript){this.viewScript=viewScript;return this;},executeCallbacks:function(){for(var i=0,l=this.callbacks.length;i<l;i++){this.callbacks[i]();}}};
MVC.Utilities={replaceInString:function(string,map){if(typeof string=='string'){for(var key in map){string=string.split(key).join(map[key]);}}
return string;},formatArrayToObject:function(array,transformFunction){var retobj={};for(var i=0,l=array.length;i<l;i+=2){var key=array[i];var value=array[i+1];retobj[key]=transformFunction?transformFunction(value):value;}
return retobj;},formatKeyValueArrayToObject:function(array,key,value){var obj={};for(var i=0,l=array.length;i<l;i++){if(array[i][key]){obj[array[i][key]]=array[i][value];}}
return obj;},encodeHashValue:function(value){return encodeURIComponent(MVC.Utilities.replaceInString(value,MVC.Constants.ESCAPE_HASH_VALUE_MAP));},decodeHashValue:function(value){return MVC.Utilities.replaceInString(decodeURIComponent(value),MVC.Constants.UNESCAPE_HASH_VALUE_MAP);}};
MVC.View={controllerId:'',render:function(viewScriptId,modelObject){var viewScript=MVC.SystemController.getController(this.controllerId).getViewScript(viewScriptId);if(!viewScript){return alert('ViewScript '+viewScriptId+' not registered');}
viewScript.view=this;viewScript._smartRender({model:modelObject});}};
MVC.ViewScript={id:'',view:{},containers:{},templates:{},$htmlTemplate:null,$html:{},cloneCount:0,originalHtml:'',controllerId:'',response:{},load:function(){},renderedStatus:false,loadedStatus:false,initializedStatus:false,isExtended:false,loadOnlyOnce:false,client:{},_smartLoad:function(opts){this.executeWhenLoaded(function(){if(opts&&opts.callback){opts.callback();}});},_smartRender:function(opts){var that=this;that.setRendered(false);this.executeWhenLoaded(function(){that.setRendered(true);that.render(opts.model);if(opts&&opts.callback){opts.callback();}});},init:function(callback){var that=this;that.setInitialized('started');var viewPath=MVC.Constants.VIEW.LOCATION+'/'+this.controllerId+'/'+this.id+MVC.Constants.VIEW.EXTENSION;jQuery.get(viewPath,function(template){that.$htmlTemplate=$('<div></div>').append(template);that.originalHtml=that.$htmlTemplate.html().toString();var finish=function(){that.cloneTemplates();that.load();that.loaded();callback();};if(!that.isExtended){finish();}else{var clientViewPath=MVC.Constants.CLIENTVIEW.LOCATION+'/'+that.controllerId+'/'+that.id+MVC.Constants.CLIENTVIEW.EXTENSION;jQuery.ajax({url:clientViewPath,success:function(clientTemplate){that.client.$htmlTemplate=$('<div></div>').append(clientTemplate);that.client.originalHtml=that.client.$htmlTemplate.html().toString();},complete:finish});}});},cloneTemplates:function(){if(this.client.$htmlTemplate)
{this.client.$html=this.client.$htmlTemplate.clone(true);}
if(this.$htmlTemplate)
{this.$html=this.$htmlTemplate.clone(true);}},preLoad:function(opts){this._smartLoad(opts);},executeWhenLoaded:function(callback){var that=this;if(!this.isLoaded()){if(this.initializedStatus===false){this.init(callback);}else{setTimeout(function(){that.isLoadedPoll.call(that,callback);},10);}}else if(!this.loadOnlyOnce){this.cloneTemplates();this.load();callback();}else{callback();}},isLoadedPoll:function(callback){var that=this;if(!that.isLoaded()){setTimeout(function(){that.isLoadedPoll.call(that,callback);},10);}else{callback();}},isRendered:function(){return this.renderedStatus?true:false;},setRendered:function(status){this.renderedStatus=status;},rendered:function(){this.setRendered(true);},isLoaded:function(){return this.loadedStatus?true:false;},setLoaded:function(status){this.loadedStatus=status;},isInitialized:function(){return this.initializedStatus?true:false;},setInitialized:function(status){this.initializedStatus=status;},loadsOnlyOnce:function(){return this.loadOnlyOnce;},setLoadOnlyOnce:function(loadOnlyOnce){this.loadOnlyOnce=loadOnlyOnce;},loaded:function(){this.setLoaded(true);this.setInitialized(true);},addTemplate:function(id,selector){var $element;if(typeof selector=='object'&&selector.length){$element=selector;}else if(this.isExtended&&this.client.$html){$element=this.client.$html.find(selector);}
if(!$element||!$element.length){$element=this.$html.find(selector);}
var $clone=$element.clone().removeAttr('id');this.templates[id]=$clone;$element.remove();return $clone;},getTemplate:function(id){return this.templates[id];},addContainer:function(id,selector){var $container;if(typeof selector=='object'&&selector.length){$container=selector;}else if(this.isExtended&&this.client.$html){$container=this.client.$html.find(selector);}
if(!$container||!$container.length){$container=this.$html.find(selector);}
this.containers[id]=$container.removeAttr('id');return $container;},getContainer:function(id){return this.containers[id];},setId:function(id){this.id=id;},getId:function(){return this.id;},clone:function(){var originalViewScript=this;var tempViewScript=$.extend({},MVC.ViewScript);var newViewScript=$.extend(tempViewScript,originalViewScript);newViewScript.containers={};newViewScript.templates={};newViewScript.view={};newViewScript.$html=$('<div></div>').append(originalViewScript.originalHtml).clone();newViewScript.originalHtml='';newViewScript.cloneCount=0;newViewScript.response={};newViewScript.renderedStatus=false;newViewScript.loadedStatus=false;newViewScript.initializedStatus=false;newViewScript.isExtended=false;newViewScript.client={};newViewScript.load();this.cloneCount+=1;return newViewScript;},extend:function(extendViewScript){this.isExtended=true;return $.extend(this,extendViewScript);},getModel:function(id){var controller=MVC.SystemController.getController(this.controllerId);var model=controller.getModel(id);return model;},clearModels:function(){var controller=MVC.SystemController.getController(this.controllerId);controller.clearModels();}};
(function(){var EPD={Name:'EPD',Location:'webservice.asmx',GetApplicationConfig:function(params,callback,error){return this.Call('GetApplicationConfig',params,callback,error);},GetLocationCriteriaList:function(params,callback,error){return this.Call('GetLocationCriteriaList',params,callback,error);},GetRequiredCriteriaList:function(params,callback,error){return this.Call('GetRequiredCriteriaList',params,callback,error);},GetDropDownCriteriaList:function(params,callback,error){return this.Call('GetDropDownCriteriaList',params,callback,error);},GetSearchFields:function(params,callback,error){return this.Call('GetSearchFields',params,callback,error);},GetProviderResults:function(params,callback,error){return this.Call('GetProviderResults',params,callback,error);},GetProviderResultsByObject:function(params,callback,error){return this.Call('GetProviderResultsByObject',params,callback,error);},CreatePDFForSearch:function(params,callback,error){return this.Call('CreatePDFForSearch',params,callback,error);},GetHealthIssueInfo:function(params,callback,error){return this.Call('GetHealthIssueInfo',params,callback,error);},GetHealthIssueCostOverview:function(params,callback,error){return this.Call('GetHealthIssueCostOverview',params,callback,error);},GetPhysicianPatientReviewById:function(params,callback,error){return this.Call('GetPhysicianPatientReviewById',params,callback,error);},GetOfficeCostDetailById:function(params,callback,error){return this.Call('GetOfficeCostDetailById',params,callback,error);},GetOfficeCostDetailTopServicesById:function(params,callback,error){return this.Call('GetOfficeCostDetailTopServicesById',params,callback,error);},GetQualityDetailById:function(params,callback,error){return this.Call('GetQualityDetailById',params,callback,error);},GetOfficePatientDemographicsById:function(params,callback,error){return this.Call('GetOfficePatientDemographicsById',params,callback,error);},GetAllHospitalCostDetail:function(params,callback,error){return this.Call('GetAllHospitalCostDetail',params,callback,error);},GetHospitalDetailsQuality:function(params,callback,error){return this.Call('GetHospitalDetailsQuality',params,callback,error);},GetJCAHOHospitalDetailsQuality:function(params,callback,error){return this.Call('GetJCAHOHospitalDetailsQuality',params,callback,error);},GetHospitalDetailsTopTenProcedures:function(params,callback,error){return this.Call('GetHospitalDetailsTopTenProcedures',params,callback,error);},AddMyProvider:function(params,callback,error){return this.Call('AddMyProvider',params,callback,error);},DeleteMyProvider:function(params,callback,error){return this.Call('DeleteMyProvider',params,callback,error);},GetMyProvidersCount:function(params,callback,error){return this.Call('GetMyProvidersCount',params,callback,error);},ShowMyProviders:function(params,callback,error){return this.Call('ShowMyProviders',params,callback,error);},CompareProviders:function(params,callback,error){return this.Call('CompareProviders',params,callback,error);},GetProviderDetail:function(params,callback,error){return this.Call('GetProviderDetail',params,callback,error);},GetProviderQualityData:function(params,callback,error){return this.Call('GetProviderQualityData',params,callback,error);},GetLoggedInUser:function(params,callback,error){return this.Call('GetLoggedInUser',params,callback,error);},ValidatePrefix:function(params,callback,error){return this.Call('ValidatePrefix',params,callback,error);}};MV.WebServices.Add(EPD);})();
var EPD=EPD||{};EPD.Config={_data:{},_regions:{local:[],national:[]},_detailControllersIds:['affiliations','affiliatedDoctors','costDetail','healthGradesQuality','healthGradesTopTenProcedures','jointCommissionQuality','medicalServices','mortalityReadmissions','officeProfile','patientDemographics','patientReviews','profile','qualityDetail','surgicalCare','topServices','deathRates','procedureCounts','patientExperience','utilizationRates'],_init:function(opts){this._data=opts.data;this.parseProvidersTypesOnly(opts.data);if(opts.callback&&typeof opts.callback=='function'){opts.callback.apply(this,[{data:this.getData()}]);}},init:function(){},parseProvidersTypesOnly:function(data){if(data&&data.length){for(var gi=0,gl=data.length;gi<gl;gi++){var group=data[gi];this[group.Id]={Label:group.Label};if(group.Elements){for(var ei=0,el=group.Elements.length;ei<el;ei++){var element=group.Elements[ei];this[group.Id][element.Id]={Label:element.Label};if(element.Attributes){for(var ai=0,al=element.Attributes.length;ai<al;ai++){var attribute=element.Attributes[ai];this[group.Id][element.Id][attribute.Id]=attribute.Value;if(attribute.Id=='Region'){this._regions[attribute.Value].push(element.Id);}}}}}}}},parseCompositeKey:function(key,keyType){if(!key||typeof(key.split)!=='function'){return null;}
var ar=key.split('|');var retobj={toString:function(){return key;}};if(keyType==='national'){retobj.product=ar[0];retobj.plan=ar[1];retobj.network=ar[2];retobj.providerId=ar[3];retobj.providerSequence=ar[4];retobj.groupId=ar[5];retobj.groupSequence=ar[6];retobj.providerType=ar[7];}else{retobj.plan=ar[0];retobj.network=ar[1];retobj.providerType=ar[2];retobj.providerId=ar[3];retobj.groupId=ar[4];retobj.providerSequence=ar[5];retobj.groupSequence=ar[6];retobj.product=ar[7];}
return retobj;},getAllProviderTypes:function(){return this.ProviderTypeList;},getProviderTypeCategory:function(providerType){if(this.ProviderTypeList&&this.ProviderTypeList[providerType]){return this.ProviderTypeList[providerType].Category;}},isProviderTypeOfCategories:function(providerType,categories){var category=this.getProviderTypeCategory(providerType);return($.inArray(category,categories)>-1);},getProviderTypeNameByCode:function(providerType){if(this.ProviderTypeList&&this.ProviderTypeList[providerType]){return this.ProviderTypeList[providerType].Label;}},getClientCode:function(){return this._data.ClientCode||$.cookie('MVClientPlan');},getData:function(){return this._data;},getDetailControllersIds:function(){return this._detailControllersIds;},isProviderLocal:function(providerCode){return($.inArray(providerCode,this._regions.local)>-1);},isProviderNational:function(providerCode){return($.inArray(providerCode,this._regions.national)>-1);},getProviderRegion:function(providerCode){return this.ProviderTypeList[providerCode].Region||null;},isValidProviderType:function(providerCode){for(var p in this.ProviderTypeList){if(p!='Label'&&p==providerCode){return true;}}
return false;}};
var EPD=EPD||{};EPD.Strings=MVC.Strings={init:function(opts){var controllerIds=[];for(var id in MVC.SystemController.getControllers()){controllerIds.push(id.charAt(0).toUpperCase()+id.substring(1));}
if(controllerIds.length>0){var _this=this;MV.Strings.Load(controllerIds,function(data){$.extend(_this,data);if(opts.callback){opts.callback();}});}else if(opts.callback){opts.callback();}},getEntry:function(group,key){return this[group]?this[group][key]:undefined;}};
MV.EventsManager.subscribeToEvent('externalLinkAccessed',function(subscriberPayload){MV.EventsManager.fireEvent('Analytics.application.externalLinkAccessed.onComplete',[subscriberPayload]);});
(function(){var Analytics={Name:'Analytics',Location:'analytics.asmx',LogAnalyticsEvent:function(params,callback,error){var wsParams=[];for(var param in params){wsParams.push({name:param,value:params[param]});}
return this.Call('LogAnalyticsEvent',{parameters:wsParams},callback,error);}};MV.WebServices.Add(Analytics);})();

function AnalyticsEngine(interval){var eventBuffer=[];var intervalID=null;this.start=function(newInterval){if(!intervalID){if(newInterval){interval=newInterval;}
if(interval>0){intervalID=window.setInterval(submitAllEvents,interval);return true;}}
return false;};this.stop=function(submit){if(submit){submitAllEvents();}
if(intervalID){window.clearInterval(intervalID);intervalID=null;return true;}
return false;};this.isRunning=function(){return!!intervalID;};this.trackEvent=function(event){if(event&&event instanceof AnalyticsEvent){if(interval>0){eventBuffer.push(event);}else{window.setTimeout(function(){submitEvent(event);},0);}
return true;}
return false;};var submitEvent=function(event){if(MV.WebServices.Analytics.LogAnalyticsEvent){MV.WebServices.Analytics.LogAnalyticsEvent(event.getParameters());}};var submitAllEvents=function(){var numEvents=eventBuffer.length;for(var i=0;i<numEvents;i++){submitEvent(eventBuffer[i]);}
eventBuffer=[];return numEvents;};var unload=function(){this.TrackEvent(new ApplicationUnloadEvent());this.Stop(true);};}
function AnalyticsEvent(type,parameters){parameters=parameters||{};parameters.EventType=type;parameters.Client=Config.Analytics.Client;parameters.Version=Config.Analytics.Version;this.getParameter=function(name){return parameters[name];};this.setParameter=function(name,value){if(name&&value){parameters[name]=value;return true;}
return false;};this.removeParameter=function(name){if(name&&parameters[name]){var value=parameters[name];delete parameters[name];return value;}
return false;};this.getParameters=function(){return parameters;};this.toString=function(){var stringArray=['{\n\t'];for(var name in parameters){var value=parameters[name];if(typeof value==="string"){if(value===""){value=null;}
else{value='"'+value+'"';}}
stringArray.push(',\n\t"',name,'":',value);}
stringArray.push('\n}');return stringArray.join();};this.valueOf=function(){return this.toString();};}
AnalyticsEvent.TYPES={APPLICATION_LOAD:{LABEL:'sessionStart',PARAMETERS:{REFERRER:'Referrer',IS_SECURE:'IsSecure'}},PROVIDER_SEARCH:{LABEL:'providerSearch',FILTER:['MaxRows','SortBy','TotalRowCount','RecordsPerPage','PageNumber'],PARAMETERS:{PROVIDER_TYPE:'ProviderType',PLAN:'Plan',NETWORK:'Network',PREFIX:'Prefix',PRODUCT:'Product',LAST_NAME:'LastName',PROVIDER_NAME:'ProviderName',SPECIALTY_CATEGORIES:'SpecialtyCategories',SPECIALTY:'Specialty',IS_ACCEPTING_NEW_PATIENTS:'IsAcceptingNewPatients',GENDER:'Gender',SECONDARY_LANGUAGE:'SecondaryLanguage',DISTANCE:'Distance',LATITUDE:'Latitude',LONGITUDE:'Longitude',HOSPITAL_AFFILIATION:'HospitalAffiliation',IS_CERTIFIED:'IsBoardCertified',IS_TOP_RATED:'IsTopRated',IS_PCP:'IsPCP',IS_CENTER_OF_EXCELLENCE:'IsBlueDistinctionCenterOfExcellence',IS_IN_NETWORK:'IsInNetwork',IS_ACCREDITED_FACILITY:'IsAccreditedFacility',IS_NCQA_CERTIFIED:'IsNCQACertified',IS_OTHER_RECOGNITIONS:'IsOtherRecognitions',STREET:'Street',CITY:'City',COUNTY:'County',STATE:'State',ZIP:'Zip',PROVIDER_TYPE_LABEL:'ProviderTypeLabel',PLAN_LABEL:'PlanLabel',NETWORK_LABEL:'NetworkLabel',PRODUCT_LABEL:'ProductLabel',SECONDARY_LANGUAGE_LABEL:'LanguageLabel',SPECIALTY_LABEL:'SpecialtyLabel',SPECIALTY_CATEGORIES_LABEL:'SpecialtyCategoriesLabel',HOSPITAL_AFFILIATION_LABEL:'HospitalAffiliationLabel'}},EXTERNAL_LINK:{LABEL:'externalLink',PARAMETERS:{URL:'Url',LABEL:'Label'}},APPLICATION_UNLOAD:{LABEL:'sessionEnd'}};ApplicationLoadEvent.superclass=AnalyticsEvent;function ApplicationLoadEvent(){var parameters={};var referrer='';try{referrer=document.referrer||opener.location.href;}catch(e){}
parameters[AnalyticsEvent.TYPES.APPLICATION_LOAD.PARAMETERS.REFERRER]=referrer;arguments.callee.superclass.call(this,AnalyticsEvent.TYPES.APPLICATION_LOAD.LABEL,parameters);}
ApplicationLoadEvent.prototype=(function(){return new ApplicationLoadEvent.superclass()})();ApplicationLoadEvent.prototype.constructor=ApplicationLoadEvent.superclass;ProviderSearchEvent.superclass=AnalyticsEvent;function ProviderSearchEvent(parameters){var PARAMETER_NAMES=AnalyticsEvent.TYPES.PROVIDER_SEARCH.PARAMETERS;var PARAMETER_FILTER=AnalyticsEvent.TYPES.PROVIDER_SEARCH.FILTER;for(var i=0,j=PARAMETER_FILTER.length;i<j;i++){if(typeof parameters[PARAMETER_FILTER[i]]!="undefined"){delete parameters[PARAMETER_FILTER[i]];}}
arguments.callee.superclass.call(this,AnalyticsEvent.TYPES.PROVIDER_SEARCH.LABEL,parameters);this.setSecureStatus=function(isSecure){parameters[PARAMETER_NAMES.IS_SECURE]=isSecure;};this.setPlanLabel=function(label){parameters[PARAMETER_NAMES.PLAN_LABEL]=label;};this.setProviderTypeLabel=function(label){parameters[PARAMETER_NAMES.PROVIDER_LABEL]=label;};this.setHealthIssueLabel=function(label){parameters[PARAMETER_NAMES.ISSUE_LABEL]=label;};this.setSearchConfigurationLabels=function(decorator){var networkCode=parameters[PARAMETER_NAMES.NETWORK];var networkList=decorator.NetworkList;parameters[PARAMETER_NAMES.NETWORK_LABEL]=null;if(networkCode&&networkList){for(var i=0,l=networkList.length;i<l;i++){var networkData=networkList[i];if(networkData.Code===networkCode){parameters[PARAMETER_NAMES.NETWORK_LABEL]=networkData.Name;break;}}}
var languageCode=parameters[PARAMETER_NAMES.LANGUAGE];var languageList=decorator.LanguageList;parameters[PARAMETER_NAMES.LANGUAGE_LABEL]=null;if(languageCode&&languageList){for(var i=0,l=languageList.length;i<l;i++){var languageData=languageList[i];if(languageData.Code===languageCode){parameters[PARAMETER_NAMES.LANGUAGE_LABEL]=languageData.Name;break;}}}
var specialityCode=parameters[PARAMETER_NAMES.SPECIALTY];var specialityList=decorator.SpecialtyCategoryList;parameters[PARAMETER_NAMES.SPECIALTY_LABEL]=null;if(specialityCode&&specialityList){for(var i=0,l=specialityList.length;i<l;i++){var specialityData=specialityList[i];if(specialityData.Code===specialityCode){parameters[PARAMETER_NAMES.SPECIALTY_LABEL]=specialityData.Name;break;}}}
var hospitalCode=parameters[PARAMETER_NAMES.HOSPITAL];var hospitalList=decorator.HosptialFacilityAffliations;parameters[PARAMETER_NAMES.HOSPITAL_LABEL]=null;if(hospitalCode&&hospitalList){for(var i=0,l=hospitalList.length;i<l;i++){var hospitalData=hospitalList[i];if(hospitalData.Code===hospitalCode){parameters[PARAMETER_NAMES.HOSPITAL_LABEL]=hospitalData.Name;break;}}}
var productCode=parameters[PARAMETER_NAMES.PRODUCT];parameters[PARAMETER_NAMES.PRODUCT_LABEL]=null;if(productCode){var productList=decorator.ProductList;if(productCode&&productList){for(var i=0,l=productList.length;i<l;i++){var productData=productList[i];if(productData.Code===productCode){parameters[PARAMETER_NAMES.PRODUCT_LABEL]=productData.Name;break;}}}}};this.setSearchConfiguration=function(requestParams){var transformParam=function transformParam(string){return string.charAt(0).toLowerCase()+string.substr(1);}
if(requestParams){for(p in PARAMETER_NAMES){var apName=transformParam(PARAMETER_NAMES[p]);if(typeof requestParams[apName]!='undefined'){parameters[PARAMETER_NAMES[p]]=requestParams[apName];}}}};this.setParameter=function(name,value){parameters[PARAMETER_NAMES[name]]=value;};}
ProviderSearchEvent.prototype=(function(){return new ProviderSearchEvent.superclass()})();ProviderSearchEvent.prototype.constructor=ProviderSearchEvent.superclass;ExternalLinkEvent.superclass=AnalyticsEvent;function ExternalLinkEvent(parameters){arguments.callee.superclass.call(this,AnalyticsEvent.TYPES.EXTERNAL_LINK.LABEL,parameters);}
ExternalLinkEvent.prototype=(function(){return new ExternalLinkEvent.superclass()})();ExternalLinkEvent.prototype.constructor=ExternalLinkEvent.superclass;ApplicationUnloadEvent.superclass=AnalyticsEvent;function ApplicationUnloadEvent(){arguments.callee.superclass.call(this,AnalyticsEvent.TYPES.APPLICATION_UNLOAD.LABEL);}
ApplicationUnloadEvent.prototype=(function(){return new ApplicationUnloadEvent.superclass()})();ApplicationUnloadEvent.prototype.constructor=ApplicationUnloadEvent.superclass;
MV.Util.namespace('MV.EPD.AnalyticsSubscribers.MedVantage');MV.EPD.AnalyticsSubscribers.MedVantage.analyticsEngine=new AnalyticsEngine(Config.Analytics.Interval);MV.EPD.AnalyticsSubscribers.MedVantage.analyticsEngine.start();MV.EPD.AnalyticsSubscribers.MedVantage.commands={providerResultsReturnedObject:function(analyticsEventObj){MV.EPD.AnalyticsSubscribers.MedVantage.analyticsEngine.trackEvent(analyticsEventObj);},externalLinkAccessed:function(payload){var event=new ExternalLinkEvent(payload);MV.EPD.AnalyticsSubscribers.MedVantage.analyticsEngine.trackEvent(event);},applicationStarted:function(payload){var event=new ApplicationLoadEvent();MV.EPD.AnalyticsSubscribers.MedVantage.analyticsEngine.trackEvent(event);},providerResultsReturned:function(payload){var event=new ProviderSearchEvent($.extend({},payload.params));event.setSearchConfiguration(MVC.SystemController.getRequest().getParams());MV.EPD.AnalyticsSubscribers.MedVantage.analyticsEngine.trackEvent(event);}}
MV.EventsManager.subscribeToEvent('Analytics.application.externalLinkAccessed.onComplete',MV.EPD.AnalyticsSubscribers.MedVantage.commands.externalLinkAccessed);MV.EventsManager.subscribeToEvent('Analytics.application.init.onComplete',MV.EPD.AnalyticsSubscribers.MedVantage.commands.applicationStarted);MV.EventsManager.subscribeToEvent('Analytics.webServices.EPD.GetProviderResults.onComplete',MV.EPD.AnalyticsSubscribers.MedVantage.commands.providerResultsReturned);
var ApplicationController={id:'application',canvasRegister:{},init:function(opts){this.callWS({WSObjectName:'EPD',WSMethodName:'GetApplicationConfig',params:{ClientPlanId:$.cookie('MVClientPlan')},callback:function(_this){EPD.Config._init({data:_this.getModel('GetApplicationConfig').getData(),callback:EPD.Config.init});EPD.Strings.init(opts);},error:function(){EPD.Strings.init(opts);}});MV.EventsManager.subscribeToEvent('resizeParentIFrame',this.resizeParentIFrameAction);},defaultAction:function(params){},blockAction:function(params){this.view.BlockParams=params||{};this.view.render('block');},errorAction:function(params){this.view.ErrorParams=params||{};this.view.render('error');},breadCrumbAction:function(params){this.showBreadCrumbAction(params);},showBreadCrumbAction:function(params){var model=MVC.SystemController.createModel({BreadCrumbs:ApplicationController.BreadCrumbs.getArray()});this.view.render('breadCrumb',model);},addBreadCrumbAction:function(params){ApplicationController.BreadCrumbs.add(params);var model=MVC.SystemController.createModel({BreadCrumbs:ApplicationController.BreadCrumbs.getArray()});this.view.render('breadCrumb',model);},resetBreadCrumbAction:function(params){ApplicationController.BreadCrumbs.reset();var model=MVC.SystemController.createModel({BreadCrumbs:ApplicationController.BreadCrumbs.getArray()});this.view.render('breadCrumb',model);},ULListAction:function(params){this.view.Params=params;return this.view.render('ulList');},showDisclaimerAction:function(params){this.view.render('disclaimer',params);},resizeParentIFrameAction:function(){MVC.SystemController.getController('application').getViewScript('default').resize();}};MVC.SystemController.registerController(ApplicationController);
ApplicationController.DefaultViewScript={id:'default',load:function(){this.addContainer('application','#application').supplant(EPD.Strings.Application);this.addContainer('header','#header');this.addContainer('offScreen','#offScreen');this.addContainer('features','#topnav');this.addContainer('breadcrumb','#breadcrumb');this.addContainer('canvasContainer','#canvasContainer');},render:function(){MVC.Application.body.prepend(this.getContainer('application'));$.ddroundies('.mvModalContent .wrapper','12px',true);$.ddroundies('.nav .navGroup','8px 0 0 8px',true);$.ddroundies('div.header .logo .companyName');},resize:function(){var frame=(document.getElementById)?parent.document.getElementById('findProviderFrame'):parent.document.all.findProviderFrame;if(frame){var ch=this.getContainer('application').height();MVC.Console.call('log','Resizing iFrame'+frame.height+' :: '+ch);frame.height=(ch<650)?'650':ch;}}};MVC.SystemController.registerViewScript(ApplicationController,ApplicationController.DefaultViewScript);
ApplicationController.BreadCrumbViewScript={id:'breadCrumb',load:function(){this.addContainer('breadCrumbs','#breadCrumbs');this.addTemplate('breadCrumbItem','#breadCrumbItem');},render:function(model){var breadCrumbsArray=model.findInData('BreadCrumbs');var $breadCrumbs=$('<ul>');var breadCrumbs=this.getContainer('breadCrumbs');breadCrumbs.empty().append(MV.Util.DOMCreation.formatToParentChildrenSupplant(breadCrumbsArray,$breadCrumbs,this.getTemplate('breadCrumbItem')));breadCrumbs.find('.breadCrumbSeparator:last').remove();MVC.SystemController.createResponse().setContent('breadcrumb',breadCrumbs).send();}};MVC.SystemController.registerViewScript(ApplicationController,ApplicationController.BreadCrumbViewScript);ApplicationController.BreadCrumbs={crumbArray:[{Id:'Home',Link:'Home',Location:"Directory.aspx"}],add:function(params){var crumbObjArray=params.breadCrumbs;var addType=params.addType||'';var retCrumb,crumbObj;for(var i=0,l=crumbObjArray.length;i<l;i++){crumbObj=crumbObjArray[i];retCrumb=this.getCrumb(addType==='force'?'':crumbObj.Id);if(crumbObj.Location.indexOf(this.getCrumb('Home').object.Location)<0){crumbObj.Location=this.getCrumb('Home').object.Location+crumbObj.Location;}
if(crumbObj.Reset){this.reset();}
if(retCrumb.position<0){this.crumbArray.push(crumbObj);}else{if(retCrumb.object.Override===false){crumbObj=retCrumb.object;}
this.crumbArray.splice(retCrumb.position,1,crumbObj);if(addType==='final'){this.crumbArray.splice(retCrumb.position+1,this.crumbArray.length);}}}},reset:function(){this.crumbArray.length=1;},getArray:function(){return this.crumbArray;},getCrumb:function(id){var pos=-99,obj={};for(var k=0,l=this.crumbArray.length;k<l;k++){if(this.crumbArray[k].Id===id){pos=k;obj=this.crumbArray[k];break;}}
return{position:pos,object:obj};}};
ApplicationController.CanvasViewScript={id:'canvas',load:function(){this.addContainer('canvas','#canvas');this.addContainer('navigation','#nav');this.addContainer('auxiliary','#auxiliary');this.addContainer('content','#content');this.getContainer('canvas').data('originalClassAttr',this.getContainer('canvas').attr('class'));this.getContainer('navigation').data('originalClassAttr',this.getContainer('navigation').attr('class'));this.getContainer('auxiliary').data('originalClassAttr',this.getContainer('auxiliary').attr('class'));this.getContainer('content').data('originalClassAttr',this.getContainer('content').attr('class'));},render:function(){MVC.SystemController.createResponse().setContent('canvasContainer',this.getContainer('canvas'),'prepend').send();},hide:function(){this.getContainer('canvas').addClass('invisible');},show:function(){this.getContainer('canvas').removeClass('invisible');},changeContainerClassName:function(containerId,cssClassName){var container=this.getContainer(containerId);container.removeAttr('class').addClass(container.data('originalClassAttr')).addClass(cssClassName);},resetNavigation:function(){this.getContainer('navigation').empty();}};MVC.SystemController.registerViewScript(ApplicationController,ApplicationController.CanvasViewScript);
ApplicationController.ULListViewScript={id:'ulList',load:function(){this.addTemplate('listItem','#listItem');this.addTemplate('listItemIcon','#listItemIcon');this.addTemplate('listTemplate','#listTemplate');},render:function(){var data=this.view.Params.data;var listTemplate=this.getTemplate('listTemplate');var listItemTemplate;switch(this.view.Params.listType){case"string":listItemTemplate=this.getTemplate('listItem');break;case"icon":listItemTemplate=this.getTemplate('listItemIcon');break;default:listItemTemplate=this.getTemplate('listItem');}
if(data&&data.length>0){return MV.Util.DOMCreation.formatToParentChildrenSupplant(data,listTemplate,listItemTemplate,this.view.Params.transformFunction);}else{return null;}}};MVC.SystemController.registerViewScript(ApplicationController,ApplicationController.ULListViewScript);
ApplicationController.Utilities={getClientCode:function(){return EPD.Config.getClientCode();},parseCompositeKey:function(key,keyType){return EPD.Config.parseCompositeKey(key,keyType);},formatCamelCase:function(s){function upperConvert(){return arguments[1]==0?arguments[0]:arguments[0].toUpperCase();}
return s.toLowerCase().replace(/\b[a-z]/g,upperConvert).replace(/\W/g,'');},lowerCaseFirstLetter:function(s){return s.replace(/^./,function(l){return l.toLowerCase();});},formatToListSupplant:function(data,listTemplate,listItemTemplate,transformFunction){if(data&&data.length>0){return MV.Util.DOMCreation.formatToParentChildrenSupplant(data,listTemplate,listItemTemplate,transformFunction);}else{return null;}},formatErrorCode:function(value){if(typeof value!="number"){value=parseInt(value,10);}
return String.fromCharCode(Math.abs(value));}};
ApplicationController.BlockViewScript={id:'block',load:function(){this.addContainer('blockContainer','#blockContainer').supplant(EPD.Strings.Application);},render:function(){var viewScript=this.view.BlockParams.viewScript||MVC.SystemController.getController('home').getViewScript('canvas');var containerId=this.view.BlockParams.containerId||'content';MVC.SystemController.createResponse().bindViewScript(viewScript).setContent(containerId,this.getContainer('blockContainer')).addCallback(function(){MV.EventsManager.fireEvent('resizeParentIFrame');}).send();}};MVC.SystemController.registerViewScript(ApplicationController,ApplicationController.BlockViewScript);
ApplicationController.ErrorViewScript={id:'error',load:function(){this.addTemplate('errorTemplate','#errorTemplate');},render:function(){var error={Message:'',Status:'',StatusText:'',ResponseData:{ExceptionType:'',Message:'',StackTrace:''},ResponseText:''};error=$.extend(error,this.view.ErrorParams.error);var errorTemplate=this.getTemplate('errorTemplate').clone(true);if(window.Debug){errorTemplate.supplant(error);errorTemplate.find('#debugInfo').removeClass('invisible');MV.Console.call('warn',error);}else{errorTemplate.supplant({Message:error.Message});}
var viewScript=this.view.ErrorParams.viewScript||MVC.SystemController.getController('home').getViewScript('canvas');var containerId=this.view.ErrorParams.containerId||'content';MVC.SystemController.createResponse().bindViewScript(viewScript).setContent(containerId,errorTemplate).addCallback(function(){MV.EventsManager.fireEvent('resizeParentIFrame');}).send();}};MVC.SystemController.registerViewScript(ApplicationController,ApplicationController.ErrorViewScript);
ApplicationController.DisclaimerViewScript={id:'disclaimer',load:function(){this.addTemplate('disclaimer','#disclaimerTemplate');this.Strings=EPD.Strings.Application;},render:function(options){if(!options||!options.place){return;}
var viewscript,transformations,content;var strings=this.Strings;if(options.place=='welcome'){viewscript=MVC.SystemController.getController('home').getViewScript('welcome');viewscript.getContainer('disclaimer').removeClass('invisible');transformations={Title:options.title||strings.FullDisclaimerLabel,Content:options.content||strings.FullDisclaimerContent};content=this.getTemplate('disclaimer').clone().supplant(transformations).html();MVC.SystemController.createResponse().bindViewScript(viewscript).setContent('disclaimer',content).addCallback(function(){MV.EventsManager.fireEvent('resizeParentIFrame');}).send();}else if(options.place=='results'){viewscript=MVC.SystemController.getController('results').getViewScript('list');viewscript.getContainer('disclaimer').removeClass('invisible');transformations={Title:options.title||strings.ShortDisclaimerLabel,Content:options.content||strings.ShortDisclaimerContent};content=this.getTemplate('disclaimer').clone().supplant(transformations).html();MVC.SystemController.createResponse().bindViewScript(viewscript).setContent('disclaimer',content).addCallback(function(){viewscript.getContainer('disclaimer').find('a.fullDisclaimerLink').click(function(){MVC.SystemController.createRequest().setControllerId('application').setActionId('showDisclaimer').setParams({place:'modal'}).send();});}).send();}else if(options.place=='modal'){transformations={Title:options.title||strings.ModalDisclaimerTitle,Content:options.content||strings.ModalDisclaimerContent};var modalParams={Content:this.getTemplate('disclaimer').clone().supplant(transformations),Callback:function($content,$controls){MV.Util.Events.jumpLinks($content,$content.find('.body'));}};MVC.SystemController.createRequest().setControllerId('plugins').setActionId('modalPlugin').setParams(modalParams).send();}}};MVC.SystemController.registerViewScript(ApplicationController,ApplicationController.DisclaimerViewScript);
var NavigationController={id:'navigation',detailAction:function(params){this.view.Params=params;this.view.render('tabNavigation');},myListAction:function(params){for(var gi=0,gl=params.navigationData.length;gi<gl;gi++){var group=params.navigationData[gi];for(var ei=0,el=group.Elements.length;ei<el;ei++){var element=group.Elements[ei];element.RequestParams='/providerType/'+element.Id;element.CompareRequestParamsForSelected=true;element.Id='default';}}
this.view.Params=params;this.view.render('tabNavigation');}};MVC.SystemController.registerController(NavigationController);
NavigationController.TabNavigationViewScript={id:'tabNavigation',load:function(){this.addContainer('navigationMenu','#navigationMenu');this.addTemplate('listItem','#listItem');this.addTemplate('listTemplate','#listTemplate');this.addTemplate('navigationTab','#navigationTab');},render:function(){var currentRequest=MVC.SystemController.getRequest();var canvas=this.view.Params.canvasViewScript||{};var controllerId=this.view.Params.controllerId;var elementGroups=this.view.Params.navigationData;var DOMManipulation=this.view.Params.DOMManipulation;var navigationMenu=this.getContainer('navigationMenu').clone();var transformations={};var transformFunction=function(d1,d2){d2.CssClass=d1.CssClass||'';if(currentRequest.getUrlFriendlyActionId()==ApplicationController.Utilities.lowerCaseFirstLetter(d1.Id)){if(d1.RequestParams&&d1.CompareRequestParamsForSelected){var currentParams=currentRequest.getParams();var requestParams=MVC.Utilities.formatArrayToObject(d1.RequestParams.substring(1).split('/'),MVC.Utilities.decodeHashValue);var sameParams=true;for(var param in requestParams){if(requestParams[param]!=currentParams[param]){sameParams=false;break;}}
if(sameParams){d2.CssClass+=' selected';}}else{d2.CssClass+=' selected';}}
d2.LinkText=d1.Label;var rp=d1.RequestParams?d1.RequestParams:currentRequest.formatParams();if(rp.substr(0,1)=='/'){rp=rp.substr(1);}
d2.LinkURL='Directory.aspx#'+controllerId+'/'+ApplicationController.Utilities.lowerCaseFirstLetter(d1.Id)+'/'+rp;return d2;};if(!DOMManipulation||DOMManipulation!='append'){navigationMenu.empty();}
var elementGroup,elements,tabTemplate;for(var i=0,l=elementGroups.length;i<l;i++){elementGroup=elementGroups[i];elements=elementGroup.Elements;tabTemplate=this.getTemplate('navigationTab').clone();transformations.NavigationTabTitle=elementGroup.Label;transformations.NavigationTabLinks=MV.Util.DOMCreation.formatToParentChildrenSupplant(elements,this.getTemplate('listTemplate'),this.getTemplate('listItem'),transformFunction);navigationMenu.append(tabTemplate.supplant(transformations));}
MVC.SystemController.createResponse().bindViewScript(canvas).setContent('navigation',navigationMenu).addCallback(function(){navigationMenu.bind('click',function(e){if(e.target.tagName.toUpperCase()=='A'){$(this).find('li').removeClass('selected');$(e.target.parentNode).addClass('selected');}});}).send();}};MVC.SystemController.registerViewScript(NavigationController,NavigationController.TabNavigationViewScript);
var DetailController={id:'detail',defaultAction:function(){var request=MVC.SystemController.getRequest();if(!this.isDefaultViewScriptLoaded()){this.setViewScript(MVC.Application.createCanvas({canvasId:'detail',viewScriptId:'canvas',attr:{className:'detail'}}));MVC.SystemController.createRequest().setControllerId('application').setActionId('showBreadCrumb').send();MVC.SystemController.createRequest().setControllerId('features').setActionId('showFeatures').send();this.defaultViewSciptIsLoaded();this.view.render('default');}
if(this.getViewScript('default').isRendered()){this.reset({request:request});}
this.getViewScript('canvas').changeContainerClassName('content',request.getUrlFriendlyActionId());if(!this.view.Strings){this.view.Strings=EPD.Strings.Detail;}
this.currentProvider=request.getParam('compositeKey');MVC.Application.hideCanvas();MV.EventsManager.fireEvent('resizeParentIFrame');MVC.Application.showCanvas('detail');},loadProviderDetailAction:function(params){var request=MVC.SystemController.getRequest();var requestParams=request.getParams();var additionalCallback=params.wsCallback;var baseCallback=function(_controller){var model=_controller.getModel('GetProviderDetail');var data=DetailController.Utilities.cleanProviderData(_controller.getModel('GetProviderDetail'));var providerName=data.ProviderName;var compositeKey=ApplicationController.Utilities.parseCompositeKey((data.Group===null)?data.CompositeKey:data.Group.CompositeKey);var providerCompositeKey=ApplicationController.Utilities.parseCompositeKey(data.CompositeKey);var groupCompositeKey=ApplicationController.Utilities.parseCompositeKey((data.Group===null)?null:data.Group.CompositeKey);var buildNav=!DetailController.Utilities.isNavigationEqual(_controller.view.Navigation,model.findInData('Navigation'));_controller.view.IsNational=model.findInData('IsNational')||false;_controller.view.Navigation=model.findInData('Navigation');_controller.view.Attributes=model.findInData('ProfileAttributes');_controller.view.Profile=data;MVC.SystemController.createRequest().setControllerId('application').setActionId('addBreadCrumb').setParams({addType:'final',breadCrumbs:[{Id:'ProviderName',Link:providerName,Location:request.serialize(),Override:false}]}).send();var printAllUrl=MVC.SystemController.createRequest().setControllerId('compare').setActionId('compareProviders').setParams({'ProviderType':request.params.providerType,'ProviderIds':data.CompositeKey,'Latitude':data.Latitude,'Longitude':data.Longitude,'IsMyList':'false','PrintPage':'true'}).serialize();MVC.SystemController.createRequest().setControllerId('features').setActionId('updatePrint').setParams({printAllDetailUrl:printAllUrl}).send();if(buildNav&&request.getParam('buildNav')!=='false'){var officeRequest,providerRequest,navItem,providerTypeCategory,navs=_controller.view.Navigation;providerRequest=request.setParam('reload','false');officeRequest=(!groupCompositeKey)?null:MVC.SystemController.createRequest({requestObj:request}).setParam('compositeKey',groupCompositeKey.toString()).setParam('buildNav','false').setParam('reload','false');providerTypeCategory=EPD.Config.getProviderTypeCategory(request.getParam('providerType'));for(var j=0,k=navs.length;j<k;j++){for(var x=0,y=navs[j].Elements.length;x<y;x++){navItem=navs[j].Elements[x];if(request.getUrlFriendlyActionId()=='profile'&&navItem.Id=='OfficeProfile'&&providerTypeCategory=='groups'){navItem.CssClass='selected';}
navItem.RequestParams=(navs[j].Id.indexOf('OfficeTab')>=0&&officeRequest)?officeRequest.formatParams():providerRequest.formatParams();}}
MVC.SystemController.createRequest().setControllerId('navigation').setActionId('detail').setParams({canvasViewScript:_controller.getViewScript('canvas'),controllerId:_controller.getId(),navigationData:_controller.view.Navigation}).send();}else{var currentRequest=MVC.SystemController.getRequest();var linkRequest,href,$this;$('.nav a').each(function(){$this=$(this);href=$this.attr('href');linkRequest=MVC.SystemController.createRequest({hashString:href.substr(href.indexOf('#')+1)});if(currentRequest.getControllerId()==linkRequest.getControllerId()&&currentRequest.getActionId()==linkRequest.getActionId()&&currentRequest.getParam('compositeKey')==linkRequest.getParam('compositeKey')){$this.parent().addClass('selected');}else{$this.parent().removeClass('selected');}});}
_controller.view.render('title');};var opts={WSObjectName:'EPD',WSMethodName:'GetProviderDetail',params:{Plan:requestParams.plan,ProviderType:requestParams.providerType,CompositeKey:requestParams.compositeKey,Latitude:requestParams.Latitude,Longitude:requestParams.Longitude,MapHeight:200,MapWidth:300,HealthIssueId:(MVC.SystemController.getRequest().getParam('healthIssueId')||'')},error:function(_this,error){error.Message=_this.view.Strings.ResultsError;_this.renderError(error);},callback:function(_controller){baseCallback(_controller);if(additionalCallback&&typeof additionalCallback==='function'){additionalCallback(_controller);}}};this.callWS(opts);},officeProfileAction:function(){MVC.SystemController.createRequest().setControllerId('detail').setActionId('profile').setParams({isOffice:true}).send();},profileAction:function(params){this.defaultAction();var additionalCallback=function(_controller){_controller.view.render('profile');};MVC.SystemController.createRequest().setControllerId('detail').setActionId('loadProviderDetail').setParams({isOffice:params.isOffice,wsCallback:additionalCallback}).send();},affiliatedDoctorsAction:function(params){this.defaultAction();var Strings=this.view.Strings;var additionalCallback=function(_controller){var model=_controller.getModel('GetProviderDetail');var tables=[{Id:'affiliatedDoctors',Caption:Strings.TableAffiliatedDoctorsTitle,List:[].concat(MV.Util.Array.sort(_controller.view.Profile.OtherAffiliations,[{element:'Specialties.0.Name ProviderName'},{element:'ProviderName'}])),DataTransformFunction:function(d1,d2){var key=ApplicationController.Utilities.parseCompositeKey(d1.CompositeKey,model.findInData('IsNational')?'national':'local');var costRating=d1.QualityViewScores&&d1.QualityViewScores.CostRating?d1.QualityViewScores.CostRating:0;var qualityRating=d1.QualityViewScores&&d1.QualityViewScores.QualityRating?d1.QualityViewScores.QualityRating:0;var detailRequest=MVC.SystemController.createRequest().setControllerId('detail').setActionId('profile').setParams({'plan':key.plan,'providerType':key.providerType,'compositeKey':d1.CompositeKey,'Latitude':params.Latitude,'Longitude':params.Longitude,'page':'full'});d2.Column1={Name:d1.Name,Request:detailRequest.serialize(),AddClass:d1.AddedToList?'invisible':'',DeleteClass:d1.AddedToList?'':'invisible',AddProviderLink:'addProvider--'+d1.CompositeKey,DeleteProviderLink:'deleteProvider--'+d1.CompositeKey};d2.Column2={List:d1.Specialties&&d1.Specialties.length>0?MV.Util.DOMCreation.formatToParentChildrenSupplant(d1.Specialties,_controller.getViewScript('dynamicDataTable').getTemplate('list'),_controller.getViewScript('dynamicDataTable').getTemplate('listItem')):''};d2.Column3={IconClassName:qualityRating!==0?'quality'+qualityRating:'zero_result',IconWidth:'50',IconHeight:'18',HoverKey:'Quality'+qualityRating};d2.Column4={IconClassName:costRating!==0?'cost'+costRating:'zero_result',IconWidth:'20',IconHeight:'20',HoverKey:'Cost'+costRating};return d2;},Columns:[{Label:Strings.ColumnAffiliationNameLabel,Attributes:['linkContent']},{Label:Strings.ColumnSpecialtiesLabel,Attributes:['listContent']},{Label:Strings.ColumnOverallQualityLabel,Attributes:['iconContent']},{Label:Strings.ColumnOverallCostLabel,Attributes:['iconContent']}]}];model.setInData('Tables',tables);_controller.view.render('address');_controller.view.render('dynamicDataTable',model);};MVC.SystemController.createRequest().setControllerId('detail').setActionId('loadProviderDetail').setParams({wsCallback:additionalCallback}).send();},affiliationsAction:function(params){this.defaultAction();var Strings=this.view.Strings;var additionalCallback=function(_controller){var model=_controller.getModel('GetProviderDetail');var tables=[];tables[0]={Id:'hospitalAffiliations',Caption:Strings.TableHospitalAffiliationsTitle,List:[].concat(_controller.view.Profile.HospitalAffiliations),Columns:[{Label:Strings.ColumnAffiliationNameLabel,Attributes:['linkContent']},{Label:Strings.ColumnAddressLabel,Attributes:['addressContent']},{Label:Strings.ColumnHealthGradesQualityLabel,Attributes:['iconContent']},{Label:Strings.ColumnOverallCostLabel,Attributes:['iconContent']}],DataTransformFunction:function(d1,d2){var key=ApplicationController.Utilities.parseCompositeKey(d1.CompositeKey);var costRating=d1.HospitalScores&&d1.HospitalScores.CostRating?d1.HospitalScores.CostRating:0;var hgRating=d1.HospitalScores&&d1.HospitalScores.HealthGradesQualityRating?d1.HospitalScores.HealthGradesQualityRating:0;var detailRequest=MVC.SystemController.createRequest().setControllerId('detail').setActionId('profile').setParams({'plan':key.plan,'providerType':key.providerType,'compositeKey':d1.CompositeKey,'Latitude':params.Latitude,'Longitude':params.Longitude});d2.Column1={Name:d1.Name,Request:detailRequest.serialize(),AddClass:d1.AddedToList?'invisible':'',DeleteClass:d1.AddedToList?'':'invisible',AddProviderLink:'addProvider--'+d1.CompositeKey,DeleteProviderLink:'deleteProvider--'+d1.CompositeKey};d2.Column2={Address:d1.AddressLine1,CityStateZip:d1.CityStateZip,MapURL:d1.MapURL};d2.Column3={IconClassName:hgRating!==0?'HealthGrades'+hgRating:'zero_result',IconWidth:'49',IconHeight:'10',HoverKey:'HealthGrades'+hgRating};d2.Column4={IconClassName:costRating!==0?'cost'+costRating:'zero_result',IconWidth:'20',IconHeight:'20',HoverKey:'Cost'+costRating};return d2;}};tables[1]={Id:'otherAffiliations',Caption:Strings.TableOutpatientFacilityAffiliationsTitle,List:[].concat(_controller.view.Profile.OtherAffiliations),Columns:[{Label:Strings.ColumnAffiliationNameLabel,Attributes:['linkContent']},{Label:Strings.ColumnAddressLabel,Attributes:['addressContent']},{Label:Strings.ColumnOverallCostLabel,Attributes:['iconContent']}],DataTransformFunction:function(d1,d2){var key=ApplicationController.Utilities.parseCompositeKey(d1.CompositeKey);var costRating=d1.HospitalScores&&d1.HospitalScores.CostRating?d1.HospitalScores.CostRating:0;var detailRequest=MVC.SystemController.createRequest().setControllerId('detail').setActionId('profile').setParams({'plan':key.plan,'providerType':key.providerType,'compositeKey':d1.CompositeKey,'Latitude':params.Latitude,'Longitude':params.Longitude});d2.Column1={Name:d1.Name,Request:detailRequest.serialize(),AddClass:d1.AddedToList?'invisible':'',DeleteClass:d1.AddedToList?'':'invisible',AddProviderLink:'addProvider--'+d1.CompositeKey,DeleteProviderLink:'deleteProvider--'+d1.CompositeKey};d2.Column2={Address:d1.AddressLine1,CityStateZip:d1.CityStateZip,MapURL:d1.MapURL};d2.Column3={IconClassName:costRating!==0?'cost'+costRating:'zero_result',IconWidth:'20',IconHeight:'20',HoverKey:'Cost'+costRating};return d2;}};model.setInData('Tables',tables);_controller.view.render('address');_controller.view.render('dynamicDataTable',model);};MVC.SystemController.createRequest().setControllerId('detail').setActionId('loadProviderDetail').setParams({wsCallback:additionalCallback}).send();},patientReviewsAction:function(params){this.defaultAction();var Strings=this.view.Strings;var compositeKeyObj=ApplicationController.Utilities.parseCompositeKey(MVC.SystemController.getRequest().getParam('compositeKey'));var additionalCallback=function(_controller){var opts={WSObjectName:'EPD',WSMethodName:'GetPhysicianPatientReviewById',params:{ProviderId:compositeKeyObj.providerId},error:function(_this,error){error.Message=_this.view.Strings.ResultsError;_this.renderError(error);},callback:function(_controller){var model=_controller.getModel('GetPhysicianPatientReviewById');var surveyCompleted=model.findInData('SurveyCompleted')||0;var tables=[];tables[0]={Id:'patientReviews',Caption:Strings.TablePatientReviewsTitle,List:[].concat(model.findInData('Questions')),Columns:[{Label:Strings.ColumnSurveyQuestionsLabel,Attributes:['dataContent']},{Label:Strings.ColumnPatientSatisfactionLabel,Attributes:['iconContent']}],DataTransformFunction:function(d1,d2){var css,icon,rating;css='child';icon=d1.Rating?'satisfaction'+d1.Rating:'zero_result';rating=d1.Rating;if(d1.Level==1){css='subhead';icon=icon;rating='';}
d2.CssClass=css;d2.Column1=d1.QuestionText;d2.Column2={IconClassName:icon,IconWidth:'20',IconHeight:'20',HoverKey:'Satisfaction'+rating};return d2;}};model.setInData('Tables',tables);_controller.view.render('address');_controller.view.render('dynamicDataTable',model);_controller.view.Reviews=[].concat(model.findInData('Reviews'));if(_controller.view.Reviews&&_controller.view.Reviews.length>0){_controller.view.render('comments');}}};_controller.callWS(opts);};MVC.SystemController.createRequest().setControllerId('detail').setActionId('loadProviderDetail').setParams({wsCallback:additionalCallback}).send();},qualityDetailAction:function(params){this.defaultAction();var Strings=this.view.Strings;var compositeKeyObj=ApplicationController.Utilities.parseCompositeKey(MVC.SystemController.getRequest().getParam('compositeKey'));var additionalCallback=function(_controller){var opts={WSObjectName:'EPD',WSMethodName:'GetQualityDetailById',params:{ProviderId:compositeKeyObj.providerId,HealthIssueId:(MVC.SystemController.getRequest().getParam('healthIssueId')||'')},error:function(_this,error){error.Message=_this.view.Strings.ResultsError;_this.renderError(error);},callback:function(_controller){var model=_controller.getModel('GetQualityDetailById');var dataTransformFunction=function(d1,d2){var rating=d1.GroupRating||d1.HeaderRating||0;var description=d1.MeasureDescription||d1.Header||'';d2.CssClass=d1.Level==2||d1.Level==0?'subhead':'child';d2.Column1=description;d2.Column2={IconClassName:rating!==0?'quality'+rating:'zero_result',IconWidth:'50',IconHeight:'18',HoverKey:'Quality'+rating};return d2;};var dataColumns=[{Label:Strings.ColumnMeasureNameLabel,Attributes:['dataContent']},{Label:Strings.ColumnGroupRatingLabel,Attributes:['iconContent']}];var relatedMeasures=model.findInData('RelatedMeasures');var relatedTable={Id:'',Caption:'',List:[],FormatSubheaders:true,Columns:dataColumns,DataTransformFunction:dataTransformFunction};for(var i=0,l=relatedMeasures.length;i<l;i++){relatedTable.List.push(relatedMeasures[i]);}
model.setInData('RelatedTables',[].concat(relatedTable));var allMeasures=model.findInData('AllMeasures');var allMeasuresTables=[];for(var i=0,l=allMeasures.length;i<l;i++){var measure=allMeasures[i];allMeasuresTables.push({Id:'',Caption:measure.Header,List:measure.Children,FormatSubheaders:true,Columns:dataColumns,DataTransformFunction:dataTransformFunction});}
model.setInData('AllTables',allMeasuresTables);_controller.view.render('address');_controller.view.render('scores',model);}};_controller.callWS(opts);};MVC.SystemController.createRequest().setControllerId('detail').setActionId('loadProviderDetail').setParams({wsCallback:additionalCallback}).send();},costDetailAction:function(params){this.defaultAction();var request=MVC.SystemController.getRequest();var Strings=this.view.Strings;var compositeKeyObj=ApplicationController.Utilities.parseCompositeKey(request.getParam('compositeKey'));var wsName=(request.getParam('providerType')=='H000')?'GetAllHospitalCostDetail':'GetOfficeCostDetailById';var additionalCallback=function(_controller){var opts={WSObjectName:'EPD',WSMethodName:wsName,params:{ProviderId:compositeKeyObj.providerId,HealthIssueId:(request.getParam('healthIssueId')||'')},error:function(_this,error){error.Message=_this.view.Strings.ResultsError;_this.renderError(error);},callback:function(_controller){var model=_controller.getModel(wsName);var dataColumns=[{Label:Strings.ColumnServiceLabel,Attributes:['dataContent']},{Label:Strings.ColumnCostScoreLabel,Attributes:['iconContent']}];var dataTransformFunction=function(d1,d2){var rating=(d1.CostScore||0);d2.CssClass=d1.Level==2?'subhead':'child';d2.Column1=d1.Name;d2.Column2={IconClassName:rating!==0?'cost'+rating:'zero_result',IconWidth:'20',IconHeight:'20',HoverKey:'Cost'+rating};return d2;};var related=[].concat(model.findInData('Related'));var relatedTable={Id:'',Caption:'',List:[],FormatSubheaders:true,DataTransformFunction:dataTransformFunction,Columns:dataColumns};for(var i=0,l=related.length;i<l;i++){relatedTable.List.push(related[i]);}
model.setInData('RelatedTables',[].concat(relatedTable));var allMeasuresTables=[{RenderMethod:'append',Id:'conditions',Caption:Strings.TableConditionsTitle,List:model.findInData('Conditions'),FormatSubheaders:true,DataTransformFunction:dataTransformFunction,Columns:dataColumns},{RenderMethod:'append',Id:'surgeries',Caption:Strings.TableSurgeriesTitle,List:model.findInData('Surgeries'),FormatSubheaders:true,DataTransformFunction:dataTransformFunction,Columns:dataColumns},{RenderMethod:'append',Id:'procedures',Caption:Strings.TableProceduresTitle,List:model.findInData('Procedures'),FormatSubheaders:true,DataTransformFunction:dataTransformFunction,Columns:dataColumns}];model.setInData('AllTables',allMeasuresTables);_controller.view.render('address');_controller.view.render('scores',model);}};_controller.callWS(opts);};MVC.SystemController.createRequest().setControllerId('detail').setActionId('loadProviderDetail').setParams({wsCallback:additionalCallback}).send();},topServicesAction:function(params){this.defaultAction();var Strings=this.view.Strings;var compositeKeyObj=ApplicationController.Utilities.parseCompositeKey(MVC.SystemController.getRequest().getParam('compositeKey'));var additionalCallback=function(_controller){var opts={WSObjectName:'EPD',WSMethodName:'GetOfficeCostDetailTopServicesById',params:{ProviderId:compositeKeyObj.providerId,HealthIssueId:(MVC.SystemController.getRequest().getParam('healthIssueId'))?MVC.SystemController.getRequest().getParam('healthIssueId'):null},error:function(_this,error){error.Message=_this.view.Strings.ResultsError;_this.renderError(error);},callback:function(_controller){var model=_controller.getModel('GetOfficeCostDetailTopServicesById');var dataColumns=[{Label:Strings.ColumnServiceLabel,Attributes:['dataContent']},{Label:Strings.ColumnAverageAnnualPatientCasesLabel,Attributes:['dataContent'],DomAttributes:{'className':'hover'},HeaderLinkClass:'TopServicesPatientCases'}];var dataTransformFunction=function(d1,d2){d2.Column1=d1.Name;d2.Column2=d1.AverageAnnualCases||'';return d2;};var related=[].concat(model.findInData('Related'));var relatedTable={Id:'',Caption:'',List:[],FormatSubheaders:true,DataTransformFunction:dataTransformFunction,Columns:dataColumns};for(var i=0,l=related.length;i<l;i++){relatedTable.List.push(related[i]);}
model.setInData('RelatedTables',[].concat(relatedTable));var allMeasuresTables=[{RenderMethod:'append',Id:'conditions',Caption:Strings.TableConditionsTitle,List:model.findInData('Conditions'),FormatSubheaders:true,DataTransformFunction:dataTransformFunction,Columns:dataColumns},{RenderMethod:'append',Id:'surgeries',Caption:Strings.TableSurgeriesTitle,List:model.findInData('Surgeries'),FormatSubheaders:true,DataTransformFunction:dataTransformFunction,Columns:dataColumns},{RenderMethod:'append',Id:'procedures',Caption:Strings.TableProceduresTitle,List:model.findInData('Procedures'),FormatSubheaders:true,DataTransformFunction:dataTransformFunction,Columns:dataColumns}];model.setInData('AllTables',allMeasuresTables);var footnoteParams={Sections:[{Title:'Ratings key:',Type:'listIcon',Data:[{IconURL:'/images/icon_quality1.gif',Description:Strings.TableSymbol1StarDescription,Symbol:Strings.TableSymbol1StarLabel}]}]};_controller.view.render('address');_controller.view.render('scores',model);}};_controller.callWS(opts);};MVC.SystemController.createRequest().setControllerId('detail').setActionId('loadProviderDetail').setParams({wsCallback:additionalCallback}).send();},providerPatientDemographicsAction:function(params){MVC.SystemController.createRequest().setControllerId('detail').setActionId('patientDemographics').send();},patientDemographicsAction:function(params){this.defaultAction();var Strings=this.view.Strings;var compositeKeyObj=ApplicationController.Utilities.parseCompositeKey(MVC.SystemController.getRequest().getParam('compositeKey'));var additionalCallback=function(_controller){var opts={WSObjectName:'EPD',WSMethodName:'GetOfficePatientDemographicsById',params:{ProviderId:compositeKeyObj.providerId},error:function(_this,error){error.Message=_this.view.Strings.ResultsError;_this.renderError(error);},callback:function(_controller){var model=_controller.getModel('GetOfficePatientDemographicsById');var tables=[{Id:'patientDemographics',Caption:Strings.TablePatientDemographicsTitle,List:model.findInData('Group'),DataTransformFunction:function(d1,d2){d2.Column1=d1.AgeGroup;d2.Column2=d1.Male;d2.Column3=d1.Female;d2.CssClass=d1.AgeGroup==='Total'?'subhead':'';return d2;},Columns:[{Label:Strings.ColumnAgeGroupLabel,Attributes:['dataContent']},{Label:Strings.ColumnMaleLabel,Attributes:['dataContent']},{Label:Strings.ColumnFemaleLabel,Attributes:['dataContent']}]}];model.setInData('Tables',tables);_controller.view.render('address');_controller.view.render('dynamicDataTable',model);}};_controller.callWS(opts);};MVC.SystemController.createRequest().setControllerId('detail').setActionId('loadProviderDetail').setParams({wsCallback:additionalCallback}).send();},healthGradesQualityAction:function(params){this.defaultAction();var Strings=this.view.Strings;var compositeKeyObj=ApplicationController.Utilities.parseCompositeKey(MVC.SystemController.getRequest().getParam('compositeKey'));var additionalCallback=function(_controller){var opts={WSObjectName:'EPD',WSMethodName:'GetHospitalDetailsQuality',params:{ProviderId:compositeKeyObj.providerId,ProductId:'',PlanCode:compositeKeyObj.plan,HealthIssueId:(MVC.SystemController.getRequest().getParam('healthIssueId')||'')},error:function(_this,error){error.Message=_this.view.Strings.ResultsError;_this.renderError(error);},callback:function(_controller){var model=_controller.getModel('GetHospitalDetailsQuality');var dataColumns=[{Label:Strings.ColumnServiceLineLabel,Attributes:['dataContent']},{Label:Strings.ColumnRatingLabel,Attributes:['iconContent']},{Label:Strings.ColumnSurvivalInHospitalLabel,Attributes:['iconContent']},{Label:Strings.ColumnSurvivalAfterDischargeLabel,Attributes:['iconContent']},{Label:Strings.ColumnAvoidingComplicationsLabel,Attributes:['iconContent']},{Label:Strings.ColumnNumberOfCasesLabel,Attributes:['dataContent']},{Label:Strings.ColumnLengthOfStayLabel,Attributes:['dataContent']}];var dataTransformFunction=function(d1,d2){d2.Column1=d1.ProcedureDescription;d2.Column2={IconClassName:'HealthGrades'+(d1.Rating||'zero_result'),IconWidth:'49',IconHeight:'10',HoverKey:'HealthGrades'+(d1.Rating||0)};d2.Column3={IconClassName:'HealthGrades'+(d1.SurvivalInHospital||'zero_result'),IconWidth:'49',IconHeight:'10',HoverKey:'HealthGrades'+(d1.SurvivalInHospital||0)};d2.Column4={IconClassName:'HealthGrades'+(d1.SurvivalAfterDischarge||'zero_result'),IconWidth:'49',IconHeight:'10',HoverKey:'HealthGrades'+(d1.SurvivalAfterDischarge||0)};d2.Column5={IconClassName:'HealthGrades'+(d1.Complications||'zero_result'),IconWidth:'49',IconHeight:'10',HoverKey:'HealthGrades'+(d1.Complications||0)};d2.Column6=d1.NumofCases;d2.Column7=d1.AvgLengthOfStay;return d2;};var allTables=[];var measures=model.findInData('AllScores');for(var i=0,l=measures.length;i<l;i++){var measure=measures[i];allTables.push({Id:'healthGradesQuality',Caption:measure.Header,List:measure.Children,DataTransformFunction:dataTransformFunction,Columns:dataColumns});}
model.setInData('AllTables',allTables);var relatedTables=[];var measures=model.findInData('RelatedScores');for(var i=0,l=measures.length;i<l;i++){var measure=measures[i];relatedTables.push({Id:'healthGradesQuality',Caption:measure.Header,List:measure.Children,DataTransformFunction:dataTransformFunction,Columns:dataColumns});}
model.setInData('RelatedTables',relatedTables);_controller.view.Branding="HealthGrades";_controller.view.render('address');_controller.view.render('branding');_controller.view.render('scores',model);}};_controller.callWS(opts);};MVC.SystemController.createRequest().setControllerId('detail').setActionId('loadProviderDetail').setParams({wsCallback:additionalCallback}).send();},jointCommissionQualityAction:function(params){this.defaultAction();var Strings=this.view.Strings;var compositeKeyObj=ApplicationController.Utilities.parseCompositeKey(MVC.SystemController.getRequest().getParam('compositeKey'));var additionalCallback=function(_controller){var opts={WSObjectName:'EPD',WSMethodName:'GetJCAHOHospitalDetailsQuality',params:{ProviderId:compositeKeyObj.providerId,ProductId:'',PlanCode:compositeKeyObj.plan,HealthIssueId:(MVC.SystemController.getRequest().getParam('healthIssueId')||'')},error:function(_this,error){error.Message=_this.view.Strings.ResultsError;_this.renderError(error);},callback:function(_controller){var model=_controller.getModel('GetJCAHOHospitalDetailsQuality');var dataColumns=[{Label:Strings.ColumnMeasureLabel,Attributes:['dataContent']},{Label:Strings.ColumnNationwideLabel,Attributes:['iconContent']},{Label:Strings.ColumnStatewideLabel,Attributes:['iconContent']}];var dataTransformFunction=function(d1,d2){var nationRating=(d1.NationwideSymbol||'ND');var stateRating=(d1.StatewideSymbol||'ND');d2.Column1=d1.MeasureName;d2.Column2={IconClassName:'JointCommission'+nationRating,IconWidth:'20',IconHeight:'20',HoverKey:'JointCommission'+nationRating};d2.Column3={IconClassName:'JointCommission'+stateRating,IconWidth:'20',IconHeight:'20',HoverKey:'JointCommission'+stateRating};return d2;};var allTables=[];var measures=model.findInData('AllScores');for(var i=0,l=measures.length;i<l;i++){var measure=measures[i];allTables.push({Id:'jointCommissionQuality',Caption:measure.Header2Description||measure.Header1Description,List:measure.Children,DataTransformFunction:dataTransformFunction,Columns:dataColumns});}
model.setInData('AllTables',allTables);var relatedTables=[];var measures=model.findInData('RelatedScores');for(var i=0,l=measures.length;i<l;i++){var measure=measures[i];relatedTables.push({Id:'jointCommissionQuality',Caption:measure.Header2Description||measure.Header1Description,List:measure.Children,DataTransformFunction:dataTransformFunction,Columns:dataColumns});}
model.setInData('RelatedTables',relatedTables);_controller.view.Branding="Joint Commission";_controller.view.render('address');_controller.view.render('branding');_controller.view.render('scores',model);}};_controller.callWS(opts);};MVC.SystemController.createRequest().setControllerId('detail').setActionId('loadProviderDetail').setParams({wsCallback:additionalCallback}).send();},healthGradesTopTenProceduresAction:function(params){this.defaultAction();var Strings=this.view.Strings;var compositeKeyObj=ApplicationController.Utilities.parseCompositeKey(MVC.SystemController.getRequest().getParam('compositeKey'));var additionalCallback=function(_controller){var opts={WSObjectName:'EPD',WSMethodName:'GetHospitalDetailsTopTenProcedures',params:{ProviderId:compositeKeyObj.providerId,ProductId:'',PlanCode:compositeKeyObj.plan,HealthIssueId:(MVC.SystemController.getRequest().getParam('healthIssueId')||'')},error:function(_this,error){error.Message=_this.view.Strings.ResultsError;_this.renderError(error);},callback:function(_controller){var model=_controller.getModel('GetHospitalDetailsTopTenProcedures');var tables=[{Id:'healthGradesTopTenProcedures',Caption:Strings.TableHealthGradesTopTenTitle,List:model.getData(),Columns:[{Label:Strings.ColumnHealthGradesTopTenLabel,Attributes:['dataContent']}],DataTransformFunction:function(d1,d2){d2.Column1=d1.ProcedureDescription;return d2;}}];model.setInData('Tables',tables);_controller.view.Branding="HealthGrades";_controller.view.render('address');_controller.view.render('branding');_controller.view.render('dynamicDataTable',model);}};_controller.callWS(opts);};MVC.SystemController.createRequest().setControllerId('detail').setActionId('loadProviderDetail').setParams({wsCallback:additionalCallback}).send();},medicalServicesAction:function(params){this.defaultAction();var Strings=this.view.Strings;var compositeKeyObj=ApplicationController.Utilities.parseCompositeKey(MVC.SystemController.getRequest().getParam('compositeKey'),'national');var additionalCallback=function(_controller){var opts={WSObjectName:'EPD',WSMethodName:'GetProviderQualityData',params:{ProviderType:compositeKeyObj.providerType,CompositeKey:compositeKeyObj.toString(),Type:'Medical Services',State:DetailController.Utilities.cleanProviderData(_controller.getModel('GetProviderDetail')).State},error:function(_this,error){error.Message=_this.view.Strings.ResultsError;_this.renderError(error);},callback:function(_controller){var model=_controller.getModel('GetProviderQualityData');var tables=[{Id:'medicalServices',Caption:Strings.TableHealthGradesTopTenTitle,List:model.findInData('Measures'),Columns:[{Label:'Medical Services',Attributes:['dataContent']},{Label:'Hospital Score',Attributes:['dataContent']},{Label:'State Average',Attributes:['dataContent']},{Label:'National Average',Attributes:['dataContent']},{Label:'Top 10 Percentile',Attributes:['dataContent']}],DataTransformFunction:function(d1,d2){d2.CssClass=d1.IsHeader===true?'subhead':'child';d2.Column1=d1.DisplayName||'';d2.Column2=d1.HospitalScore||'';d2.Column3=d1.StateAverage||'';d2.Column4=d1.NationalAverage||'';d2.Column5=d1.Top10Percentile||'';if(d2.Column2.match(/^-\d+/)){d2.Column2=ApplicationController.Utilities.formatErrorCode(d2.Column2);}
if(d2.Column3.match(/^-\d+/)){d2.Column3=ApplicationController.Utilities.formatErrorCode(d2.Column3);}
if(d2.Column4.match(/^-\d+/)){d2.Column4=ApplicationController.Utilities.formatErrorCode(d2.Column4);}
if(d2.Column5.match(/^-\d+/)){d2.Column5=ApplicationController.Utilities.formatErrorCode(d2.Column5);}
return d2;}}];model.setInData('Tables',tables);_controller.view.render('address');_controller.view.render('dynamicDataTable',model);}};_controller.callWS(opts);};MVC.SystemController.createRequest().setControllerId('detail').setActionId('loadProviderDetail').setParams({wsCallback:additionalCallback}).send();},surgicalCareAction:function(params){this.defaultAction();var Strings=this.view.Strings;var compositeKeyObj=ApplicationController.Utilities.parseCompositeKey(MVC.SystemController.getRequest().getParam('compositeKey'),'national');var additionalCallback=function(_controller){var opts={WSObjectName:'EPD',WSMethodName:'GetProviderQualityData',params:{ProviderType:compositeKeyObj.providerType,CompositeKey:compositeKeyObj.toString(),Type:'Surgical Care',State:DetailController.Utilities.cleanProviderData(_controller.getModel('GetProviderDetail')).State},error:function(_this,error){error.Message=_this.view.Strings.ResultsError;_this.renderError(error);},callback:function(_controller){var model=_controller.getModel('GetProviderQualityData');var tables=[{Id:'medicalServices',Caption:Strings.TableHealthGradesTopTenTitle,List:model.findInData('Measures'),Columns:[{Label:'Surgical Care',Attributes:['dataContent']},{Label:'Hospital Score',Attributes:['dataContent']},{Label:'State Average',Attributes:['dataContent']},{Label:'National Average',Attributes:['dataContent']},{Label:'Top 10 Percentile',Attributes:['dataContent']}],DataTransformFunction:function(d1,d2){d2.CssClass=d1.IsHeader===true?'subhead':'child';d2.Column1=d1.DisplayName||'';d2.Column2=d1.HospitalScore||'';d2.Column3=d1.StateAverage||'';d2.Column4=d1.NationalAverage||'';d2.Column5=d1.Top10Percentile||'';if(d2.Column2.match(/^-\d+/)){d2.Column2=ApplicationController.Utilities.formatErrorCode(d2.Column2);}
if(d2.Column3.match(/^-\d+/)){d2.Column3=ApplicationController.Utilities.formatErrorCode(d2.Column3);}
if(d2.Column4.match(/^-\d+/)){d2.Column4=ApplicationController.Utilities.formatErrorCode(d2.Column4);}
if(d2.Column5.match(/^-\d+/)){d2.Column5=ApplicationController.Utilities.formatErrorCode(d2.Column5);}
return d2;}}];model.setInData('Tables',tables);_controller.view.render('address');_controller.view.render('dynamicDataTable',model);}};_controller.callWS(opts);};MVC.SystemController.createRequest().setControllerId('detail').setActionId('loadProviderDetail').setParams({wsCallback:additionalCallback}).send();},mortalityReadmissionsAction:function(params){this.defaultAction();var Strings=this.view.Strings;var compositeKeyObj=ApplicationController.Utilities.parseCompositeKey(MVC.SystemController.getRequest().getParam('compositeKey'),'national');var additionalCallback=function(_controller){var opts={WSObjectName:'EPD',WSMethodName:'GetProviderQualityData',params:{ProviderType:compositeKeyObj.providerType,CompositeKey:compositeKeyObj.toString(),Type:'Mortality and Readmissions',State:DetailController.Utilities.cleanProviderData(_controller.getModel('GetProviderDetail')).State},error:function(_this,error){error.Message=_this.view.Strings.ResultsError;_this.renderError(error);},callback:function(_controller){var model=_controller.getModel('GetProviderQualityData');var tables=[{Id:'medicalServices',Caption:Strings.TableHealthGradesTopTenTitle,List:model.findInData('Measures'),Columns:[{Label:'Mortality and Re-admissions',Attributes:['dataContent']},{Label:'Hospital Score',Attributes:['dataContent']}],DataTransformFunction:function(d1,d2){d2.CssClass=d1.IsHeader===true?'subhead':'child';d2.Column1=d1.DisplayName||'';d2.Column2=d1.HospitalScore||'';if(d2.Column2.match(/^-\d+/)){d2.Column2=ApplicationController.Utilities.formatErrorCode(d2.Column2);}
return d2;}}];model.setInData('Tables',tables);_controller.view.render('address');_controller.view.render('dynamicDataTable',model);}};_controller.callWS(opts);};MVC.SystemController.createRequest().setControllerId('detail').setActionId('loadProviderDetail').setParams({wsCallback:additionalCallback}).send();},patientExperienceAction:function(params){this.defaultAction();var Strings=this.view.Strings;var compositeKeyObj=ApplicationController.Utilities.parseCompositeKey(MVC.SystemController.getRequest().getParam('compositeKey'));var additionalCallback=function(_controller){var opts={WSObjectName:'EPD',WSMethodName:'GetProviderQualityData',params:{ProviderType:compositeKeyObj.providerType,CompositeKey:compositeKeyObj.toString(),Type:'Patient Experience',State:DetailController.Utilities.cleanProviderData(_controller.getModel('GetProviderDetail')).State},error:function(_this,error){error.Message=_this.view.Strings.ResultsError;_this.renderError(error);},callback:function(_controller){var model=_controller.getModel('GetProviderQualityData');var tables=[{Id:'patientExperience',Caption:Strings.TablePatientDemographicsTitle,List:model.findInData('Measures'),DataTransformFunction:function(d1,d2){d2.CssClass=d1.IsHeader===true?'subhead':'child';d2.Column1=d1.DisplayName||'';d2.Column2=d1.HospitalScore||'';d2.Column3=d1.StateAverage||'';d2.Column4=d1.NationalAverage||'';if(d2.Column2.match(/^-\d+/)){d2.Column2=ApplicationController.Utilities.formatErrorCode(d2.Column2);}
if(d2.Column3.match(/^-\d+/)){d2.Column3=ApplicationController.Utilities.formatErrorCode(d2.Column3);}
if(d2.Column4.match(/^-\d+/)){d2.Column4=ApplicationController.Utilities.formatErrorCode(d2.Column4);}
return d2;},Columns:[{Label:Strings.ColumnPatientExperienceLabel,Attributes:['dataContent']},{Label:Strings.ColumnHospitalScoreLabel,Attributes:['dataContent']},{Label:Strings.ColumnStateAverageLabel,Attributes:['dataContent']},{Label:Strings.ColumnNationalAverageLabel,Attributes:['dataContent']}]}];model.setInData('Tables',tables);_controller.view.render('address');_controller.view.render('dynamicDataTable',model);_controller.view.render('disclaimer',model);}};_controller.callWS(opts);};MVC.SystemController.createRequest().setControllerId('detail').setActionId('loadProviderDetail').setParams({wsCallback:additionalCallback}).send();},reset:function(params){var viewScript=this.getViewScript('default');if(this.isNewProvider()){viewScript.resetTitle();if(!params.request.getParam('buildNav')){this.view.Navigation={};this.getViewScript('canvas').resetNavigation();}}
viewScript.resetContent();viewScript.resetFootnotes();},isNewProvider:function(){var r=MVC.SystemController.getRequest();return r.getParam('reload')==='true'?true:this.currentProvider!=r.getParam('compositeKey');},renderError:function(error){var errorParams={error:error,viewScript:this.getViewScript('default'),containerId:'detailContent'};MVC.SystemController.createRequest().setControllerId('application').setActionId('error').setParams(errorParams).send();}};MVC.SystemController.registerController(DetailController);
DetailController.DefaultViewScript={id:'default',load:function(){this.addContainer('section','#section');this.addContainer('detailTitle','#detailTitle');this.addContainer('detailContent','#detailContent');this.addContainer('detailFootnotes','#detailFootnotes');},render:function(){MVC.SystemController.createResponse().bindViewScript(MVC.SystemController.getController('detail').getViewScript('canvas')).setContent('content',this.getContainer('section')).send();MVC.SystemController.createRequest().setControllerId('application').setActionId('block').setParams({viewScript:this,containerId:'detailContent'}).send();},resetTitle:function(){this.getContainer('detailTitle').empty();},resetContent:function(){MVC.SystemController.createRequest().setControllerId('application').setActionId('block').setParams({viewScript:this,containerId:'detailContent'}).send();},resetFootnotes:function(){this.getContainer('detailFootnotes').empty();}};MVC.SystemController.registerViewScript(DetailController,DetailController.DefaultViewScript);
DetailController.TitleViewScript={id:'title',load:function(){this.addTemplate('title','#title');},render:function(){var data=this.view.Profile;var transformations={Strings:this.view.Strings};transformations.Name=data.ProviderName;transformations.AddProvider='addProvider--'+data.CompositeKey;transformations.DeleteProvider='deleteProvider--'+data.CompositeKey;transformations.AddClass=data.AddedToList?'invisible':'';transformations.DeleteClass=data.AddedToList?'':'invisible';var $title=this.getTemplate('title').clone().supplant(transformations);MVC.SystemController.createResponse().bindViewScript(MVC.SystemController.getController('detail').getViewScript('default')).setContent('detailTitle',$title).addCallback(function(){MVC.SystemController.getController('detail').getViewScript('default').getContainer('detailTitle').click(DetailController.DelegateDataTableEvents);}).send();}};MVC.SystemController.registerViewScript(DetailController,DetailController.TitleViewScript);
DetailController.ScoresViewScript={id:'scores',load:function(){this.addContainer('scores','#scores');this.addContainer('related','#related');this.addContainer('relatedMeasures','#relatedMeasures');this.addContainer('all','#all');this.addContainer('title','#title');this.addContainer('expandable','.expandable');this.addTemplate('title','#titleTemplate');},render:function(model){var view=MVC.SystemController.getController('detail').view;var container=this.getContainer('scores');var _this=this;var Strings=this.view.Strings;this.getContainer('related').addClass('invisible');this.getContainer('relatedMeasures').empty();this.getContainer('all').addClass('invisible').empty();this.getContainer('expandable').supplant({Strings:Strings});this.getContainer('title').html(this.getTemplate('title').clone().html(Strings.RelatedScoresLabel));MVC.SystemController.createResponse().bindViewScript(MVC.SystemController.getController('detail').getViewScript('default')).setContent('detailContent',container,'append').addCallback(function(){MVC.SystemController.getController('detail').getViewScript('default').getContainer('detailContent').click(DetailController.DelegateDataTableEvents);}).send();var m1=MVC.SystemController.createModel({Tables:model.findInData('RelatedTables'),Render:{Method:'prepend',Container:'relatedMeasures',ViewScript:this,Callback:function(){_this.getContainer('related').removeClass('invisible').find('.expandable').removeClass('expanded');}}});view.render('dynamicDataTable',m1);var m2=MVC.SystemController.createModel({Tables:model.findInData('AllTables'),Render:{Method:'append',Container:'all',ViewScript:this,Callback:function(){if(_this.getContainer('related').hasClass('invisible')){_this.getContainer('all').removeClass('invisible');}}}});view.render('dynamicDataTable',m2);}};MVC.SystemController.registerViewScript(DetailController,DetailController.ScoresViewScript);
DetailController.BrandingViewScript={id:'branding',load:function(){this.addTemplate('branding','#branding');},render:function(){var transformations={Branding:this.view.Branding};MVC.SystemController.createResponse().bindViewScript(MVC.SystemController.getController('detail').getViewScript('default')).setContent('detailContent',this.getTemplate('branding').clone().supplant(transformations),'prepend').send();}};MVC.SystemController.registerViewScript(DetailController,DetailController.BrandingViewScript);
DetailController.AddressViewScript={id:'address',load:function(){this.addTemplate('address','#address');},render:function(){var data=this.view.Profile;var transformations={Strings:{}};var address=[data.AddressLine1];if(data.AddressLine2){address.push(data.AddressLine2);}
if(data.AddressLine3){address.push(data.AddressLine3);}
var cityStateZip=data.CityStateZip||data.City+', '+data.State+' '+data.ZipCode;var phone=data.PhoneNumber||'';transformations.Address=address.join(' ')+', '+cityStateZip+' '+phone;MVC.SystemController.createResponse().bindViewScript(MVC.SystemController.getController('detail').getViewScript('default')).setContent('detailContent',this.getTemplate('address').clone().supplant(transformations),'empty').send();}};MVC.SystemController.registerViewScript(DetailController,DetailController.AddressViewScript);
DetailController.Comments={id:'comments',load:function(){this.addTemplate('listItem','#listItem');this.addTemplate('listTemplate','#listTemplate');this.addTemplate('patientReviews','#patientReviews');},render:function(){var strings=this.view.Strings;var patientReviews=this.getTemplate('patientReviews').clone();var listItem=this.getTemplate('listItem').clone().supplant({Strings:strings});var reviewComments=this.view.Reviews&&this.view.Reviews.length>0?MV.Util.DOMCreation.formatToParentChildrenSupplant(this.view.Reviews,this.getTemplate('listTemplate').clone(),listItem):'';var supplantData={Strings:strings,CommentsList:reviewComments};patientReviews.supplant(supplantData);MVC.SystemController.createResponse().bindViewScript(MVC.SystemController.getController('detail').getViewScript('default')).setContent('detailContent',patientReviews,'append').addCallback(function(){MV.EventsManager.fireEvent('resizeParentIFrame');}).send();}};MVC.SystemController.registerViewScript(DetailController,DetailController.Comments);
DetailController.ProfileViewScript={id:'profile',load:function(){this.addTemplate('officeHoursGeneral','#officeHoursGeneral');this.addTemplate('officeHoursSchedule','#officeHoursSchedule');this.addTemplate('listItem','#listItem');this.addTemplate('listItemIcon','#listItemIcon');this.addTemplate('listTemplate','#listTemplate');this.addTemplate('profileContentPane','#profileContentPane');},render:function(){var view=this.view;var data=view.Profile;var Strings=this.view.Strings;var controller=MVC.SystemController.getController('detail');var renderViewScript=controller.getViewScript('default');var utilities=DetailController.Utilities;var appUtilities=ApplicationController.Utilities;var attributes=this.view.Attributes;var iconTransformFunction=function(d1,d2){var iconURL=Strings.RecognitionIconsPath+$.trim(d1.IconFileName);d2.Content=d1.Name;d2.SupplementalDisplayText=d1.SupDisplayText||d1.Name;d2.IconURL=iconURL;d2.HoverHelp=encodeURIComponent(d1.SupDisplayText||d1.IconHyperLinkHoverText);d2.IconHyperLinkURL=d1.IconHyperlinkURL;return d2;};var objectTransformFunction=function(d1,d2){d2.Content=d1.Name;return d2;};var educationTransformFunction=function(d1,d2){d2.Content=d1.SchoolName+' '+d1.GradYear;return d2;};var stringTransformFunction=function(d1,d2){d2.Content=d1;return d2;};var disclaimerTransformFunction=function(d1,d2){d2.Content=d1.DisclaimerText;return d2;};var transformations={Strings:Strings};transformations.AddressPlaceName=data.Group?data.Group.Name:null;transformations.Address=true;transformations.AddressLine1=data.AddressLine1||null;transformations.AddressLine2=data.AddressLine2||null;transformations.CityStateZip=true;transformations.City=data.City||null;transformations.State=data.State||null;transformations.Zip=data.ZipCode||null;transformations.Phone=data.PhoneNumber;transformations.Fax=data.Fax;transformations.Website=data.WebSiteURL;transformations.DistanceMap=true;transformations.Distance=data.Distance;transformations.MapURLLink=data.MapURL;transformations.MapImageURL=data.MapImageURL;transformations.OfficeHours=utilities.formatOfficeHours(view,data.OfficeHours,this.getTemplate('officeHoursSchedule').clone(),this.getTemplate('officeHoursGeneral'));transformations.AcceptingNewPatients=data.IsAcceptingNewPatients===null?'':data.IsAcceptingNewPatients?this.view.Strings.YesLabel:this.view.Strings.NoLabel;transformations.Gender=data.Gender;var listTemplate=this.getTemplate('listTemplate');var listItemTemplate=this.getTemplate('listItem');var listItemIconTemplate=this.getTemplate('listItemIcon');transformations.Education=appUtilities.formatToListSupplant(data.Education,listTemplate.clone(),listItemTemplate.clone(),educationTransformFunction);transformations.Specialties=appUtilities.formatToListSupplant(data.Specialties,listTemplate.clone(),listItemTemplate.clone(),objectTransformFunction);transformations.BoardCertifications=appUtilities.formatToListSupplant(data.BoardCertifications,listTemplate.clone(),listItemTemplate.clone(),stringTransformFunction);transformations.BoardCertifiedSpecialties=appUtilities.formatToListSupplant(data.BoardCertifiedSpecialties,listTemplate.clone(),listItemTemplate.clone(),objectTransformFunction);transformations.NCQARecognitions=appUtilities.formatToListSupplant(data.NCQARecognitions,listTemplate.clone(),listItemTemplate.clone(),objectTransformFunction);transformations.Recognitions=appUtilities.formatToListSupplant(data.OtherRecognitions,listTemplate.clone(),listItemTemplate.clone(),objectTransformFunction);transformations.NationalRecognitions=appUtilities.formatToListSupplant(data.NationalOtherRecognitions,listTemplate.clone(),listItemIconTemplate.clone(),iconTransformFunction);transformations.NationalBlueDistinctionCenter=appUtilities.formatToListSupplant(data.NationalCenterOfExcellence,listTemplate.clone(),listItemIconTemplate.clone(),iconTransformFunction);transformations.BlueDistinctionCenter=appUtilities.formatToListSupplant(data.CenterOfExcellence,listTemplate.clone(),listItemTemplate.clone(),iconTransformFunction);transformations.NationalAccreditations=appUtilities.formatToListSupplant(data.NationalAccreditations,listTemplate.clone(),listItemIconTemplate.clone(),iconTransformFunction);transformations.Accreditations=appUtilities.formatToListSupplant(data.Accreditations,listTemplate.clone(),listItemTemplate.clone(),stringTransformFunction);transformations.Languages=appUtilities.formatToListSupplant(data.Languages,listTemplate.clone(),listItemTemplate.clone(),objectTransformFunction);transformations.Disclaimers=appUtilities.formatToListSupplant(data.Disclaimers,listTemplate.clone(),listItemTemplate.clone(),disclaimerTransformFunction);transformations.QualityViewScores=data.QualityViewScores;if(transformations.QualityViewScores){transformations.OverallCost={Icon:data.QualityViewScores.CostRating>0?'icon_cost'+data.QualityViewScores.CostRating+'.png':'icon_zero_result.png',Hover:data.QualityViewScores.CostRating,Width:data.QualityViewScores.CostRating>0?20:37,Height:data.QualityViewScores.CostRating>0?20:27};transformations.QualityRating={Icon:'icon_quality'+data.QualityViewScores.QualityRating+'.png',Hover:data.QualityViewScores.QualityRating,Width:50,Height:18};transformations.PatientSatisfaction={Icon:data.QualityViewScores.PatientSatisfaction>0?'icon_satisfaction'+data.QualityViewScores.PatientSatisfaction+'.png':'icon_zero_result.png',Hover:data.QualityViewScores.PatientSatisfaction,Width:data.QualityViewScores.PatientSatisfaction>0?20:37,Height:data.QualityViewScores.PatientSatisfaction>0?20:27};}
var detailContent=utilities.populateTemplate(this.getTemplate('profileContentPane').clone(),attributes,transformations);MVC.SystemController.createResponse().bindViewScript(renderViewScript).setContent('detailContent',detailContent).addCallback(function(){detailContent.click(DetailController.DelegateDataTableEvents);DetailController.Utilities.addScoresIconHoverHelp(controller,renderViewScript,'detailContent');MV.EventsManager.fireEvent('resizeParentIFrame');}).send();}};MVC.SystemController.registerViewScript(DetailController,DetailController.ProfileViewScript);
DetailController.FootnoteViewScript={id:'footnote',load:function(){this.addTemplate('sectionCaption','#footnotesSectionCaption');this.addTemplate('footnotes','#footnotes');this.addTemplate('textItem','#textItem');this.addTemplate('listItem','#listItem');this.addTemplate('listItemIcon','#listItemIcon');this.addTemplate('listTemplate','#listTemplate');},render:function(params){var transformations={};transformations.Title=params.Title||'';var $notes=this.getTemplate('footnotes').clone();if(params.Title&&params.Title!=''){$notes.supplant(transformations);}else{$notes.find('h3').remove();}
var section;var listTemp,itemTemp;for(var i=0,il=params.Sections.length;i<il;i++){section=params.Sections[i];if(section.Title&&section.Title!=''){$notes.append(this.getTemplate('sectionCaption').clone().supplant({Title:section.Title}));}
switch(section.Type){case"listIcon":case"listText":if(section.Type=='listIcon'){itemTemp=this.getTemplate('listItemIcon');}else if(section.Type=='listIcon'){itemTemp=this.getTemplate('listItem');}
listTemp=this.getTemplate('listTemplate').clone().attr('title',section.Title);$notes.append(MV.Util.DOMCreation.formatToParentChildrenSupplant(section.Data,listTemp,itemTemp,section.TransformFunction));break;default:case"text":$notes.append(this.getTemplate('textItem').clone().supplant({Text:section.Data}));break;}}
if(params.Sections&&params.Sections.length>0){var response=MVC.SystemController.createResponse().bindViewScript(MVC.SystemController.getController('detail').getViewScript('default')).setContent('detailFootnotes',$notes.html());if(params.Callback){response.addCallback(params.Callback);}
response.send();}}};MVC.SystemController.registerViewScript(DetailController,DetailController.FootnoteViewScript);
DetailController.DynamicDataTableViewScript={id:'dynamicDataTable',load:function(){this.addTemplate('iconContent','#iconContentTemplate');this.addTemplate('dataContent','#dataContentTemplate');this.addTemplate('dataWithHoverContent','#dataWithHoverContentTemplate');this.addTemplate('addressContent','#addressContentTemplate');this.addTemplate('linkContent','#linkContentTemplate');this.addTemplate('listItem','#listItemTemplate');this.addTemplate('list','#listTemplate');this.addTemplate('listContent','#listContentTemplate');this.addTemplate('colTemplate','#colTemplate');this.addTemplate('headerCellTemplate','#headerCellTemplate');this.addTemplate('headerNoteCellTemplate','#headerNoteCellTemplate');this.addTemplate('headerHoverCellTemplate','#headerHoverCellTemplate');this.addTemplate('dataCellTemplate','#dataCellTemplate');this.addTemplate('dataRowTemplate','#dataRowTemplate');this.addTemplate('resultsTableTemplate','#resultsTableTemplate');this.addTemplate('report','#report');},render:function(model){var col,$col,$th,$td,$tr,colClass,pos,$table,$colgroup,$thead,$tbody,tableConfig,renderMethod,renderContainer,renderCallback,renderViewScript,list,caption,tableId,tableData,colsLength,cols,transformFunction;var utilities=DetailController.Utilities;var transformations={Strings:this.view.Strings};var defaultRenderObj={Method:'append',Container:'detailContent',ViewScript:MVC.SystemController.getController('detail').getViewScript('default'),Callback:null};var renderObj=$.extend(defaultRenderObj,model.findInData('Render'));renderMethod=renderObj.Method;renderContainer=renderObj.Container;renderViewScript=renderObj.ViewScript;renderCallback=renderObj.Callback;tableData=model.findInData('Tables');for(var i=0,l=tableData.length;i<l;i++){tableConfig=tableData[i];list=tableConfig.List;caption=tableConfig.Caption||'';tableId=tableConfig.Id||'';cols=tableConfig.Columns;colsLength=tableConfig.Columns.length;transformFunction=tableConfig.DataTransformFunction;$table=this.getTemplate('resultsTableTemplate').clone();$colgroup=$table.find('colgroup');$thead=$table.find('thead tr');$tbody=$table.find('tbody');$tr=this.getTemplate('dataRowTemplate').clone();for(var h=0;h<colsLength;h++){col=cols[h];colClass='column'+(h+1);$col=this.getTemplate('colTemplate').clone().addClass(colClass);$th=this.getTemplate(col.Note?'headerNoteCellTemplate':(col.HoverValue?'headerHoverCellTemplate':'headerCellTemplate'));$th=$th.clone().attr(col.DomAttributes||{}).addClass(colClass).supplant({HeaderRowContent:col.Label,HeaderLinkClass:col.HeaderLinkClass||'',HeaderCellNote:col.Note||'',HeaderCellHover:col.HoverValue||''});$td=this.getTemplate('dataCellTemplate').clone().addClass(colClass);$colgroup.append($col);$thead.append($th);$tr.append($td);pos=(h+1);if(col.Attributes){for(var j=0,k=col.Attributes.length;j<k;j++){$td.append(this.getTemplate(col.Attributes[j]).clone().supplant({Strings:transformations.Strings,DataCellContentInnerToken:'Column'+pos,DataCellContent:'{Column'+pos+'}'}).html());}}}
transformations.DataTable=(list&&list.length>0)?$table.find('tbody').append(MV.Util.DOMCreation.createElementsAndBindDataSupplant(list,$tr,transformFunction)).end():null;$table.supplant({Strings:{Caption:caption}});$table.addClass('columns'+colsLength);$table.attr('id',tableId);sectionTemplate=this.getTemplate('report').clone().supplant(transformations);if(list&&list.length>0){MVC.SystemController.createResponse().bindViewScript(renderViewScript).setContent(renderContainer,$table,renderMethod).addCallback(function(){MVC.SystemController.getController('detail').getViewScript('default').getContainer('detailContent').unbind('click').click(DetailController.DelegateDataTableEvents);if(tableConfig.FormatSubheaders===true){$table.formatSubHeaders();}
if(renderCallback){renderCallback();}
MV.EventsManager.fireEvent('resizeParentIFrame');}).send();}}
this.view.Tables='';utilities.addScoresIconHoverHelp(MVC.SystemController.getController('detail'),renderViewScript,renderContainer);utilities.addDataHoverHelp(renderViewScript,renderContainer);}};MVC.SystemController.registerViewScript(DetailController,DetailController.DynamicDataTableViewScript);
DetailController.QualityDataViewScript={id:'qualityData',load:function(){this.addTemplate('dataHeader','#subheadTemplate');this.addTemplate('dataRow','#dataRowTemplate');this.addTemplate('disclaimer','#disclaimerTemplate');this.addTemplate('dataTable','#qualityDataContentTable');this.addTemplate('report','#report');},render:function(){var qualityData=this.view.QualityData;var data=this.view.data;var subhead=this.getTemplate('dataHeader');var dataRow=this.getTemplate('dataRow');var tableBody=this.getTemplate('qualityDataBody');var transformations={Strings:{}};var utilities=DetailController.Utilities;var sectionTemplate;transformations.Strings.Column1="Medical Services";transformations.Strings.Column2="Hospital Score";transformations.Strings.Column3="State Average";transformations.Strings.Column4="National Average";transformations.Strings.Column5="Top 10 Percentile";transformations.QualityScores=utilities.formatScores(qualityData,this.getTemplate('dataTable'),this.getTemplate('dataRow'),this.getTemplate('dataHeader')).supplant(transformations);sectionTemplate=this.getTemplate('report').supplant(transformations);MVC.SystemController.createResponse().bindViewScript(MVC.SystemController.getController('detail').getViewScript('default')).setContent('detailContent',sectionTemplate).send();}};MVC.SystemController.registerViewScript(DetailController,DetailController.QualityDataViewScript);
DetailController.Utilities={populateTemplate:function(template,elementGroups,transformations){var elementGroup,elements,element;for(var i=0,l=elementGroups.length;i<l;i++){elementGroup=elementGroups[i];elements=elementGroup.Elements;if(elements&&elements.length>0){for(var j=0,k=elements.length;j<k;j++){element=elements[j];if(transformations[element.Id]){template.find('#'+element.Id).removeClass('invisible');}}}}
return template.supplant(transformations);},formatOfficeHours:function(view,data,scheduleTemplate,generalTemplate){var transformations;if(!data){return null;}
if(data.GeneralHours){transformations={OfficeHoursGeneral:data.GeneralHours.replace(';','<br/>')};return generalTemplate.supplant(transformations);}
else if(data.Schedule){transformations={Strings:view.Strings,Sunday:{Hours:data.Schedule[0].Hours},Monday:{Hours:data.Schedule[1].Hours},Tuesday:{Hours:data.Schedule[2].Hours},Wednesday:{Hours:data.Schedule[3].Hours},Thursday:{Hours:data.Schedule[4].Hours},Friday:{Hours:data.Schedule[5].Hours},Saturday:{Hours:data.Schedule[6].Hours}};if(transformations.Sunday.Hours||transformations.Monday.Hours||transformations.Tuesday.Hours||transformations.Wednesday.Hours||transformations.Thursday.Hours||transformations.Friday.Hours||transformations.Saturday.Hours){return scheduleTemplate.supplant(transformations);}else{return null;}}},formatScores:function(scores,table,dataRow,headingRow){if(!scores){return false;}
var parentTemplate,score;parentTemplate=table.find('tbody');var headerTransform=function(d1,d2){d2=d1;return d2;};var dataRowTransform=function(d1,d2){d2=d1;d2.Top10Percentile=d1.Top10Percentile||'';return d2;};for(var i=0,l=scores.length;i<l;i++){score=scores[i];parentTemplate.append(MV.Util.DOMCreation.createElementsAndBindDataSupplant([score.DisplayName],headingRow,headerTransform));if(score.IsHeader||score.Children&&score.Children.length>0){parentTemplate.append(MV.Util.DOMCreation.createElementsAndBindDataSupplant(score.Children,dataRow,dataRowTransform));}}
return table;},addScoresIconHoverHelp:function(controller,viewScript,container){var strings=controller.view.Strings;var hoverHelpArray=[];var content=viewScript.getContainer(container);content.find('.icon img').each(function(i,elem){var $anchor=$(elem);var stringKey=$anchor.eq(0).attr('data-hover')+'HoverHelp';hoverHelpArray.push({Target:$anchor,Content:strings[stringKey]});});content.find('a.icon').each(function(i,elem){var $anchor=$(elem);var text=decodeURIComponent($anchor.attr('title'))||$anchor.eq(0).text();hoverHelpArray.push({Target:$anchor,Content:text});});content.find('.hover').each(function(i,elem){var $elem=$(elem);var $anchor=$elem.find('a');var key=$anchor.attr('className');var stringKey=key+'HoverHelp';hoverHelpArray.push({Target:$anchor,Content:strings[stringKey]});});MVC.SystemController.createRequest().setControllerId('plugins').setActionId('hoverHelpPlugin').setParams(hoverHelpArray).send();},addDataHoverHelp:function(viewScript,container){var hoverHelpArray=[];viewScript.getContainer(container).find('.dataHover').each(function(i,elem){var $elem=$(elem);var hover=$elem.attr('data-hover');if(hover!=''){hoverHelpArray.push({Target:$elem,Content:hover});}});MVC.SystemController.createRequest().setControllerId('plugins').setActionId('hoverHelpPlugin').setParams(hoverHelpArray).send();},isNavigationEqual:function(array1,array2){return this.serializeNavigation(array1)===this.serializeNavigation(array2);},serializeNavigation:function(navArray){if(!navArray||!navArray.length){return'';}
var temp=[],elements=[],i,l;for(i=0,l=navArray.length;i<l;i++){if(navArray[i].Elements){temp=temp.concat(navArray[i].Elements);}}
for(i=0,l=temp.length;i<l;i++){elements.push(temp[i].Id);}
return elements.join(',');},cleanProviderData:function(data){if(!data){return;}
return data.findInData(data.findInData('IsNational')?'NationalDetailData':'DetailData');}};
DetailController.DelegateDataTableEvents=function(event){event.stopPropagation();var $target=$(event.target).closest('[data-mv]');if($target.length===0){return;}
var mvAr=$target.attr('data-mv').split('--');var action=mvAr[0];var data=mvAr[1];if(!action){return;}
switch(action){case'addProvider':$target.addClass('invisible');$target.siblings('.delete').removeClass('invisible');MVC.SystemController.createRequest().setControllerId('mylist').setActionId('add').setParams({addprovider:data}).send();break;case'deleteProvider':$target.addClass('invisible');$target.siblings('.add').removeClass('invisible');MVC.SystemController.createRequest().setControllerId('mylist').setActionId('delete').setParams({deleteprovider:data}).send();break;case'toggleAllMeasures':var $parent=$target.parent();if($parent.hasClass('expanded')){$parent.removeClass('expanded');}else{$parent.addClass('expanded');}
MVC.SystemController.getController('detail').getViewScript('scores').getContainer('all').toggleClass('invisible');MV.EventsManager.fireEvent('resizeParentIFrame');break;case'openWindow':window.open(data);if(data.match(/^http(s?)\:\/\//i)){MV.EventsManager.fireEvent('externalLinkAccessed',[data,$target.text()]);}
break;case'openProfile':if($.history){$.history.load(data.substr(1));}else{MVC.SystemController.createRequest({hashString:data}).setRequestInAddress(true).send();}
break;default:}};
DetailController.DisclaimerViewScript={id:'disclaimer',load:function(){this.addTemplate('disclaimer','#disclaimerTemplate');},render:function(model){var transformations={Strings:{}};transformations.Content=model.findInData('HCHAPSReportingPeriod');content=this.getTemplate('disclaimer').clone().supplant(transformations).html();MVC.SystemController.createResponse().bindViewScript(MVC.SystemController.getController('detail').getViewScript('default')).setContent('detailContent',content,'append').send();}};MVC.SystemController.registerViewScript(DetailController,DetailController.DisclaimerViewScript);
MVC.debug=false;var ResultsController={id:'results',isNewSearch:true,pdfForSearchURL:null,healthIssueError:null,issueInfoId:null,issueCostId:null,defaultAction:function(params){var canvas=MVC.Application.getCanvas('main');if(canvas){MVC.Application.hideCanvas();MVC.Application.showCanvas('main');}else{MVC.SystemController.createRequest().setControllerId('home').setActionId('default').send();}
MVC.SystemController.createRequest().setControllerId('application').setActionId('block').send();if(!this.view.Strings){this.view.Strings=EPD.Strings.Results;}
this.view.TitleProviderType=params.providerTypeLabel;this.view.TitleHealthIssue=params.healthIssue;var maxResults=this.view.Strings.ConfigMaxResults;var searchParams={DirectoryRegion:params.region||null,ProviderType:params.providerType||null,Plan:params.plan||null,Product:params.product||null,Prefix:params.prefix||null,Network:params.network||null,LastName:params.lastName||null,ProviderName:params.name||null,SpecialtyCategories:params.specialtyCategories||null,Specialty:params.healthIssueId||null,IsAcceptingNewPatients:(typeof params.acceptsNewPatients=='boolean')?params.acceptsNewPatients:(params.acceptsNewPatients==='true'),Gender:null,SecondaryLanguage:params.language||null,Distance:params.distance||null,Latitude:params.latitude||0,Longitude:params.longitude||0,HospitalAffiliation:params.hospital||null,IsBoardCertified:(typeof params.boardCertified=='boolean')?params.boardCertified:(params.boardCertified==='true'),IsTopRated:(typeof params.topRated=='boolean')?params.topRated:(params.topRated==='true'),IsPCP:(typeof params.primaryCare=='boolean')?params.primaryCare:(params.primaryCare==='true'),IsBlueDistinctionCenterOfExcellence:(typeof params.blueDistinction=='boolean')?params.blueDistinction:(params.blueDistinction==='true'),IsInNetwork:false,IsAccreditedFacility:(typeof params.accreditedFacility=='boolean')?params.accreditedFacility:(params.accreditedFacility==='true'),IsNCQACertified:(typeof params.ncqaRecognition=='boolean')?params.ncqaRecognition:(params.ncqaRecognition==='true'),SortBy:null,MaxRows:maxResults,TotalRowCount:maxResults,RecordsPerPage:maxResults,PageNumber:1,Zip:params.zip||null,Street:params.street||null,City:params.city||null,State:params.state||null,Timestamp:params.t};if(params.male!=params.female){searchParams.Gender=(params.male==='true')?'M':'F';}
if(this.haveSameParams(searchParams)){this.isNewSearch=false;}else{this.view.SearchParams=searchParams;this.isNewSearch=true;this.pdfForSearchURL=null;}
this.titleAndNavigationAction(params);},listAction:function(params){if(!params.latitude&&!params.longitude&&params.latitude!==0&&params.longitude!==0){this.loadLatitudeAndLongitude(params);return;}
this.defaultAction(params);if(!this.view.ResultsManager){this.view.ResultsManager=$.extend({},MV.ResultsManager);this.view.ResultsManager.init({resultsPerPage:parseInt(this.view.Strings.ConfigResultsPerPage,10),resultsPerPageOptions:this.view.Strings.ConfigResultsPerPageOptions.split(/\s*,\s*/)});}
MVC.SystemController.createRequest().setControllerId('application').setActionId('addBreadCrumb').setParams({breadCrumbs:[{Id:'SearchResults',Link:this.view.Strings.SearchResultsLabel,Location:MVC.SystemController.getRequest().serialize(),Reset:true}]}).send();this.view.HaveHealthIssue=!!params.healthIssueId;this.view.ActivatedTab='Results';if(this.isNewSearch||!this.view.ResultColumns){this.callWS({WSObjectName:'EPD',WSMethodName:'GetProviderResults',params:this.view.SearchParams,callback:function(_this){var model=_this.getModel('GetProviderResults');_this.view.ResultsManager.setResults(model.findInData('Results'));_this.view.ResultsManager.setUpdatedDate(model.findInData('UpdatedDate'));_this.view.ResultColumns=model.findInData('ResultColumns');_this.view.render('default');_this.view.render('titleAndNavigation');_this.view.render('list',{IsNewSearch:true,ResultsSortedBy:model.findInData('SortedBy')});_this.createPDFForSearch();},error:function(_this,error){error.Message=_this.view.Strings.ResultsError;_this.view.render('default');_this.view.render('titleAndNavigation');_this.renderError(error);}});}else{this.view.render('default');this.view.render('titleAndNavigation');this.view.render('list');this.deliverPDFForSearch();}},healthInfoAction:function(params){this.defaultAction(params);var request=MVC.SystemController.getRequest();var providerType=request.getParam('providerType');if(providerType!='MVHI00'){request.setActionId('list');}
var type=request.getParam('providerType')=='MVHI00'?'force':'';MVC.SystemController.createRequest().setControllerId('application').setActionId('addBreadCrumb').setParams({addType:type,breadCrumbs:[{Id:'SearchResults',Link:this.view.Strings.SearchResultsLabel,Location:request.serialize(),Reset:true}]}).send();this.view.ActivatedTab='IssueInfo';if(params.healthIssueId&&(params.healthIssueId!=this.issueInfoId)){this.issueInfoId=params.healthIssueId;this.callWS({WSObjectName:'EPD',WSMethodName:'GetHealthIssueInfo',params:{HealthIssueId:params.healthIssueId},callback:function(_this){_this.view.ResultIssueInfo=_this.getModel('GetHealthIssueInfo').getData();_this.view.HaveHealthIssue=true;_this.view.render('default');_this.view.render('titleAndNavigation');_this.view.render('healthInfo');},error:function(_this,error){error.Message=_this.view.Strings.HealthIssueInfoError;_this.view.render('default');_this.view.render('titleAndNavigation');_this.renderError(error);}});}else{this.view.HaveHealthIssue=true;this.view.render('default');this.view.render('titleAndNavigation');this.view.render('healthInfo');}},healthCostAction:function(params){this.defaultAction(params);var request=MVC.SystemController.getRequest();var providerType=request.getParam('providerType');if(providerType!='MVHI00'){request.setActionId('list');}
var type=(providerType=='MVHI00')?'force':'';MVC.SystemController.createRequest().setControllerId('application').setActionId('addBreadCrumb').setParams({addType:type,breadCrumbs:[{Id:'SearchResults',Link:this.view.Strings.SearchResultsLabel,Location:request.serialize(),Reset:true}]}).send();this.view.ActivatedTab='IssueCost';if(params.healthIssueId&&(params.healthIssueId!=this.issueCostId)){this.issueCostId=params.healthIssueId;var _this=this;this.getIssueCostOverview(params,function(){_this.view.HaveHealthIssue=true;_this.view.render('default');_this.view.render('titleAndNavigation');_this.view.render('costOfIssue');});}else{if(this.view.ResultIssueCost||(this.view.SearchParams.ProviderType=='MVHI00')){this.view.HaveHealthIssue=true;this.view.render('default');this.view.render('titleAndNavigation');this.view.render('costOfIssue');}else if(this.healthIssueError){this.healthIssueError.Message=this.view.Strings.HealthIssueInfoError;this.view.render('default');this.view.render('titleAndNavigation');this.renderError(this.healthIssueError);}}},getIssueCostOverview:function(params,callback){var issueId=params.healthIssueId;this.callWS({WSObjectName:'EPD',WSMethodName:'GetHealthIssueCostOverview',params:{HealthIssueId:issueId},callback:function(_this){_this.healthIssueError=null;_this.issueCostId=issueId;var data=_this.getModel('GetHealthIssueCostOverview').getData();_this.view.ResultIssueCost=(data.CostsCompare===null&&data.ServicesNeeded===null)?null:data;callback();},error:function(_this,error){_this.healthIssueError=error;_this.healthIssueError.Message=_this.view.Strings.HealthIssueInfoError;_this.view.render('default');_this.view.render('titleAndNavigation');_this.renderError(_this.healthIssueError);}});},titleAndNavigationAction:function(params){if(params.healthIssueId&&(params.healthIssueId!=this.currentHealthIssueId)){this.currentHealthIssueId=params.healthIssueId;var _this=this;this.getIssueCostOverview(params,function(){if(_this.getViewScript('default').isRendered()){_this.view.render('titleAndNavigation');}});}else if(this.getViewScript('default').isRendered()){this.view.render('titleAndNavigation');}},haveSameParams:function(searchParams){if(!this.view.SearchParams){return false;}
for(var param in searchParams){if(searchParams[param]!==this.view.SearchParams[param]){return false;}}
return true;},createPDFForSearch:function(){this.callWS({WSObjectName:'EPD',WSMethodName:'CreatePDFForSearch',params:this.view.SearchParams,callback:function(_this){_this.pdfForSearchURL=_this.getModel('CreatePDFForSearch').getData();if(MVC.SystemController.getRequest().getControllerId()==_this.id){_this.deliverPDFForSearch();}}});},deliverPDFForSearch:function(){if(this.pdfForSearchURL){MVC.SystemController.createRequest().setControllerId('features').setActionId('updatePrint').setParams({pdfForSearchURL:this.pdfForSearchURL}).send();}},renderError:function(error){var errorParams={error:error,viewScript:this.getViewScript('default'),containerId:'listContainer'};MVC.SystemController.createRequest().setControllerId('application').setActionId('error').setParams(errorParams).send();},loadLatitudeAndLongitude:function(params){var requiredParams={DirectoryRegion:params.region||null,Street:params.street||null,City:params.city||null,State:params.state||null,Zip:params.zip||null,Distance:params.distance||null};this.callWS({WSObjectName:'EPD',WSMethodName:'GetRequiredCriteriaList',params:requiredParams,callback:function(_this){var model=_this.getModel('GetRequiredCriteriaList').getData();params.latitude=model.Latitude;params.longitude=model.Longitude;_this.listAction(params);},error:function(){MVC.SystemController.createRequest().setControllerId('home').setActionId('default').setRequestInAddress(true).setParams(params).send();}});}};MVC.SystemController.registerController(ResultsController);
ResultsController.CostOfIssueViewScript={id:'costOfIssue',load:function(){this.strings=EPD.Strings.Results;this.addContainer('costOverviewContainer','#costOverviewContainer');this.addTemplate('noCostOverview','#noCostOverview');this.addTemplate('findLinks','.findLinks');this.addTemplate('waysToSave','#waysToSave');this.addTemplate('compareTable','#compareTable');this.addTemplate('servicesHeaderRowTemplate','#servicesHeaderRowTemplate');this.addTemplate('servicesDataRowTemplate','#servicesDataRowTemplate');this.addTemplate('servicesTableTemplate','#servicesTableTemplate');},render:function(){this.getContainer('costOverviewContainer').empty();if(!this.view.ResultIssueCost||!this.view.ResultIssueCost.CostsCompare){var transformations={Strings:this.strings};var $temp=this.getTemplate('noCostOverview').clone().supplant(transformations);this.getContainer('costOverviewContainer').append($temp);}else{this.renderAssociations();this.renderCompareTable();this.renderServicesTable();}
var content=this.getContainer('costOverviewContainer');MVC.SystemController.createResponse().bindViewScript(MVC.SystemController.getController('results').getViewScript('default')).setContent('listContainer',content).addCallback(function(){content.unbind('click').click(ResultsController.Utilities.delegateFindLinksEvents);MV.EventsManager.fireEvent('resizeParentIFrame');}).send();},renderAssociations:function(){var providerType=this.view.SearchParams.ProviderType;var findDoctor=(providerType==='P000'||providerType==='MVHI00');var findHospital=(providerType==='H000'||providerType==='MVHI00');var transformations={Strings:this.strings};transformations.FindLinksConj=(findDoctor&&findHospital)?' '+this.strings.MCEOrLabel+' ':'';var $findLinks=this.getTemplate('findLinks').clone();if(findDoctor){$findLinks.find('.findDoctor').removeClass('invisible');}
if(findHospital){$findLinks.find('.findHospital').removeClass('invisible');}
$findLinks.supplant(transformations);transformations.SaveUpTo='6,600';var $waysToSave=this.getTemplate('waysToSave').clone().supplant(transformations);this.getContainer('costOverviewContainer').append($findLinks).append($waysToSave);},renderCompareTable:function(){var data=this.view.ResultIssueCost.CostsCompare;if(!data){return;}
if(data.Hospital||data.Facility){var $table=this.getTemplate('compareTable').clone();var tbody=$table.find('tbody');if(data.Hospital){tbody.find('.compareHospital').removeClass('invisible');}
if(data.Facility){tbody.find('.compareFacility').removeClass('invisible');}
var transformations={Strings:this.strings};transformations=$.extend(transformations,data);this.getContainer('costOverviewContainer').append($table.supplant(transformations));}},renderServicesTable:function(){var data=this.view.ResultIssueCost.ServicesNeeded;if(!data){return;}
var transformations={Strings:this.strings};var $tableDataRow=this.getTemplate('servicesDataRowTemplate').clone().supplant(transformations);var $tableHeadRow=this.getTemplate('servicesHeaderRowTemplate');var $table=this.getTemplate('servicesTableTemplate').clone().supplant(transformations);var $tbody=$table.find('tbody').empty();for(var s=0,sl=data.length;s<sl;s++){var section=data[s];var $trHead=$tableHeadRow.clone().supplant({'SubHead':section.ServiceName});if(s===0){$trHead.addClass('first');}
$tbody.append($trHead);for(var r=0,rl=section.ServiceNeeded.length;r<rl;r++){var $trData=$tableDataRow.clone();$trData.addClass((r%2===0)?'even':'odd');$tbody.append($trData.supplant(section.ServiceNeeded[r]));}}
this.getContainer('costOverviewContainer').append($table);}};MVC.SystemController.registerViewScript(ResultsController,ResultsController.CostOfIssueViewScript);
ResultsController.DefaultViewScript={id:'default',load:function(){this.addContainer('section','#directoryListingSection');this.addContainer('decoration','.decoration');this.addContainer('titleAndNavigationContainer','#titleAndNavigationContainer');this.addContainer('listContainer','#listContainer');},render:function(){this.getContainer('decoration').removeClass('decorationWithForm').addClass('invisible');this.getContainer('titleAndNavigationContainer').empty();this.getContainer('listContainer').empty();MVC.SystemController.createResponse().bindViewScript(MVC.SystemController.getController('home').getViewScript('canvas')).setContent('content',this.getContainer('section')).send();}};MVC.SystemController.registerViewScript(ResultsController,ResultsController.DefaultViewScript);
ResultsController.TitleAndNavigationViewScript={id:'titleAndNavigation',strings:{},load:function(){this.strings=EPD.Strings.Results;this.addContainer('titleAndNavigation','#titleAndNavigation').supplant(this.strings);this.addContainer('resultsSummary','#resultsSummary');this.addContainer('resultsTitle','#resultsTitle');this.addContainer('tabLinkResults','#tabLinkResults');this.addContainer('tabLinkIssueInfo','#tabLinkIssueInfo');this.addContainer('tabLinkIssueCost','#tabLinkIssueCost');this.addContainer('resultsNavigation','#resultsNavigation');},render:function(){var activatedTab=this.view.ActivatedTab;var providerType=this.view.SearchParams.ProviderType;var titleParts=[];switch(activatedTab){case'IssueCost':titleParts.push(this.strings.TitleHealthCostLabel);break;case'IssueInfo':titleParts.push(this.strings.TitleHealthInfoLabel);break;default:titleParts.push(this.strings.TitleProviderTypeLabel,this.view.TitleProviderType);break;}
if(this.view.TitleHealthIssue){titleParts.push(this.strings.TitleHealthIssueLabel,this.view.TitleHealthIssue);}
this.getContainer('resultsTitle').text(titleParts.join(' '));this.getContainer('titleAndNavigation').find('li.selected').removeClass('selected');this.getContainer('tabLink'+activatedTab).parent().addClass('selected');var content=MVC.Application.getCanvas('main').getContainer('content').removeClass('detail');if(activatedTab==='IssueCost'){content.addClass('detail');}
var summary=this.getContainer('resultsSummary').addClass('resultsSummaryNoNavigation');var navigation=this.getContainer('resultsNavigation').addClass('invisible');if(this.view.HaveHealthIssue===true){summary.removeClass('resultsSummaryNoNavigation');navigation.removeClass('invisible');}
var resultsTabItem=this.getContainer('tabLinkResults').parent().addClass('invisible');if(providerType!='MVHI00'){resultsTabItem.removeClass('invisible');}
var costTabItem=this.getContainer('tabLinkIssueCost').parent().addClass('invisible');if(this.view.ResultIssueCost||(providerType=='MVHI00')){costTabItem.removeClass('invisible');}
var _this=this;MVC.SystemController.createResponse().bindViewScript(MVC.SystemController.getController('results').getViewScript('default')).setContent('titleAndNavigationContainer',this.getContainer('titleAndNavigation')).addCallback(function(){_this.bindEvents();}).send();},disableEvents:function(){this.getContainer('titleAndNavigation').find('a').unbind('click');},bindEvents:function(){var _this=this;var activatedTab=this.view.ActivatedTab;this.getContainer('tabLinkResults').unbind('click').click(function(){if(activatedTab!='Results')
{_this.disableEvents();MVC.SystemController.getRequest().setActionId('list').setRequestInAddress(true).send();}});var tabLinkIssueInfo=this.getContainer('tabLinkIssueInfo').unbind('click').click(function(){if(activatedTab!='IssueInfo')
{_this.disableEvents();MVC.SystemController.getRequest().setActionId('healthInfo').setRequestInAddress(true).send();}});var tabLinkIssueCost=this.getContainer('tabLinkIssueCost').unbind('click').click(function(){if(activatedTab!='IssueCost')
{_this.disableEvents();MVC.SystemController.getRequest().setActionId('healthCost').setRequestInAddress(true).send();}});}};MVC.SystemController.registerViewScript(ResultsController,ResultsController.TitleAndNavigationViewScript);
ResultsController.ListViewScript={id:'list',sort:null,groups:[],columns:[],$table:{},currentGroup:null,currentPageNumber:null,resultClass:null,resultsManager:null,load:function(){this.addContainer('list','#list').supplant(this.view.Strings);this.addContainer('resultTableContainer','#providerResultContainer');this.addContainer('disclaimer','.disclaimer');this.addContainer('lastUpdated','.lastUpdated');this.addContainer('paginationNavigation','.paginationNavigation');this.addContainer('paginationTally','.paginationTally');this.addTemplate('paginationTemplate','#paginationTemplate').supplant(this.view.Strings);this.addTemplate('paginationTallyTemplate','#paginationTallyTemplate').supplant(this.view.Strings);this.addContainer('compare','.compare');var $viewTabList=this.addContainer('viewTabList','.viewTabList');this.addTemplate('viewTabItem',$viewTabList.find('.viewTabItem'));$viewTabList.empty();this.addTemplate('colTemplate','#colTemplate');this.addTemplate('headerCellTemplate','#headerCellTemplate');this.addTemplate('dataCellTemplate','#dataCellTemplate');this.addTemplate('dataRowTemplate','#dataRowTemplate');this.addTemplate('resultsTableTemplate','#resultsTableTemplate');this.addTemplate('listItem','#listItem');this.addTemplate('listTemplate','#listTemplate');this.addTemplate('listItemBoardCertified','#listItemBoardCertified');this.addTemplate('boardCertifiedTemplate','#boardCertifiedTemplate');this.addTemplate('recognitionItem','#recognitionItem');this.addTemplate('recognitionsTemplate','#recognitionsTemplate');this.addTemplate('errorTemplate','#errorTemplate');var _this=this;MV.EventsManager.subscribeToEvent('resultAddedToList',function(params,data){_this.resultAddedToList(_this,params,data);});MV.EventsManager.subscribeToEvent('resultDeletedFromList',function(params,data){_this.resultDeletedFromList(_this,params,data);});},render:function(options){options=$.extend({},options);MVC.SystemController.createRequest().setControllerId('search').setActionId('default').send();this.resultsManager=this.view.ResultsManager;if(this.resultsManager.getNumberOfResults()===0){var $error=this.getTemplate('errorTemplate').clone(true);$error.find('span').text(this.view.Strings.ZeroResultsMessage);MVC.SystemController.createResponse().bindViewScript(MVC.SystemController.getController('results').getViewScript('default')).setContent('listContainer',$error).send();return;}
if(this.currentGroup&&this.currentGroup.Id){this.getContainer('resultTableContainer').removeClass(this.currentGroup.Id);}
this.processColumnGroups(this.view.ResultColumns);if(options.IsNewSearch){this.sort=null;}
this.sort=this.sort||this.getSortForColumn(options.ResultsSortedBy||this.view.ResultsSortedBy||this.view.Strings.ConfigSortColumn);this.$table=this.getTemplate('resultsTableTemplate').clone(true);var $list=this.getContainer('list');this.resultClass=this.view.Strings['ConfigListClass'+this.view.SearchParams.ProviderType]||this.view.Strings.ConfigListClassDefault;$list.removeClass('provider hospital other switchable');$list.addClass(this.resultClass);if(this.groups.length>2){$list.addClass('switchable');}
this.loadViewTabs();this.loadResultsTable();this.clearCompare();this.processResultsTally();if(options&&options.IsNewSearch){this.currentPageNumber=null;}
var resultsData=this.processPagination(this.currentPageNumber);this.loadResults(resultsData,true);this.getContainer('resultTableContainer').html(this.$table);if(this.resultsManager&&this.resultsManager.getUpdatedDate()){this.getContainer('lastUpdated').supplant(this.view.Strings).supplant({UpdatedDate:this.resultsManager.getUpdatedDate()});this.getContainer('lastUpdated').removeClass('invisible');}
this.sendResponse();if(this.saveScroll){$(parent).scrollTop(this.saveScroll);this.saveScroll=0;}},sendResponse:function(){var $list=this.getContainer('list');var _this=this;MVC.SystemController.createResponse().bindViewScript(MVC.SystemController.getController('results').getViewScript('default')).setContent('listContainer',$list).addCallback(function(){_this.bindEvents();if(_this.view.HaveHealthIssue){$list.parent().addClass('healthIssue');}else{$list.parent().removeClass('healthIssue');}
MVC.SystemController.createRequest().setControllerId('application').setActionId('showDisclaimer').setParams({place:'results'}).send();MV.EventsManager.fireEvent('resizeParentIFrame');}).send();},bindEvents:function(){var _this=this;this.$table.find('td.column2 a').unbind('click').click(function(event){_this.saveScroll=$(parent).scrollTop();});this.getContainer('paginationNavigation').unbind('mousedown').mousedown(function(event){_this.paginationLinkClicked.call(_this,event);});this.getContainer('paginationTally').each(function(){$(this).find('.itemsPerPage').unbind('change').change(function(event){_this.itemsPerPageChanged.call(_this,event);});});var $compare=this.getContainer('compare');$compare.find('#moveToTopLink').unbind('click').click(function(event){_this.moveCompareToTopLinkClicked.call(_this,event);});$compare.find('#clearLink').unbind('click').click(function(event){_this.clearCompare.call(_this);});var compareLink=$compare.find('#compareLink').unbind('click').click(function(event){_this.compareLinkClicked.call(_this,event);});this.getContainer('viewTabList').find('a').unbind('click').click(function(event){_this.viewTabSelected.call(_this,event);});this.$table.find('thead').unbind('mousedown').mousedown(function(event){_this.sortLinkClicked.call(_this,event);});this.$table.find('tbody').unbind('click').click(function(event){ResultsController.DelegateListEvents(event,_this.getContainer('list'));});var hoverHelpArray=[];hoverHelpArray.push({'Target':$compare.find('#compareLink'),'Content':this.view.Strings.CompareHoverHelp});this.loadResultHoverHelps(hoverHelpArray);},resultAddedToList:function(_this,params,data){_this.toggleResultInList(params.addprovider);},resultDeletedFromList:function(_this,params,data){_this.toggleResultInList(params.deleteprovider);},toggleResultInList:function(key){if(this.resultsManager){this.resultsManager.toggleFlagByKey('AddedToList','CompositeKey',key);}
var addButtons=this.$table.find('.add');for(var i=0,l=addButtons.length;i<l;i++){var $button=$(addButtons[i]);var dataMv=$button.attr('data-mv').split('--');if(dataMv[1]==key){$button.toggleClass('invisible');$button.siblings('.delete').toggleClass('invisible');return false;}}},paginationLinkClicked:function(event){event.preventDefault();var mvData=$(event.target).closest('a').attr('data-mv');if(mvData){var mvArr=mvData.split('-');if(mvArr[0]=='page'&&mvArr[1]){var resultsData=this.processPagination(mvArr[1]);this.loadResults(resultsData);}}},compareLinkClicked:function(event){event.preventDefault();var ids=this.getContainer('compare').find('#compareProviderIds').val();ids=ids.substring(0,ids.lastIndexOf(';'));if(ids){var latitude=this.view.SearchParams.Latitude!=0?this.view.SearchParams.Latitude:this.resultsManager.getResults()[0].Latitude;var longitude=this.view.SearchParams.Longitude!=0?this.view.SearchParams.Longitude:this.resultsManager.getResults()[0].Longitude;var param={ProviderType:this.view.SearchParams.ProviderType,ProviderIds:ids,IsMyList:false,Latitude:latitude,Longitude:longitude};var request=MVC.SystemController.createRequest();request.setControllerId('compare');request.setActionId('compareProviders');request.setParams(param);var url=window.location.pathname+request.serialize();window.open(url,'','toolbar=yes,location=yes,directories=yes,status=yes,menubar=yes,scrollbars=yes,resizable=yes');}},moveCompareToTopLinkClicked:function(event){event.preventDefault();var compareIds=this.getContainer('compare').find('#compareProviderIds').val().split(';');if(compareIds.length){this.resultsManager.moveValuesToTop('CompositeKey',compareIds);var resultsData=this.processPagination();this.loadResults(resultsData);}},sortLinkClicked:function(event){event.preventDefault();var $target=$(event.target);var tagName=$target.get(0).tagName.toLowerCase();if(!(tagName=='a'||tagName=='span'||$target.hasClass('sortIndicators'))){return;}
var $th=$target.closest('th');var $thead=$target.closest('thead');var sortColumn=$th.attr('id').substring(10);var sortParams=this.getSortForColumn(sortColumn);if(sortParams&&sortParams.length){if((this.sort[0].element==sortParams[0].element)&&(this.sort[0].direction==sortParams[0].direction)){for(var i=0,l=sortParams.length;i<l;i++){var sortParam=sortParams[i];if(!sortParam.direction||sortParam.direction=='ascending'){sortParam.direction='descending';}else{sortParam.direction='ascending';}}}
$thead.find('th').removeClass('ascending descending');$th.addClass(sortParams[0].direction||'ascending');this.sort=sortParams;this.resultsManager.sortResults(sortParams);var resultsData=this.processPagination();this.loadResults(resultsData);}},itemsPerPageChanged:function(event){var oldItemsPerPage=this.resultsManager.getNumberOfResultsPerPage();var newItemsPerPage=$(event.target).val();if(newItemsPerPage){this.resultsManager.setNumberOfResultsPerPage(parseInt(newItemsPerPage,10));this.updateResultsTally(newItemsPerPage);var resultsData=this.processPagination();this.loadResults(resultsData);}},viewTabSelected:function(event){var $target=$(event.target);var $list=$target.closest('ul');var $item=$target.closest('li');var mvArr=$target.closest('a').attr('data-mv').split('-');var newGroupId=mvArr[1];if(mvArr[0]=='view'&&newGroupId&&newGroupId!=this.currentGroup.Id){var newGroup=this.findGroup(newGroupId);$list.find('li').removeClass('selected');$item.addClass('selected');var $tableContainer=this.getContainer('resultTableContainer');$tableContainer.removeClass(this.currentGroup.Id);$tableContainer.addClass(newGroupId);if(this.currentGroup.numColumns!=newGroup.numColumns){this.$table.removeClass('columns'+this.currentGroup.numColumns);this.$table.addClass('columns'+newGroup.numColumns);}
this.currentGroup=newGroup;}},loadViewTabs:function(){var $list=this.getContainer('viewTabList').empty();var $template=this.getTemplate('viewTabItem');for(var i=1,l=this.groups.length;i<l;i++){var $item=$template.clone(true);$item.find('a').attr('data-mv','view-'+this.groups[i].Id);$item.find('span').text(this.groups[i].Label);if(this.groups[i].Id==this.currentGroup.Id){$item.addClass('selected');this.getContainer('resultTableContainer').addClass(this.groups[i].Id);}else{this.getContainer('resultTableContainer').removeClass(this.groups[i].Id);}
$list.append($item);if(i==1){$item.addClass("first");}}},loadResultsTable:function(){var result;var $colgroup=this.$table.find('colgroup');var $thead=this.$table.find('thead tr');var $tr=this.getTemplate('dataRowTemplate').clone(true);var numColumns=this.groups[1]?this.groups[1].numColumns:this.groups[0].numColumns;this.$table.addClass('columns'+numColumns);for(var i=0,l=this.columns.length;i<l;i++){var column=this.columns[i];var className='column'+(i+1);var $col=this.getTemplate('colTemplate').clone(true).addClass(className+' '+column.groupId+' '+column.Id);var $th=this.getTemplate('headerCellTemplate').clone(true).addClass(className+' '+column.groupId+' '+column.Id);var $td=this.getTemplate('dataCellTemplate').clone(true).addClass(className+' '+column.groupId+' '+column.Id);$th.attr('id','headerCell'+column.Id).supplant({HeaderRowContent:column.Label||''});className=column.attributes.ClassName||'column'+column.attributes.ColumnType;$col.addClass(className);$th.addClass(className);$td.addClass(className);if(column.Label){$th.addClass('sortable');}
if(column.isSwitchable){$col.addClass('switchable');$th.addClass('switchable');$td.addClass('switchable');}
if(this.sort[0].column==column.Id){$th.addClass(this.sort[0].direction||'ascending');}
$colgroup.append($col);$thead.append($th);var $template=this.getTemplate(column.attributes.ColumnType+'ColumnTemplate').clone(true);$template=$template.supplant({Column:column.Id,Strings:this.view.Strings});$td.append($template.html());$tr.append($td);}
this.addTemplate('assembledDataRowTemplate',$tr);},loadResults:function(results,isInitialRender){var $tbody=this.$table.find('tbody').empty();var $rowTemplate=this.getTemplate('assembledDataRowTemplate');var compareArray=this.getContainer('compare').find('#compareProviderIds').val().split(';');var compareHash={};for(var ci=0,cl=compareArray.length;ci<cl;ci++){compareHash[compareArray[ci]]=true;}
for(var ri=0,rl=results.length;ri<rl;ri++){var result=results[ri];var plan=this.view.SearchParams.Plan||'';var providerType=this.view.SearchParams.ProviderType||'';var healthIssueId=this.view.SearchParams.Specialty||'';var healthIssueTitle=this.view.TitleHealthIssue||'';var latitude=this.view.SearchParams.Latitude!=0?this.view.SearchParams.Latitude:result.Latitude;var longitude=this.view.SearchParams.Longitude!=0?this.view.SearchParams.Longitude:result.Longitude;var detailRequest=MVC.SystemController.createRequest().setControllerId('detail').setActionId('profile').setParams({'healthIssue':healthIssueTitle,'healthIssueId':healthIssueId,'plan':plan,'providerType':providerType,'compositeKey':result.CompositeKey,'Latitude':latitude,'Longitude':longitude,'reload':'true'});var detailURL=detailRequest.serialize().replace(' ','');var groupCompositeKey='';if(result.Groups){groupCompositeKey=result.Groups[0].CompositeKey;}
var officeRequest=MVC.SystemController.createRequest().setControllerId('detail').setActionId('officeProfile').setParams({'healthIssue':healthIssueTitle,'healthIssueId':healthIssueId,'plan':plan,'providerType':result.GroupProviderType,'compositeKey':groupCompositeKey,'Latitude':latitude,'Longitude':longitude,'reload':'true'});var officeDetailURL=officeRequest.serialize().replace(' ','');var defaultIcon=MVC.Constants.IMAGES.LOCATION+'/icon_zero_result.png';var transformations={CompositeKey:result.CompositeKey,DetailURL:detailURL,ProviderName:result.ProviderName,AddressLine1:result.AddressLine1,AddressLine2:result.AddressLine3?result.AddressLine2+' '+result.AddressLine3:result.AddressLine2,City:result.City,State:result.State,ZipCode:result.ZipCode,PhoneNumber:result.PhoneNumber,Distance:result.Distance,MapURL:result.MapURL,Gender:{Value:(result.Gender||'')},AcceptingNewPatients:{Value:(result.IsAcceptingNewPatients?'Yes':'No')},OfficeName:{Value:(result.GroupProviderName||''),URL:officeDetailURL},Specialties:{Value:''},Recognitions:{Value:''},Languages:{Value:(result.Languages?MV.Util.DOMCreation.formatToParentChildrenSupplant(result.Languages,this.getTemplate('listTemplate'),this.getTemplate('listItem')):'')},PatientSatisfaction:{URL:defaultIcon},OverallQuality:{URL:defaultIcon},CostRating:{URL:defaultIcon},HealthGradesOverall:{URL:defaultIcon},HospitalCostRating:{URL:defaultIcon},OutOfPocketCost:{Value:''},QualityScoresAvailable:{URL:defaultIcon}};if(result.BoardCertifiedSpecialties&&result.BoardCertifiedSpecialties.length>0){transformations.Specialties.Value=MV.Util.DOMCreation.formatToParentChildrenSupplant(result.BoardCertifiedSpecialties,this.getTemplate('boardCertifiedTemplate'),this.getTemplate('listItemBoardCertified'));}else if(result.Specialties&&result.Specialties.length>0){transformations.Specialties.Value=MV.Util.DOMCreation.formatToParentChildrenSupplant(result.Specialties,this.getTemplate('listTemplate'),this.getTemplate('listItem'));}
var recognitions=[];if(result.IsAccreditedFacility){recognitions.push({ImageURL:MVC.Constants.IMAGES.LOCATION+'/icon_accredited.png'});}
if(result.IsBlueDistinctionCenter||result.IsCenterOfExcellence){recognitions.push({ImageURL:MVC.Constants.IMAGES.LOCATION+'/icon_center_of_excellence.png'});}
if(result.IsNCQARecognized){recognitions.push({ImageURL:MVC.Constants.IMAGES.LOCATION+'/icon_ncqa.png'});}
if(result.HasRecognitions){recognitions.push({ImageURL:MVC.Constants.IMAGES.LOCATION+'/icon_other_recognition.png'});}
if(result.IsBoardCertified){recognitions.push({ImageURL:MVC.Constants.IMAGES.LOCATION+'/icon_board_certified.png'});}
if(recognitions.length>0){transformations.Recognitions.Value=MV.Util.DOMCreation.formatToParentChildrenSupplant(recognitions,this.getTemplate('recognitionsTemplate'),this.getTemplate('recognitionItem'));}
var $row=$rowTemplate.clone(true);if(!transformations.AddressLine1){$row.find('.address1Item').addClass('invisible');}
if(!transformations.AddressLine2){$row.find('.address2Item').addClass('invisible');}
if(!transformations.PhoneNumber){$row.find('.phoneItem').addClass('invisible');}
switch(this.resultClass){case'provider':if(result.QualityViewScores.PatientSatisfaction>0){transformations.PatientSatisfaction.URL=MVC.Constants.IMAGES.LOCATION+'/icon_satisfaction'+result.QualityViewScores.PatientSatisfaction+'.png';}
if(result.QualityViewScores.QualityRating>0){transformations.OverallQuality.URL=MVC.Constants.IMAGES.LOCATION+'/icon_quality'+result.QualityViewScores.QualityRating+'.png';}
var costRating=(result.QualityViewScores.CostRating)?result.QualityViewScores.CostRating:result.QualityViewScores.CostRangeAndRatings;if(costRating>0){transformations.CostRating.URL=MVC.Constants.IMAGES.LOCATION+'/icon_cost'+costRating+'.png';}
transformations.OutOfPocketCost.Value=result.QualityViewScores.YourOutOfPocketCost||'';break;case'hospital':if(result.HospitalScores.HealthGradesQualityRating>0){transformations.HealthGradesOverall.URL=MVC.Constants.IMAGES.LOCATION+'/icon_HealthGrades'+result.HospitalScores.HealthGradesQualityRating+'.png';}
var costRating=(result.HospitalScores.CostRating)?result.HospitalScores.CostRating:result.HospitalScores.CostRangeAndRatings;if(costRating>0){transformations.HospitalCostRating.URL=MVC.Constants.IMAGES.LOCATION+'/icon_cost'+costRating+'.png';}
transformations.OutOfPocketCost.Value=result.HospitalScores.YourOutOfPocketCost||'';if(result.HasQualityData){transformations.QualityScoresAvailable.URL=MVC.Constants.IMAGES.LOCATION+'/icon_quality_available.png';}
break;}
if(result.AddedToList){$row.find('.delete').removeClass('invisible');}else{$row.find('.add').removeClass('invisible');}
$tbody.append($row.addClass(ri%2===0?'odd':'even').supplant(transformations));if(compareHash[result.CompositeKey]){$row.find('.compareBox')[0].checked=true;$row.find('.compareBox')[0].defaultChecked=true;}}
MV.EventsManager.fireEvent('resizeParentIFrame');if(!isInitialRender){this.bindEvents();}
window.scrollTo(0,0);},loadResultHoverHelps:function(hoverHelpArray){hoverHelpArray=hoverHelpArray||[];var iconImages=this.$table.find('.icon');for(var ii=0,il=iconImages.length;ii<il;ii++){var $image=$(iconImages[ii]);var imageFileName=$image.attr('src').match(/(\w+)\.png$/)[1];switch(imageFileName){case'icon_cost1':hoverHelpArray.push({'Target':$image,'Content':this.view.Strings.LessCostlyHoverHelp});break;case'icon_cost2':hoverHelpArray.push({'Target':$image,'Content':this.view.Strings.AverageCostsHoverHelp});break;case'icon_cost3':hoverHelpArray.push({'Target':$image,'Content':this.view.Strings.MoreCostlyHoverHelp});break;case'icon_quality1':case'icon_satisfaction1':case'icon_HealthGrades1':hoverHelpArray.push({'Target':$image,'Content':this.view.Strings.BelowAverageHoverHelp});break;case'icon_quality2':case'icon_satisfaction2':case'icon_satisfaction3':case'icon_HealthGrades2':case'icon_HealthGrades3':hoverHelpArray.push({'Target':$image,'Content':this.view.Strings.AverageHoverHelp});break;case'icon_quality3':case'icon_satisfaction4':case'icon_satisfaction5':case'icon_HealthGrades4':case'icon_HealthGrades5':hoverHelpArray.push({'Target':$image,'Content':this.view.Strings.TopPerformerHoverHelp});break;case'icon_accredited':hoverHelpArray.push({'Target':$image,'Content':this.view.Strings.AccreditedHoverHelp});break;case'icon_center_of_excellence':hoverHelpArray.push({'Target':$image,'Content':this.view.Strings.CenterOfExcellenceHoverHelp});break;case'icon_ncqa':hoverHelpArray.push({'Target':$image,'Content':this.view.Strings.NCQARecognitionHoverHelp});break;case'icon_other_recognition':hoverHelpArray.push({'Target':$image,'Content':this.view.Strings.OtherRecognitionHoverHelp});break;case'icon_board_certified':hoverHelpArray.push({'Target':$image,'Content':this.view.Strings.BoardCertifiedHoverHelp});break;case'icon_quality_available':hoverHelpArray.push({'Target':$image,'Content':this.view.Strings.QualityScoresAvailableHoverHelp});break;}}
if(hoverHelpArray.length>0){MVC.SystemController.createRequest().setControllerId('plugins').setActionId('hoverHelpPlugin').setParams(hoverHelpArray).send();}},clearCompare:function(){$.cookie('resultsCompareCounter',0);var $compare=this.getContainer('compare');$compare.find('#compareCount').text(0);$compare.find('#compareProviderIds').val('');var $checkboxes=this.$table.find('.compareBox');for(var i=0,l=$checkboxes.length;i<l;i++){$checkboxes[i].checked=false;$checkboxes[i].defaultChecked=false;}},processPagination:function(page){page=parseInt(page||1,10);this.currentPageNumber=page;var resultsData=this.resultsManager.getResultsForPage(page);var numResults=resultsData.length;var totalResults=this.resultsManager.getNumberOfResults();var pageRanges=this.resultsManager.getPageRanges();var range=pageRanges[page-1];var $navigation=this.getContainer('paginationNavigation').empty();var numPages=pageRanges.length;if(numPages<=1){return resultsData;}
var $template=this.getTemplate('paginationTemplate').clone(true);var $previousLink=$template.find('.previousLink');var $nextLink=$template.find('.nextLink');var $nextItem=$template.find('.nextItem');var $pageItem=$template.find('.pageItem').remove();var $gapItem=$template.find('.gapItem').remove();if(page==1){$previousLink.addClass('inactive');}else{$previousLink.attr('data-mv','page-'+(page-1));}
var maxPages=6;var endPages=maxPages-2;for(var i=1;i<=numPages;i++){var $item;if((numPages>maxPages)&&(i>1)&&(i<=(numPages-endPages))&&(page>=endPages)&&(i<page)){$item=$gapItem.clone(true);if(page<=numPages-endPages){i=page-1;}else{i=numPages-endPages;}}
else if((numPages>maxPages)&&(i<numPages)&&(i>endPages)&&(page<=(numPages-endPages))&&(i>page+1)){$item=$gapItem.clone(true);i=numPages-1;}
else{$item=$pageItem.clone(true);$item.find('.pageNumber').text(i);if(i==page){$item.find('.pageLink').addClass('current');}else{$item.find('.pageLink').attr('data-mv','page-'+i);}}
$nextItem.before($item);}
if(page==numPages){$nextLink.addClass('inactive');}else{$nextLink.attr('data-mv','page-'+(page+1));}
$navigation.append($template.html());return resultsData;},processResultsTally:function(){var $template=this.getTemplate('paginationTallyTemplate').clone(true);var $select=$template.find('.itemsPerPage').empty().addClass('invisible');var $selectLabel=$template.find('.itemsPerPageLabel').addClass('invisible');$template.find('.totalRows').text(this.resultsManager.getNumberOfResults());var resultsPerPage=this.resultsManager.getNumberOfResultsPerPage();var options=this.resultsManager.getNumberOfResultsPerPageOptions();if(options.length>0){for(var i=0,l=options.length;i<l;i++){var value=options[i];var $option=$('<option />').attr('value',value).text(value);$select.append($option);}
$select.removeClass('invisible');$selectLabel.removeClass('invisible');}
var _this=this;this.getContainer('paginationTally').each(function(){var $tally=$(this);$tally.empty().append($template.clone(true).html());$tally.find('.itemsPerPage').val(resultsPerPage);});},updateResultsTally:function(value){this.getContainer('paginationTally').each(function(){$(this).find('.itemsPerPage').val(value);});},processColumnGroups:function(data){this.groups=[];this.columns=[];var numDefaultColumns=0;var numTotalColumns=0;for(var di=0,dl=data.length;di<dl;di++){var group=data[di];if(group.Id!='Default'){continue;}
var elements=group.Elements;for(var ei=0,el=elements.length;ei<el;ei++){var column=elements[ei];column.isSwitchable=false;column.groupId=group.Id;column.attributes=MVC.Utilities.formatKeyValueArrayToObject(column.Attributes,'Id','Value');this.columns[column.Order-1]=column;var templateId=column.attributes.ColumnType+'ColumnTemplate';if(!this.getTemplate(templateId)){this.addTemplate(templateId,'#'+templateId);}}
numDefaultColumns=numTotalColumns=elements.length;group.numColumns=numDefaultColumns;group.isSwitchable=false;this.groups.push(group);break;}
for(var di=0,dl=data.length;di<dl;di++){var group=data[di];if(group.Id=='Default'){continue;}
if(group.Id==this.view.Strings.ConfigDefaultView||di==1){this.currentGroup=group;}
group.numColumns=0;var elements=group.Elements;for(var ei=0,el=elements.length;ei<el;ei++){var column=elements[ei];if((column.Id=='OutOfPocketCost')&&!this.view.HaveHealthIssue){continue;}
column.isSwitchable=true;column.groupId=group.Id;column.attributes=MVC.Utilities.formatKeyValueArrayToObject(column.Attributes,'Id','Value');this.columns[(column.Order-1)+numTotalColumns]=column;group.numColumns++;var templateId=column.attributes.ColumnType+'ColumnTemplate';if(!this.getTemplate(templateId)){this.addTemplate(templateId,'#'+templateId);}}
numTotalColumns+=elements.length;group.numColumns+=numDefaultColumns;group.isSwitchable=true;this.groups.push(group);}},findGroup:function(groupId){for(var i=0,l=this.groups.length;i<l;i++){if(this.groups[i].Id==groupId){return this.groups[i];}}
return null;},getSortForColumn:function(column){var sortParams=null;switch(column){case'Name':sortParams={element:'ProviderName'};break;case'Distance':sortParams={element:'Distance',type:'number'};break;case'Specialties':sortParams={element:'BoardCertifiedSpecialties.0.Name Specialties.0.Name'};break;case'PatientSatisfaction':sortParams={element:'QualityViewScores.PatientSatisfaction',type:'number',direction:'descending'};break;case'OverallQuality':sortParams={element:'QualityViewScores.QualityRating',type:'number',direction:'descending'};break;case'Recognitions':sortParams=[{element:'IsAccreditedFacility',type:'number'},{element:'IsBlueDistinctionCenter',type:'number'},{element:'IsCenterOfExcellence',type:'number'},{element:'IsNCQARecognized',type:'number'},{element:'HasRecognitions',type:'number'},{element:'IsBoardCertified',type:'number'}];break;case'HealthGradesOverall':sortParams={element:'HospitalScores.HealthGradesQualityRating',type:'number',direction:'descending'};break;case'CostRating':sortParams={element:'QualityViewScores.CostRating',type:'number'};break;case'HospitalCostRating':sortParams={element:'HospitalScores.CostRating',type:'number'};break;case'OutOfPocketCost':sortParams={element:'QualityViewScores.YourOutOfPocketCost HospitalScores.YourOutOfPocketCost'};break;case'Gender':sortParams={element:'Gender'};break;case'Languages':sortParams={element:'Languages.0.Name'};break;case'OfficeName':sortParams={element:'GroupProviderName'};break;case'AcceptingNewPatients':sortParams={element:'IsAcceptingNewPatients',direction:'descending'};break;case'QualityScoresAvailable':sortParams={element:'HasQualityData',type:'boolean'};break;}
if(!sortParams.length){sortParams=[sortParams];}
sortParams[0].column=column;if(column!='Distance'){sortParams.push({element:'Distance',type:'number'});}
if(column!='Name'){sortParams.push({element:'ProviderName'});}
return sortParams;}};MVC.SystemController.registerViewScript(ResultsController,ResultsController.ListViewScript);
var HomeController={id:'home',defaultAction:function(){var canvas;if(!this.isDefaultViewScriptLoaded()){this.defaultViewSciptIsLoaded();canvas=MVC.Application.createCanvas({canvasId:'main',viewScriptId:'canvas',attr:{className:'main'}});this.setViewScript(canvas);MVC.SystemController.createRequest().setControllerId('features').setActionId('showFeatures').send();}
MVC.SystemController.createRequest().setControllerId('application').setActionId('resetBreadCrumb').send();MVC.SystemController.createRequest().setControllerId('application').setActionId('showBreadCrumb').send();if(MVC.SystemController.getRequest().getControllerId()=='home'){MVC.Application.hideCanvas();MVC.Application.showCanvas('main');this.view.render('welcome');}
MVC.SystemController.createRequest().setControllerId('search').setActionId('reset').setParams({FullReset:true}).send();MVC.SystemController.createRequest().setControllerId('search').setActionId('default').send();MV.EventsManager.fireEvent('resizeParentIFrame');}};MVC.SystemController.registerController(HomeController);
ResultsController.HealthInfoViewScript={id:'healthInfo',strings:{},load:function(){this.strings=EPD.Strings.Results;this.addTemplate('relatedLinkVideo','#relatedLinkVideo');this.addTemplate('relatedLink','#relatedLink');this.addTemplate('question','#question');this.addTemplate('relatedVideoTemplate','#relatedVideoTemplate');this.addTemplate('healthInfo','#healthInfo').supplant(this.strings);},render:function(){var data=this.view.ResultIssueInfo;var transformations={Description:data.Detail.Description,LinksArray:data.References.Urls,QuestionsArray:data.References.Questions};if(data.Detail.ConsumerTerm=='Knee arthroscopy'){transformations.Video=true;transformations.VideoTitle=this.strings.HealthIssueInfoVideoTitle;transformations.VideoHover=this.strings.HealthIssueInfoVideoHoverHelp;transformations.VideoUrl=this.strings.HealthIssueInfoVideoURL;}
var $content=this.getTemplate('healthInfo').clone();if(transformations.LinksArray.length>0||transformations.Video){var healthInfoLinks=$content.find('#healthInfoLinks').empty();if(transformations.Video){healthInfoLinks.append(this.getTemplate('relatedLinkVideo').clone().supplant(transformations));}
healthInfoLinks.append(MV.Util.DOMCreation.createElementsAndBindDataSupplant(transformations.LinksArray,this.getTemplate('relatedLink')));$content.find('.healthInfoLinksSection').removeClass('invisible');}
if(transformations.QuestionsArray.length>0){$content.find('#healthInfoQuestions').empty().append(MV.Util.DOMCreation.createElementsAndBindDataSupplant(transformations.QuestionsArray,this.getTemplate('question')));$content.find('.healthInfoQuestionsSection').removeClass('invisible');}
var _this=this;var _videoLinkPresent=transformations.Video;var _videoLinkHover=transformations.VideoHover;var response=MVC.SystemController.createResponse().bindViewScript(MVC.SystemController.getController('results').getViewScript('default'));response.setContent('listContainer',$content.supplant(transformations));if(transformations.LinksArray.length!==0){response.addCallback(function(){_this.bindEvents($content);if(_videoLinkPresent){var hoverHelpArray=[{'Target':$content.find('.videoLink'),'Content':_videoLinkHover}];MVC.SystemController.createRequest().setControllerId('plugins').setActionId('hoverHelpPlugin').setParams(hoverHelpArray).send();}});}
response.addCallback(function(){MV.EventsManager.fireEvent('resizeParentIFrame');});response.send();},bindEvents:function($content){var _this=this;$content.find('#healthInfoLinks').unbind('click').bind('click',function(e){var $target=$(e.target);var $link=$target.closest('a');if($link&&($link.attr('data-mv')!==undefined)){_this.showVideoModal();}
var url=$link.attr('href')?$link.attr('href'):$link.attr('data-mv');if(url){MV.EventsManager.fireEvent('externalLinkAccessed',[url,$target.text()]);}});},showVideoModal:function(){var transformations={Strings:{}};transformations.Url='/video/testknee1.asf';var modalParams={'Content':this.getTemplate('relatedVideoTemplate').clone().supplant(transformations)};MVC.SystemController.createRequest().setControllerId('plugins').setActionId('modalPlugin').setParams(modalParams).setRequestInAddress(false).send();}};MVC.SystemController.registerViewScript(ResultsController,ResultsController.HealthInfoViewScript);
ResultsController.DelegateListEvents=function(event,listContainer){listContainer=listContainer||$('body');event.stopPropagation();var $target=$(event.target).closest('[data-mv]',listContainer);if($target.length===0){return;}
var mvAr=$target.attr('data-mv').split('--');var action=mvAr[0];var data=mvAr[1];if(!action){return;}
switch(action){case'openDetail':case'openLink':if($.history){$.history.load(data.substr(1));}else{MVC.SystemController.createRequest({hashString:data}).setRequestInAddress(true).send();}
break;case'addProvider':MVC.SystemController.createRequest().setControllerId('mylist').setActionId('add').setParams({addprovider:data}).send();break;case'deleteProvider':case'deleteProviderInList':var request=MVC.SystemController.createRequest().setControllerId('mylist').setActionId('delete').setParams({deleteprovider:data});if(action=='deleteProviderInList'){request.setActionId('deleteInList');request.setParams({deleteprovider:data,row:$target.closest('tr')});}
request.send();break;case'compareProvider':case'compareProviderInList':var cookieName=(action=='compareProviderInList')?'listCompareCounter':'resultsCompareCounter';var counter=$.cookie(cookieName);var $idsInput=listContainer.find('#compareProviderIds');var ids=$idsInput.val();if($target[0].checked){if(counter){counter++;if(counter==11){alert(EPD.Strings.Results.MaxForCompareMessage);$target[0].checked=false;return;}}else{counter=1;}
$idsInput.val(ids+data+';');}else{counter--;if(counter<=0){counter=0;}
$idsInput.val(ids.replace(data+';',''));}
$target[0].defaultChecked=$target[0].checked;listContainer.find('#compareCount').text(counter);$.cookie(cookieName,counter);break;case'openWindow':window.open(data);if(data.match(/^http(s?)\:\/\//i)){MV.EventsManager.fireEvent('externalLinkAccessed',[data,$target.text()]);}
break;default:}};
ResultsController.Utilities={delegateFindLinksEvents:function(event){var $target=$(event.target);var $link=$target.closest('a');if(!$link||(!$link.hasClass('findDoctor')&&!$link.hasClass('findHospital'))){return;}
var params=MVC.SystemController.getRequest().getParams();params.providerType=$link.hasClass('findDoctor')?'P000':'H000';params.providerTypeLabel=$link.hasClass('findDoctor')?'Doctors':'Hospitals';MVC.SystemController.createRequest().setControllerId('results').setActionId('list').setParams(params).setRequestInAddress(true).forceDispatch(true).send();MVC.SystemController.createRequest().setControllerId('search').setActionId('reset').send();MVC.SystemController.createRequest().setControllerId('search').setActionId('default').setParams(params).send();},attachHoverHelps:function(){}};
var SearchController={id:'search',defaultAction:function(params){if(!this.view.PlanCode){this.view.PlanCode=$.cookie('MVClientPlan');}
var isEmpty=function(object){for(var element in object){return false;}
return true;};if(!params||isEmpty(params)){params=MVC.SystemController.getRequest().getParams();this.view.HaveSystemRequestParams=true;}else{this.view.HaveSystemRequestParams=false;}
this.view.SendFormResponse=true;this.formAction(params);},formAction:function(params){var _this=this;this.view.SearchParams=params;this.view.render('inputElements');if(!this.getViewScript('inputElements').isLoaded()){setTimeout(function(){_this.formAction(params);},10);return;}
if(!this.view.LocationCriteria){this.loadLocationCriteria(params,function(){_this.formAction(params);});return;}
if(!params.plan&&this.view.PlanCode){params.plan=this.view.PlanCode;}
var render=function(){_this.view.render('form');};if(!this.haveLocation(params)){render();}
else if(this.view.HaveSystemRequestParams||!this.view.RequiredCriteria){this.loadSearchCriteria(params,render);}
else if(!this.view.DropDownCriteria){params.latitude=this.view.RequiredCriteria.Latitude;params.longitude=this.view.RequiredCriteria.Longitude;this.loadDropDownCriteria(params,render);}
else{render();}},resetAction:function(params){this.view.HaveSystemRequestParams=false;this.view.SearchParams=null;this.view.RequiredCriteria=null;this.view.DropDownCriteria=null;this.view.SearchFields=null;var formViewScript=this.getViewScript('form');if(formViewScript){formViewScript.reset(params);}},forceFormValidationErrorAction:function(params){this.getViewScript('form').validation.forceValidationError(params.elementId,params.message);},unblockFormAction:function(){this.getViewScript('form').unblock();},haveRequiredValues:function(){var params=this.view.SearchParams;var criteria=this.view.RequiredCriteria;for(var list in criteria){if(criteria[list]instanceof Array){var param=list.charAt(0).toLowerCase()+list.substring(1,list.indexOf('List'));if(!params[param]){return false;}}}
return true;},haveLocation:function(params){return(params.distance&&(params.zip||(params.city&&params.state)));},loadLocationCriteria:function(params,callback){var locationParams={DirectoryRegion:params.region||null};this.callWS({WSObjectName:'EPD',WSMethodName:'GetLocationCriteriaList',params:locationParams,callback:function(_this){var model=_this.getModel('GetLocationCriteriaList');_this.view.LocationCriteria=model.findInData('CriteriaList');_this.view.LocationFields=model.findInData('Columns');if(callback){callback();}}});},loadSearchCriteria:function(params,callback){var _this=this;this.loadRequiredCriteria(params,function(){params.latitude=_this.view.RequiredCriteria.Latitude;params.longitude=_this.view.RequiredCriteria.Longitude;_this.loadDropDownCriteria(params,callback);});},loadRequiredCriteria:function(params,callback){var requiredParams={DirectoryRegion:params.region||null,Distance:params.distance||null,City:params.city||null,State:params.state||null,Zip:params.zip||null,Street:params.street||null};this.callWS({WSObjectName:'EPD',WSMethodName:'GetRequiredCriteriaList',params:requiredParams,callback:function(_this){_this.view.RequiredCriteria=_this.getModel('GetRequiredCriteriaList').getData();if(callback){callback();}}});},loadDropDownCriteria:function(params,callback){var dropDownParams={DirectoryRegion:params.region||null,ProviderTypeCode:params.providerType||null,NetworkID:params.network||null,PlanCode:params.plan||null,ProductID:params.product||params.prefix||null,Distance:params.distance,Latitude:params.latitude,Longitude:params.longitude};this.callWS({WSObjectName:'EPD',WSMethodName:'GetDropDownCriteriaList',params:dropDownParams,callback:function(_this){var model=_this.getModel('GetDropDownCriteriaList');_this.view.DropDownCriteria=model.findInData('CriteriaList');_this.view.SearchFields=model.findInData('Columns');if(callback){callback();}},error:callback});}};MVC.SystemController.registerController(SearchController);
SearchController.InputElementsViewScript={id:'inputElements',strings:{},inputElements:{},searchParams:{},load:function(){this.strings=EPD.Strings.Search;},render:function(){this.searchParams=this.view.SearchParams;},get:function(id){return this.inputElements[id];},getByInputId:function(inputId){for(var id in this.inputElements){if(this.inputElements[id].isActive()&&this.inputElements[id].getInputId()==inputId){return this.inputElements[id];}}},getForGroup:function(group){var array=[];for(var id in this.inputElements){if(this.inputElements[id].isInGroup(group)){array.push(this.inputElements[id]);}}
return array;},getElement:function(id){return this.inputElements[id]?this.inputElements[id].getElement():null;},create:function(field,group,payload,reset){var inputElement=this.inputElements[field.Id];var attributes=MVC.Utilities.formatKeyValueArrayToObject(field.Attributes,'Id','Value');var param,value;if(attributes.InputId){param=attributes.InputId.substring(0,attributes.InputId.indexOf('Input'));value=this.searchParams[param];}
if(!inputElement||!inputElement.isInGroup(group)){var templateId=attributes.InputType+'InputTemplate';var template=this.getTemplate(templateId);if(!template){template=this.addTemplate(templateId,'#'+templateId);}
var supplantObject={ElementId:field.Id,ElementLabel:field.Label,ElementValue:value||field.Label,Strings:this.strings,Attributes:attributes};if(attributes.InputType&&SearchController.InputElementsViewScript[attributes.InputType+'InputElement']){inputElement=SearchController.InputElementsViewScript[attributes.InputType+'InputElement'].clone();}else{inputElement=SearchController.InputElementsViewScript.GenericInputElement.clone();}
var element=template.clone(true).supplant(supplantObject);inputElement.init(element,field,attributes,group);}
inputElement.update(value,payload,this.searchParams,param).setActive(true);if(reset){inputElement.reset();}
this.inputElements[field.Id]=inputElement;return inputElement;},clear:function(){if(arguments&&arguments.length>0){for(var i=0,l=arguments.length;i<l;i++){for(var id in this.inputElements){if(this.inputElements[id].isInGroup(arguments[i])){this.inputElements[id].clear();}}}}else{for(var id in this.inputElements){this.inputElements[id].clear();}}},reset:function(){this.searchParams={};for(var i=0,l=arguments.length;i<l;i++){for(var id in this.inputElements){if(this.inputElements[id].isInGroup(arguments[i])){this.inputElements[id].reset();}}}}};MVC.SystemController.registerViewScript(SearchController,SearchController.InputElementsViewScript);SearchController.InputElementsViewScript.GenericInputElement={element:null,input:null,field:null,attributes:null,group:null,active:false,init:function(element,field,attributes,group){this.element=element.attr('id',field.Id+'Element').addClass('inputElement');this.field=field;this.attributes=attributes;this.group=group;if(this.attributes){if(this.attributes.InputId){this.input=element.find('#'+this.attributes.InputId);}
if(this.attributes.ClassName){this.element.addClass(this.attributes.ClassName);}}
return this;},update:function(value){if(this.input){this.input.val(value||SearchController.InputElementsViewScript.Utilities.getDefaultValue(this.input));}
return this;},setActive:function(isActive){this.active=isActive;return this;},isActive:function(){return this.active;},reset:function(){if(this.input){this.input.val(SearchController.InputElementsViewScript.Utilities.getDefaultValue(this.input));}
return this;},clear:function(){this.element.remove();this.active=false;return this;},enable:function(){if(this.input){this.input.attr('disabled','');}
return this;},disable:function(){if(this.input){this.input.attr('disabled','disabled').removeClass('focused');}
return this;},getElement:function(){return this.element;},getInputId:function(){if(this.input){return this.input.attr('id');}},isInGroup:function(group){return(this.group==group);},clone:function(){return $.extend({},this);},extend:function(inputElement){return $.extend({},this,inputElement);}};SearchController.InputElementsViewScript.CheckboxInputElement={checkbox:null,defaultChecked:null,update:function(value){if(!this.checkbox){this.checkbox=this.input[0];}
if(this.defaultChecked===null){this.defaultChecked=this.checkbox.checked;}
if(typeof value=="boolean"){this.checkbox.checked=value;}else if(typeof value=="string"){this.checkbox.checked=(value.toLowerCase()==='true');}
return this;},reset:function(){if(this.checkbox){this.checkbox.checked=this.defaultChecked;}
return this;}};SearchController.InputElementsViewScript.CheckboxInputElement=SearchController.InputElementsViewScript.GenericInputElement.extend(SearchController.InputElementsViewScript.CheckboxInputElement);SearchController.InputElementsViewScript.SelectInputElement={list:[],update:function(value,payload){if(payload&&payload instanceof Array){this.list=payload;SearchController.InputElementsViewScript.Utilities.updateSelect(this.input,this.list,value,this.field.Label);}else{this.input.val(value||'');if(!value){this.input.find('option:first').attr('selected','selected').parent('select');}}
return this;},reset:function(){return this.update();}};SearchController.InputElementsViewScript.SelectInputElement=SearchController.InputElementsViewScript.GenericInputElement.extend(SearchController.InputElementsViewScript.SelectInputElement);SearchController.InputElementsViewScript.AutocompleteInputElement={valueInput:null,update:function(value,payload,params,param){this.input.val(value||SearchController.InputElementsViewScript.Utilities.getDefaultValue(this.input));if(!this.valueInput&&this.attributes.ValueId){this.valueInput=this.element.find('#'+this.attributes.ValueId);}
this.valueInput.val(params[param+'Id']);return this;},reset:function(){this.input.val(SearchController.InputElementsViewScript.Utilities.getDefaultValue(this.input));this.valueInput.val('');return this;}};SearchController.InputElementsViewScript.AutocompleteInputElement=SearchController.InputElementsViewScript.GenericInputElement.extend(SearchController.InputElementsViewScript.AutocompleteInputElement);SearchController.InputElementsViewScript.SelectXORBottomInputElement=SearchController.InputElementsViewScript.SelectInputElement.extend();SearchController.InputElementsViewScript.AutocompleteXORBottomInputElement=SearchController.InputElementsViewScript.AutocompleteInputElement.extend();SearchController.InputElementsViewScript.DistanceZipInputElement={update:function(value,payload,params){if(params.distance){this.element.find('#distanceInput').val(params.distance);}
if(params.zip){this.element.find('#zipInput').val(params.zip);}
return this;},reset:function(){this.element.find('input[type=text]').each(function(){var input=$(this);input.val(SearchController.InputElementsViewScript.Utilities.getDefaultValue(input));});this.element.find('#distanceInput').val(EPD.Strings.Search.DistanceDefault);return this;},enable:function(){this.element.find('#distanceInput').focus();this.element.find('#zipInput').attr('disabled','');return this;},disable:function(){this.element.find('#distanceInput').removeClass('focused');this.element.find('#zipInput').attr('disabled','disabled').removeClass('focused');return this;}};SearchController.InputElementsViewScript.DistanceZipInputElement=SearchController.InputElementsViewScript.GenericInputElement.extend(SearchController.InputElementsViewScript.DistanceZipInputElement);SearchController.InputElementsViewScript.FullAddressInputElement={update:function(value,payload,params){if(params.street||params.city||params.state){this.element.find('#fullAddressFieldset').removeClass('invisible');this.element.find('#fullAddressLink').addClass('expanded');if(params.street){this.element.find('#streetInput').val(params.street);}
if(params.city){this.element.find('#cityInput').val(params.city);}}
SearchController.InputElementsViewScript.Utilities.updateSelect(this.element.find('#stateInput'),payload,params.state,'State');return this;},reset:function(){this.element.find('input[type=text]').each(function(){var input=$(this);input.val(SearchController.InputElementsViewScript.Utilities.getDefaultValue(input));});this.element.find('#stateInput').val('');return this;},enable:function(){this.element.find('input, select').attr('disabled','');return this;},disable:function(){this.element.find('input, select').attr('disabled','disabled').removeClass('focused');return this;}};SearchController.InputElementsViewScript.FullAddressInputElement=SearchController.InputElementsViewScript.GenericInputElement.extend(SearchController.InputElementsViewScript.FullAddressInputElement);SearchController.InputElementsViewScript.LocationSubmitInputElement={enable:function(){this.element.find('#locationSubmit').removeClass('invisible');this.element.find('#locationChange').addClass('invisible');return this;},disable:function(){this.element.find('#locationSubmit').addClass('invisible');this.element.find('#locationChange').removeClass('invisible');return this;}};SearchController.InputElementsViewScript.LocationSubmitInputElement=SearchController.InputElementsViewScript.GenericInputElement.extend(SearchController.InputElementsViewScript.LocationSubmitInputElement);SearchController.InputElementsViewScript.ProductInputElement={update:function(value,payload,params){if(params.prefix){this.element.find('#prefixInput').val(params.prefix);}
SearchController.InputElementsViewScript.Utilities.updateSelect(this.element.find('#productInput'),payload,params.product,this.field.Label);return this;},reset:function(){var prefixInput=this.element.find('#prefixInput').attr('disabled','');prefixInput.val(SearchController.InputElementsViewScript.Utilities.getDefaultValue(prefixInput));this.element.find('#productInput').val('').attr('disabled','');return this;}};SearchController.InputElementsViewScript.ProductInputElement=SearchController.InputElementsViewScript.GenericInputElement.extend(SearchController.InputElementsViewScript.ProductInputElement);SearchController.InputElementsViewScript.GenderInputElement={update:function(value,payload,params){if(params.male){if(typeof params.male=="boolean"){this.element.find('#maleInput')[0].checked=params.male;}else if(typeof params.male=="string"){this.element.find('#maleInput')[0].checked=(params.male.toLowerCase()==='true');}}
if(params.female){if(typeof params.female=="boolean"){this.element.find('#femaleInput')[0].checked=params.female;}else if(typeof params.female=="string"){this.element.find('#femaleInput')[0].checked=(params.female.toLowerCase()==='true');}}
return this;},reset:function(){this.element.find('#maleInput')[0].checked=true;this.element.find('#femaleInput')[0].checked=true;return this;}};SearchController.InputElementsViewScript.GenderInputElement=SearchController.InputElementsViewScript.GenericInputElement.extend(SearchController.InputElementsViewScript.GenderInputElement);SearchController.InputElementsViewScript.Utilities={updateSelect:function(select,list,value,label){select.empty();if(label){select.append($('<option/>').val('').text(label));}else{var $prev=select.prev();if($prev&&select.attr('id')&&($prev.attr('for')==select.attr('id'))){select.append($('<option/>').val('').text($prev.text()));}}
for(var i=0,l=list.length;i<l;i++){var item=this.convertItem(list[i]);var $option=$('<option/>').text(item.Name);$option.val(item.Code);select.append($option);}
select.iedropdown({updated:true});if(value){select.val(value);}},convertItem:function(item){if(typeof item=="object"){var code=item.ProviderTypeCode||item.ProductID||item.NetworkId||item.PlanCode||item.SpecialtyCode||item.AffiliationID||item.LanguageCode;var name=item.ProviderTypeName||item.ProductName||item.NetworkName||item.PlanName||item.SpecialtyName||item.AffiliationName||item.LanguageName;return{Code:typeof code==='string'?$.trim(code):code,Name:name};}else if(typeof item=="number"){return{Code:item,Name:item};}else{item=$.trim(item);return{Code:item,Name:item};}},getDefaultValue:function(input){var prev=input.prev();if(prev&&prev.attr('for')&&(prev.attr('for')==input.attr('id'))){return prev.text();}else{return'';}}};
SearchController.FormViewScript={id:'form',strings:{},isBlocked:false,isLocationEnabled:true,validation:null,validationErrorClass:'errorInput',prefixIsValid:true,inputElements:null,elementToFocus:null,load:function(){this.setLoadOnlyOnce(true);this.strings=EPD.Strings.Search;this.inputElements=MVC.SystemController.getController('search').getViewScript('inputElements');this.addContainer('form','#allFieldsTemplates').supplant(this.strings);this.addContainer('searchContainer','.search').addClass('invisible');this.addContainer('locationFieldset','#locationFieldset');this.addContainer('requiredFieldset','#requiredFieldset').addClass('invisible');this.addContainer('optionalFieldset','#optionalFieldset').addClass('invisible');this.addContainer('blockContainer','#searchFormBlockContainer');this.addTemplate('validationError','#validationError');SearchController.FormViewScript.validation=this.validation=MV.Validation.init({template:this.getTemplate('validationError').clone(true).removeClass('invisible'),validators:this.createCustomValidators(),validationRules:this.createValidationRules(),errorClass:this.validationErrorClass});MV.EventsManager.subscribeToEvent('locationHashChanged',this.locationHashChanged);},locationHashChanged:function(hash){SearchController.FormViewScript.validation.reset();},render:function(){var searchParams=this.view.SearchParams;this.inputElements.clear();var searchContainer=this.getContainer('searchContainer');var locationList=this.getContainer('locationFieldset').find('ol');var requiredFieldset=this.getContainer('requiredFieldset');var requiredList=requiredFieldset.find('ol');var optionalFieldset=this.getContainer('optionalFieldset');var optionalList=optionalFieldset.find('ol');var hoverHelpArray=[];if(this.view.LocationFields){var locationFields=this.view.LocationFields[0].Elements;for(var li=0,ll=locationFields.length;li<ll;li++){var field=locationFields[li];var payload=null;if(field.Id=='FullAddressInput'){payload=this.view.LocationCriteria.StateList;}
var element=this.inputElements.create(field,'location',payload).getElement();if(element){if(field.Id=='FullAddressInput'){if(this.strings.FullAddressHoverHelp){hoverHelpArray.push({'Target':element.find('#fullAddressLink'),'Content':this.strings.FullAddressHoverHelp});}}else if(this.strings[field.Id+'HoverHelp']){hoverHelpArray.push({'Target':element,'Content':this.strings[field.Id+'HoverHelp']});}
locationList.append(element);}}}
if(this.view.RequiredCriteria){if(this.view.HaveSystemRequestParams){this.toggleLocationForm(false);}
if(!this.view.DropDownCriteria){if(!this.view.PlanCode&&this.view.RequiredCriteria.PlanList){var field={Id:'PlanInput',Label:this.strings.PlanLabel,Attributes:[{Id:'InputType',Value:'Select'},{Id:'InputId',Value:'planInput'}]};var element=this.inputElements.create(field,'required',this.view.RequiredCriteria.PlanList).getElement();requiredList.append(element);}
if(this.view.RequiredCriteria.NetworkList){var field={Id:'NetworkInput',Label:this.strings.NetworkLabel,Attributes:[{Id:'InputType',Value:'Select'},{Id:'InputId',Value:'networkInput'}]};var element=this.inputElements.create(field,'required',this.view.RequiredCriteria.NetworkList).getElement();requiredList.append(element);}
if(this.view.RequiredCriteria.ProviderTypeList){var field={Id:'ProviderTypeInput',Label:this.strings.ProviderTypeLabel,Attributes:[{Id:'InputType',Value:'Select'},{Id:'InputId',Value:'providerTypeInput'}]};var element=this.inputElements.create(field,'required',this.view.RequiredCriteria.ProviderTypeList).getElement();requiredList.append(element);}
if(this.view.RequiredCriteria.ProductList){var field={Id:'PrefixInput',Label:this.strings.PrefixLabel,Attributes:[{Id:'InputType',Value:'Text'},{Id:'InputId',Value:'prefixInput'},{Id:'ClassName',Value:'xorTop'}]};var element=this.inputElements.create(field,'required').getElement();requiredList.append(element);field={Id:'ProductInput',Label:this.strings.ProductLabel,Attributes:[{Id:'InputType',Value:'SelectXORBottom'},{Id:'InputId',Value:'productInput'}]};element=this.inputElements.create(field,'required',this.view.RequiredCriteria.ProductList).getElement();requiredList.append(element);}
this.elementToFocus=$(requiredList.find('select')[0]);}
searchContainer.removeClass('invisible');}else{searchContainer.addClass('invisible');}
if(this.view.DropDownCriteria){var requiredFields=[];var optionalFields=[];for(var fi=0,fl=this.view.SearchFields.length;fi<fl;fi++){if(this.view.SearchFields[fi].Id.match(/Required/)){requiredFields=this.view.SearchFields[fi].Elements;}else if(this.view.SearchFields[fi].Id.match(/Optional/)){optionalFields=this.view.SearchFields[fi].Elements;}}
if(requiredFields.length>0){requiredFieldset.removeClass('invisible');requiredFieldset.find('#requiredLegend').removeClass('invisible');}else{requiredFieldset.addClass('invisible');requiredFieldset.find('#requiredLegend').addClass('invisible');}
for(var ri=0,rl=requiredFields.length;ri<rl;ri++){var field=requiredFields[ri];var inputElement=null;if(field.Id=='NetworkInput'&&(!searchParams.network||this.view.HaveSystemRequestParams)){if(this.view.DropDownCriteria.NetworkList){inputElement=this.inputElements.create(field,'required',this.view.DropDownCriteria.NetworkList);}}else if(field.Id=='ProductInput'){if(this.view.DropDownCriteria.ProductList){inputElement=this.inputElements.create(field,'required',this.view.DropDownCriteria.ProductList);}}else if(field.Id=='ProviderTypeInput'){if(this.view.RequiredCriteria.ProviderTypeList){inputElement=this.inputElements.create(field,'required',this.view.RequiredCriteria.ProviderTypeList);}}else{inputElement=this.inputElements.create(field,'required');}
if(inputElement){var element=inputElement.getElement();if(this.strings[field.Id+'HoverHelp']){hoverHelpArray.push({'Target':element,'Content':this.strings[field.Id+'HoverHelp']});}
requiredList.append(element);}}
if(this.haveAllValues(requiredFields)){for(var oi=0,ol=optionalFields.length;oi<ol;oi++){var field=optionalFields[oi];var inputElement=null;if(field.Id=='SpecialtyInput'||field.Id=='SpecialtyXORTopInput'||field.Id=='SpecialtyXORBottomInput'){if(this.view.DropDownCriteria.SpecialtyList){inputElement=this.inputElements.create(field,'optional',this.view.DropDownCriteria.SpecialtyList,!(this.view.HaveSystemRequestParams));}}else if(field.Id=='HospitalFacilityAffiliationInput'){if(this.view.DropDownCriteria.AffiliationList){inputElement=this.inputElements.create(field,'optional',this.view.DropDownCriteria.AffiliationList,!(this.view.HaveSystemRequestParams));}}else if(field.Id=='OtherLanguagesInput'){if(this.view.DropDownCriteria.LanguageList){inputElement=this.inputElements.create(field,'optional',this.view.DropDownCriteria.LanguageList,!(this.view.HaveSystemRequestParams));}}else{inputElement=this.inputElements.create(field,'optional',null,!(this.view.HaveSystemRequestParams));}
if(inputElement){var element=inputElement.getElement();var hoverHelpKey=field.Id+'HoverHelp';if(field.Id=='HealthIssueXORTopInput'){hoverHelpKey='HealthIssueInputHoverHelp';}
if(this.strings[hoverHelpKey]){hoverHelpArray.push({Target:element,Content:this.strings[hoverHelpKey]});}
optionalList.append(element);}}
this.elementToFocus=optionalFieldset;optionalFieldset.removeClass('invisible');if(optionalFields.length<=1){optionalFieldset.find('#optionalLegend').addClass('invisible');}else{optionalFieldset.find('#optionalLegend').removeClass('invisible');}}else{this.elementToFocus=$(requiredList.find('select')[0]);optionalFieldset.addClass('invisible');}
var healthIssueInput=this.inputElements.getByInputId('healthIssueInput');if(healthIssueInput){this.healthIssueAutoCompleteInit(healthIssueInput.getElement(),healthIssueInput.isInGroup('required'));}}
else{optionalFieldset.addClass('invisible');}
if(this.view.SendFormResponse){this.view.SendFormResponse=false;var _this=this;MVC.SystemController.createResponse().bindViewScript(MVC.SystemController.getController('home').getViewScript('canvas')).setContent('navigation',this.getForm()).addCallback(function(){_this.bindEvents(hoverHelpArray);$('.ieDropdown').iedropdown();}).send();}else{this.bindEvents(hoverHelpArray);$('.ieDropdown').iedropdown();}},block:function(){this.toggleBlocked(true);},unblock:function(){this.toggleBlocked(false);},toggleBlocked:function(blocked){this.isBlocked=blocked;if(blocked){this.getContainer('blockContainer').removeClass('invisible');}else{this.getContainer('blockContainer').addClass('invisible');}
var locationSubmitElement=this.inputElements.getElement('LocationSubmit');if(locationSubmitElement){locationSubmitElement.find('button').disabled=blocked;}
var searchElement=this.inputElements.getElement('SearchSubmit');if(searchElement){searchElement.find('button').disabled=blocked;}},addressLinkClicked:function(){if(this.isLocationEnabled){var fullAddressElement=this.inputElements.getElement('FullAddressInput');if(fullAddressElement){fullAddressElement.find('#fullAddressFieldset').toggleClass('invisible');fullAddressElement.find('#fullAddressLink').toggleClass('expanded');}}},formReloadTriggered:function(){if(this.isBlocked){return;}
this.block();this.validation.reset();var params=$.extend({},this.getParameters(this.getContainer('locationFieldset')),this.getParameters(this.getContainer('requiredFieldset')));var providerCategory=EPD.Config.getProviderTypeCategory(params.providerType);var isLocal=!this.view.DropDownCriteria.IsNational;if(isLocal&&(providerCategory=='practitioners'||providerCategory=='hospitals')&&$.cookie('MVFirstTimeUser')=='true'){var modalParams={'Content':this.strings.HealthIssueModalContent};MVC.SystemController.createRequest().setControllerId('plugins').setActionId('modalPlugin').setParams(modalParams).setRequestInAddress(false).send();$.cookie('MVFirstTimeUser','false');}
this.view.DropDownCriteria=null;MVC.SystemController.createRequest().setControllerId('search').setActionId('form').setParams(params).send();},startButtonClicked:function(event){if(this.isBlocked||!this.validation.validate()){event.stopImmediatePropagation();return;}
var params=this.getParameters(this.getContainer('locationFieldset'));if(!(params.zip||(params.city&&params.state))){return;}
this.block();this.toggleLocationForm(false);MVC.SystemController.createRequest().setControllerId('search').setActionId('reset').send();MVC.SystemController.createRequest().setControllerId('search').setActionId('form').setParams(params).send();},changeLocationButtonClicked:function(){if(this.isBlocked){return;}
this.block();this.toggleLocationForm(true);this.inputElements.get('DistanceZipInput').reset();this.inputElements.get('FullAddressInput').reset();MVC.SystemController.createRequest().setControllerId('search').setActionId('reset').send();MVC.SystemController.createRequest().setControllerId('search').setActionId('form').send();},submitButtonClicked:function(){if(this.isBlocked||!this.validation.validate()){return;}
var params=this.getParameters();if(!params.latitude||!params.longitude){params.latitude=this.view.RequiredCriteria.Latitude;params.longitude=this.view.RequiredCriteria.Longitude;}
var controllerAction='list';if(params.providerType=='MVHI00'){controllerAction='healthInfo';}
MVC.SystemController.createRequest().setControllerId('results').setActionId(controllerAction).setRequestInAddress(true).forceDispatch(true).setParams(params).send();},toggleLocationForm:function(enable){var locationElements=this.inputElements.getForGroup('location');this.isLocationEnabled=enable;if(enable){for(var i=0,l=locationElements.length;i<l;i++){locationElements[i].enable();}}else{for(var i=0,l=locationElements.length;i<l;i++){locationElements[i].disable();}}},hide:function(destroy){var form=this.getForm();if(!form){return;}
if(destroy){form.remove();}else{form.addClass('invisible');}},reset:function(params){if(this.getContainer('searchContainer')){this.getContainer('searchContainer').addClass('invisible');}
if(this.getContainer('optionalFieldset')){this.getContainer('optionalFieldset').addClass('invisible');}
if(this.validation){this.validation.reset();}
if(this.inputElements){this.inputElements.reset('required','optional');if(params&&params.FullReset){this.changeLocationButtonClicked.call(this);var fullAddressElement=this.inputElements.getElement('FullAddressInput');if(fullAddressElement){var link=fullAddressElement.find('#fullAddressLink');if(link.hasClass('expanded')){fullAddressElement.find('#fullAddressFieldset').toggleClass('invisible');link.toggleClass('expanded');}}}}},bindEvents:function(hoverHelpArray){var _this=this;var locationSubmitElement=this.inputElements.getElement('LocationSubmit');if(locationSubmitElement){locationSubmitElement.find('#locationSubmit button').unbind('click').click(function(event){_this.startButtonClicked.call(_this,event);});locationSubmitElement.find('#locationChange button').unbind('click').click(function(){_this.changeLocationButtonClicked.call(_this);});}
var searchElement=this.inputElements.getElement('SearchSubmit');if(searchElement){searchElement.find('button').unbind('click').click(function(){_this.submitButtonClicked.call(_this);});}
var searchElement=this.inputElements.getElement('RequiredSearchSubmit');if(searchElement){searchElement.find('button').unbind('click').click(function(){_this.submitButtonClicked.call(_this);});}
var distanceZipElement=this.inputElements.getElement('DistanceZipInput');if(distanceZipElement){var distanceInput=distanceZipElement.find("#distanceInput");var zipInput=distanceZipElement.find("#zipInput");distanceInput.get(0).onblur=function(){_this.validation.validateElement('distanceInput','blur');};distanceInput.bind('keyup',function(){_this.validation.validateElement('distanceInput','keyup');});zipInput.get(0).onblur=function(){_this.validation.validateElement('zipInput','blur');};zipInput.bind('keyup',function(){_this.validation.validateElement('zipInput','keyup');});}
var fullAddressElement=this.inputElements.getElement('FullAddressInput');if(fullAddressElement){fullAddressElement.find('#fullAddressLink').unbind('click').click(function(event){event.preventDefault();_this.addressLinkClicked.call(_this);});}
var form=this.getForm();form.unbind('submit').submit(function(event){_this.validation.validate();return false;});form.find('input, select, button').unbind('focus blur keyup').focus(function(event){var $target=$(this);if(this.tagName.toLowerCase()=='input'){var id=$target.attr('id');var $prev=$target.prev();if($prev&&($prev.attr('for')==id)&&($target.val()==$prev.text())){$target.val('');}
if(event.type=='focus'&&id=='healthIssueInput'){var element=_this.inputElements.getByInputId('healthIssueInput');MVC.SystemController.createRequest().setControllerId('plugins').setActionId('hoverHelpPluginHide').setParams(element.getElement()).send();}}
$target.addClass('focused');}).blur(function(){var $target=$(this);if(this.tagName.toLowerCase()=='input'){var id=$target.attr('id');var value=$target.val();var $prev=$target.prev();if(!value&&$prev&&($prev.attr('for')==id)&&($prev.hasClass('invisible'))){$target.val($prev.text());}
else if(id=='healthIssueInput'&&value.length<3){$target.val($prev.text());}}
$target.removeClass('focused');}).keyup(function(event){if(event.keyCode==13){var $fieldset=$(this).closest('fieldset');if($fieldset.hasClass('locationFieldset')||$fieldset.hasClass('fullAddressFieldset')){_this.startButtonClicked.call(_this,event);}else if($fieldset.hasClass('requiredFieldset')){if(_this.validation.validate()){_this.formReloadTriggered.call(_this);}}else if($fieldset.hasClass('optionalFieldset')){_this.submitButtonClicked.call(_this);}}});var requiredFieldset=this.getContainer('requiredFieldset');requiredFieldset.find('select').unbind('change').change(function(event){var $target=$(event.target);if($target.val()&&$target.hasClass(_this.validationErrorClass)){_this.validation.clearValidationError($target.attr('id'));}
_this.formReloadTriggered.call(_this);});var prefixInputElement=this.inputElements.get('PrefixInput');var productInputElement=this.inputElements.get('ProductInput');if(productInputElement){var prefixInput=prefixInputElement.getElement().find('#prefixInput');var prefixLabel=prefixInput.prev().text();var productSelect=productInputElement.getElement().find('#productInput');prefixInput.unbind('keyup').keyup(function(event){var value=prefixInput.val();if(value==prefixLabel){value='';}
if(event.keyCode==13){_this.validatePrefix(value,function(){_this.formReloadTriggered.call(_this);});}
if(event.keyCode==9){}else if(value.length>0){productInputElement.reset();if(value.length==3){_this.validatePrefix(value,function(){_this.formReloadTriggered.call(_this);});}else if(value.length>3){prefixInput.val(value.substr(0,3));}}}).change(function(){var value=prefixInput.val();if(value==prefixLabel){value='';}
_this.validatePrefix(value,function(){_this.formReloadTriggered.call(_this);});});productSelect.unbind('change').change(function(){if(productSelect.val()){prefixInputElement.reset();_this.prefixIsValid=true;_this.validation.clearValidationError('prefixInput');}
_this.formReloadTriggered.call(_this);}).keyup(function(event){if(event.keyCode==13){_this.validation.validateElement('prefixInput','submit');}});}
var specialtyInputElement=this.inputElements.getByInputId('specialtyCategoriesInput');var healthIssueInputElement=this.inputElements.getByInputId('healthIssueInput');if(healthIssueInputElement){var healthIssueInput=healthIssueInputElement.getElement().find('#healthIssueInput');var healthIssueLabel=healthIssueInput.prev().text();var healthIssueIdInput=healthIssueInputElement.getElement().find('#healthIssueIdInput');var changeHandler=function(){var value=healthIssueInput.val();if(!value||value==healthIssueLabel){healthIssueIdInput.val('');}else if(specialtyInputElement){specialtyInputElement.reset();}};healthIssueInput.keyup(changeHandler).change(changeHandler).click(function(event){healthIssueIdInput.val('');_this.validation.clearValidationError('healthIssueInput');}).blur(function(event){if(!healthIssueIdInput.val()){healthIssueInput.val(healthIssueInput.prev().text());_this.validation.clearValidationError('healthIssueInput');}});$(document).unbind('click.hideAutocomplete').bind('click.hideAutocomplete',function(){var acResults=$(document.body).children('div.ac_results');for(var i=0,j=acResults.length;i<j;i++){$(acResults[i]).css('display','none');}});}else{$(document).unbind('click.hideAutocomplete');}
if(specialtyInputElement){var specialtyInput=specialtyInputElement.getElement().find('select');specialtyInput.change(function(){if(specialtyInput.val()&&healthIssueInputElement){healthIssueInputElement.reset();}});}
if(hoverHelpArray&&(hoverHelpArray.length>0)){MVC.SystemController.createRequest().setControllerId('plugins').setActionId('hoverHelpPlugin').setParams(hoverHelpArray).send();}
if(this.elementToFocus){this.elementToFocus.focus();this.elementToFocus=null;}
if(this.isBlocked){this.unblock();}},getParameters:function(container){container=container||this.getForm();var inputs=container.find('input, select');var params={};for(var i=0,l=inputs.length;i<l;i++){var $input=$(inputs[i]);var id=$input.attr('id');var value=$input.val();if(!id){continue;}
var key=id.substring(0,id.indexOf('Input'));if($input[0].tagName.toLowerCase()=='input'){var inputType=$input[0].type;if(inputType=='checkbox'){params[key]=$input[0].checked;continue;}else if(inputType=='radio'){if($input[0].checked){params[$input.attr('name')]=value;}
continue;}
var $prev=$input.prev();if(!$prev||($prev.attr('for')!=id)||(value!=$prev.text())){params[key]=value;}else{params[key]='';}}
else if($input[0].tagName.toLowerCase()=='select'){params[key]=value;params[key+'Label']='';if(value){var options=$input.find('option');for(var o=0,ol=options.length;o<ol;o++){var $option=$(options[o]);if($option[0].selected){params[key+'Label']=$option.text();break;}}}}}
if(!params.plan){params.plan=this.view.PlanCode;}
return params;},getForm:function(){return this.getContainer('form');},healthIssueAutoCompleteInit:function(container,isRequired){var issueInput=container?container.find('#healthIssueInput'):$('#healthIssueInput');var idInput=container?container.find('#healthIssueIdInput'):$('#healthIssueIdInput');var _this=this;issueInput.autocomplete('autocomplete.aspx',{width:400,scroll:true,scrollHeight:300,max:100,multiple:true,matchContains:false,formatItem:this.formatResult,formatResult:this.formatResult,dataType:'json',cacheLength:0,matchSubset:false,parse:this.parseit,minChars:3}).result(function(event,data,formatted){issueInput.val(data.Name);idInput.val(data.Type+'|'+data.Id);if(isRequired){_this.formReloadTriggered.call(_this);}});},formatResult:function(data){if(data){if(data.Description.length>500){data.Description=data.Description.substr(0,500)+"&hellip;";}
return'<span title="'+data.Description+'" class="hiToolTip '+data.Type.toLowerCase()+'">'+data.Name+'</span>';}
return false;},parseit:function(data){var parsed=[];var hospital=EPD.Config.getProviderTypeCategory($('#providerTypeInput').val())=='hospitals';if(data){for(var i=0;i<data.length;i++){var c=data[i];var r=this.formatResult(c);if(!(hospital&&c.Type=='Condition')){parsed[parsed.length]={data:c,value:r,result:r};}}}
if((data&&data.length===0)||parsed.length===0){var $healthInput=$('#healthIssueInput');if($healthInput.length>0&&($healthInput.val()!=$healthInput.prev().text())){SearchController.FormViewScript.validation.clearValidationError('healthIssueInput');SearchController.FormViewScript.validation.forceValidationError('healthIssueInput',EPD.Strings.Search.NoMatchValidationError);$('#healthIssueIdInput').val('');}}else{SearchController.FormViewScript.validation.clearValidationError('healthIssueInput');$('#healthIssueIdInput').val('');}
MVC.SystemController.createRequest().setControllerId('plugins').setActionId('hoverHelpPluginHide').setParams($('#HealthIssueXORTopInputElement')).send();return parsed;},haveAllValues:function(fields){var params=this.view.SearchParams;for(var i=0,l=fields.length;i<l;i++){var fieldId=fields[i].Id;switch(fieldId){case'PrefixInput':case'ProductInput':if(!params.prefix&&!params.product){return false;}else if(params.prefix){return this.prefixIsValid;}
break;case'HealthIssueInput':if(!params.healthIssueId){return false;}
break;default:if(fieldId.indexOf('Input')>0){var inputId=fieldId.charAt(0).toLowerCase()+fieldId.substring(1,fieldId.indexOf('Input'));if(params[inputId]===undefined||params[inputId]===null||params[inputId]===''){return false;}}
break;}}
return true;},validatePrefix:function(prefix,callback){this.prefixIsValid=true;if(!this.validation.validateElement('prefixInput','submit')){return;}
this.block();var _this=this;var fail=function(){_this.prefixIsValid=false;_this.validation.validateElement('prefixInput','submit');_this.unblock();};MVC.SystemController.getController('search').callWS({WSObjectName:'EPD',WSMethodName:'ValidatePrefix',params:{Prefix:prefix},callback:function(_controller){if(_controller.getModel('ValidatePrefix').getData()){_this.unblock();if(callback){callback();}}else{fail();}},error:fail});},createValidationRules:function(){return{distanceInput:{tests:[{name:'required',events:['submit'],message:this.strings.DistanceValidationError},{name:'positiveInteger',events:['blur','keyup','submit'],message:this.strings.DistanceValidationError}]},zipInput:{tests:[{name:'location',events:['submit'],additionalArgs:['cityInput','stateInput'],message:this.strings.LocationValidationError},{name:'zipCode',events:['blur, submit'],message:this.strings.ZipValidationError},{name:'number',events:['keyup'],message:this.strings.ZipValidationError}]},cityInput:{tests:[{name:'noSpecialCharacters',events:['submit'],message:this.strings.SpecialCharactersValidationError}]},providerTypeInput:{tests:[{name:'required',events:['submit'],message:this.strings.ProviderTypeValidationError}]},networkInput:{tests:[{name:'required',events:['submit'],message:this.strings.NetworkValidationError}]},prefixInput:{tests:[{name:'exclusiveRequired',events:['submit'],additionalArgs:['productInput'],message:this.strings.PrefixOrProductValidationError},{name:'minLength',events:['submit'],additionalArgs:[3],message:this.strings.PrefixOrProductValidationError},{name:'prefixIsValid',events:['submit'],message:this.strings.PrefixOrProductValidationError}]},nameInput:{tests:[{name:'noSpecialCharacters',events:['submit'],message:this.strings.SpecialCharactersValidationError}]},lastNameInput:{tests:[{name:'noSpecialCharacters',events:['submit'],message:this.strings.SpecialCharactersValidationError}]},healthIssueInput:{tests:[{name:'requiredIfInFieldset',events:['submit'],additionalArgs:['requiredFieldset'],message:this.strings.HealthIssueValidationError}]}};},createCustomValidators:function(){var _this=this;return{positiveInteger:function(value){return value===''||(/^0*[1-9]+\d*$/).test(value);},noSpecialCharacters:function(value){return value===''||!(/[\~\!\@\#\$\%\^\*\(\)\_\=\+\[\]\{\}\\\|\;\:\<\>\?]/).test(value);},minLength:function(value,element,additionalArgs){return value===''||$.trim(value).length>=additionalArgs[0];},prefixIsValid:function(){return _this.prefixIsValid;},requiredIfInFieldset:function(value,element,additionalArgs){var $element=$(element);if(!($element.closest('fieldset').hasClass(additionalArgs[0]))){return true;}
value=$.trim(value);var labelValue=$element.prev().text();return(value.length>0&&value!==labelValue);}};}};MVC.SystemController.registerViewScript(SearchController,SearchController.FormViewScript);
var CompareController={id:'compare',confirmWaiting:0,confirmDone:0,defaultAction:function(params){if(!this.view.Strings){this.view.Strings=$.extend({},EPD.Strings.Results,EPD.Strings.Detail,EPD.Strings.Compare);}
if(!this.isDefaultViewScriptLoaded()){var canvas=MVC.Application.createCanvas({canvasId:'compare',viewScriptId:'canvas',attr:{className:'compare'}});this.setViewScript(canvas);this.defaultViewSciptIsLoaded();}
MVC.Application.changeBodyClass('compare');MVC.Application.hideCanvas();MVC.Application.showCanvas('compare');var blockParams={viewScript:this.getViewScript('canvas'),containerId:'content'};MVC.SystemController.createRequest().setControllerId('application').setActionId('block').setParams(blockParams).send();},sectionsSetup:function(){var providerType=this.renderOptions.ProviderType;var providerCategory=EPD.Config.getProviderTypeCategory(providerType);var isNational=this.renderOptions.IsNational;var isLocal=!isNational;var isLocalPractitioner=(isLocal&&providerCategory=='practitioners');var isAnyHospital=(providerCategory=='hospitals');var isLocalHospital=(isAnyHospital&&!isNational);var isNationalHospital=(isAnyHospital&&isNational);var tables=[{Id:'contactInformation',TitleKey:'TableContactAndGeneralTitle'}];if(isLocalHospital){tables.push({Id:'healthGradesQuality',TitleKey:'TableHealthGradesQualityTitle'});tables.push({Id:'jointCommissionQuality',TitleKey:'TableJointCommissionQualityTitle'});tables.push({Id:'costRatings',TitleKey:'TableCostRatingsTitle'});tables.push({Id:'affiliations',TitleKey:'TableAffiliatedDoctorsTitle'});tables.push({Id:'topServices',TitleKey:'TableHealthGradesTopTenTitle'});}
if(isLocal&&EPD.Config.isProviderTypeOfCategories(providerType,['groups','behavioralGroups','facilities'])){tables.push({Id:'affiliations',TitleKey:'TableAffiliatedDoctorsTitle'});}
if(!isAnyHospital&&(isNational||!EPD.Config.isProviderTypeOfCategories(providerType,['groups','behavioralGroups','facilities']))){tables.push({Id:'affiliations',TitleKey:'TableAffiliationsTitle'});}
if(isLocal||!isLocalHospital||!EPD.Config.isProviderTypeOfCategories(providerType,['practitioners','facilities','behavioralFacilities','pharmacies'])){tables.push({Id:'measuresScores',TitleKey:'TableMeasuresQualityScoresTitle'});tables.push({Id:'costRatings',TitleKey:'TableCostRatingsTitle'});tables.push({Id:'topServices',TitleKey:'TableTopServicesTitle'});tables.push({Id:'ageBreakdown',TitleKey:'TableAgeBreakdownTitle'});}
if(isLocalPractitioner){tables.push({Id:'patientReviews',TitleKey:'TablePatientReviewsTitle'});}
if(isNationalHospital){tables.push({Id:'medicalServices',TitleKey:'TableMedicalServicesTitle'});tables.push({Id:'surgicalCare',TitleKey:'TableSurgicalCareTitle'});tables.push({Id:'mortality',TitleKey:'TableMortalityTitle'});}
this.view.Tables=tables;},compareProvidersAction:function(params){this.defaultAction(params);this.renderOptions={Printing:params.PrintPage||false,ProviderType:params.ProviderType,IsNational:(params.ProviderType.indexOf('N_')!==-1)};this.sectionsSetup();var opts={WSObjectName:'EPD',WSMethodName:'CompareProviders',params:{ProviderType:params.ProviderType,ProviderIds:params.ProviderIds,Latitude:params.Latitude,Longitude:params.Longitude,MapHeight:200,MapWidth:300},callback:function(_this){_this.view.render('default',_this.renderOptions);_this.view.Results=_this.getModel('CompareProviders').getData();for(var i=0,il=_this.view.Tables.length;i<il;i++){var options=$.extend({},_this.renderOptions);var table=_this.view.Tables[i];options.TableTitleKey=table.TitleKey;_this.view.render(table.Id,options);_this.confirmWaiting++;}}};this.callWS(opts);},confirmRenderAction:function(){this.confirmDone++;if(this.confirmDone==this.confirmWaiting){if(this.renderOptions.Printing){window.print();}}}};MVC.SystemController.registerController(CompareController);
CompareController.Utilities={delegateNavLinksEvents:function(event){var $target=$(event.target);var $link=$target.closest('a');if($link.hasClass('jump')){var href=$link.attr('href');var name=href.substr(href.indexOf('#')+1);var $content=MVC.SystemController.getController('compare').getViewScript('default').getContainer('compareWrapper');var offset=$content.find('a[name='+name+']').offset().top-$content.offset().top;scrollTo(0,offset);return false;}},restructure:function(_viewScript,emptyData,options){var results=_viewScript.view.Results;var custScoreKeyName=options.ScoresKeyName;var custTemplateValueName=options.TemplateValueName;var custItemTitleKeyName=options.ItemTitleKeyName;var custDisplayCategories=options.DisplayCategories;var custDisplayCategoryAsPrefix=options.DisplayCategoryAsPrefix;var custCategoriesFilter=options.CategoriesFilter;var providersCount=results.length;var unionStructure={};var i,j,k,il,jl,kl;var resultItems;var unionKeys=[];var hashMap={};var category='';var itemsIndex=1;var exists;var itemTitle='';for(i=0;i<providersCount;i++){if(!results[i]||!results[i][custScoreKeyName]){continue;}
for(category in custCategoriesFilter){if(!results[i][custScoreKeyName][category]){continue;}
if(unionStructure[category]===undefined){unionStructure[category]=[];unionKeys.push(category);}
resultItems=results[i][custScoreKeyName][category];for(j=0,jl=resultItems.length;j<jl;j++){itemTitle=resultItems[j][custItemTitleKeyName];if(itemTitle===''){continue;}
exists=false;for(k=0,kl=unionStructure[category].length;k<kl;k++){if(unionStructure[category][k].Title==itemTitle){exists=true;}}
if(!exists){unionStructure[category].push({Index:itemsIndex,Title:itemTitle});hashMap[category+itemTitle]=itemsIndex;itemsIndex++;}}}}
for(var item in hashMap){emptyData[custTemplateValueName+hashMap[item]]=0;}
var mappedResults=[];var resultItem;var hashMapIndex;for(i=0;i<providersCount;i++){if(!results[i]||!results[i][custScoreKeyName]){continue;}
mappedResults[i]={};for(category in custCategoriesFilter){if(!results[i][custScoreKeyName][category]){continue;}
resultItems=results[i][custScoreKeyName][category];for(j=0,jl=resultItems.length;j<jl;j++){resultItem=resultItems[j];hashMapIndex=hashMap[category+resultItem[custItemTitleKeyName]];mappedResults[i][custTemplateValueName+hashMapIndex]=resultItem[custCategoriesFilter[category].ValueKey];}}}
var tableHeaderRow;if(custDisplayCategories){tableHeaderRow=_viewScript.getTemplate('headerRow').clone();}
var tableChildRow=_viewScript.getTemplate('childRow').clone();var tableContainer=_viewScript.getContainer('table');var selector;for(i=providersCount+2;i<12;i++){selector='.column'+i;if(custDisplayCategories){tableHeaderRow.find(selector).remove();}
tableChildRow.find(selector).remove();tableContainer.find(selector).remove();}
_viewScript.getContainer('table').addClass('columns'+(providersCount+1));var unionItems;var unionItemsCount;var unionItem;var rowTransform;var $tr;var zebra;var tableBody=_viewScript.getContainer('tableBody');for(i=0,il=unionKeys.length;i<il;i++){category=unionKeys[i];unionItems=unionStructure[category];unionItemsCount=unionItems.length;if(unionItemsCount===0){continue;}
if(custDisplayCategories){$tr=tableHeaderRow.clone();if(tableBody.children().length===0){$tr.addClass('first');}
tableBody.append($tr.supplant({Title:custCategoriesFilter[category].Title}));}
zebra=1;for(j=0;j<unionItemsCount;j++){unionItem=unionItems[j];rowTransform={Title:(custDisplayCategoryAsPrefix?custCategoriesFilter[category].Title+' ':'')+unionItem.Title,Counter:unionItem.Index};$tr=tableChildRow.clone();$tr.addClass((zebra%2===0)?'even':'odd');tableBody.append($tr.supplant(rowTransform));zebra++;}}
return mappedResults;},restructureNational:function(_viewScript,emptyData,options){var results=_viewScript.view.Results;var custScoreKeyName=options.ScoresKeyName;var filters=options.FiltersList;var filtersLength=filters.length;var emptyDefaultValue=options.DefaultValue;var percentSymbol=options.PercentSymbol;var providersCount=results.length;var unionStructure={};var unionKeys=[];var hashMap={};var ratings;var rating;var categoryDefault='default';var categoryTitle='';var i,j,k,l,il,jl,ll;var itemsIndex=1;var exists=false;var childTitle;var unionCategory;unionStructure[categoryDefault]={Ratings:[]};unionKeys.push(categoryDefault);for(i=0;i<providersCount;i++){if(!results[i]||!results[i][custScoreKeyName]||results[i][custScoreKeyName].length===0){continue;}
ratings=results[i][custScoreKeyName];for(j=0,jl=ratings.length;j<jl;j++){rating=ratings[j];if(j===0&&!rating.IsHeader){categoryTitle=categoryDefault;}
if(rating.IsHeader){categoryTitle=rating.DisplayName;if(unionStructure[categoryTitle]===undefined){unionStructure[categoryTitle]={Ratings:[]};unionKeys.push(categoryTitle);}}else{childTitle=rating.DisplayName;exists=false;unionCategory=unionStructure[categoryTitle].Ratings;for(l=0,ll=unionCategory.length;l<ll;l++){if(unionCategory[l].Title==childTitle){exists=true;}}
if(!exists){unionCategory.push({Index:itemsIndex,Title:childTitle});hashMap[categoryTitle+childTitle]=itemsIndex;itemsIndex++;}}}}
var key;for(var item in hashMap){key='Rating'+hashMap[item];emptyData[key]={};for(i=0;i<filtersLength;i++){emptyData[key][filters[i]]=emptyDefaultValue;}}
var mappedResults=[];var hashMapIndex;categoryTitle=categoryDefault;for(i=0;i<providersCount;i++){if(!results[i]||!results[i][custScoreKeyName]||results[i][custScoreKeyName].length===0){continue;}
mappedResults[i]={};ratings=results[i][custScoreKeyName];for(j=0,jl=ratings.length;j<jl;j++){rating=ratings[j];if(rating.IsHeader){categoryTitle=rating.DisplayName;}else{childTitle=rating.DisplayName;hashMapIndex=hashMap[categoryTitle+childTitle];mappedResults[i]['Rating'+hashMapIndex]={};for(k=0;k<filtersLength;k++){var value=rating[filters[k]];if(value!==null&&value.match(/^-?\d+\.?\d*$/)){var intValue=parseInt(value,10);if(intValue<0){value=ApplicationController.Utilities.formatErrorCode(intValue);}else{value+=percentSymbol;}}
mappedResults[i]['Rating'+hashMapIndex][filters[k]]=value||emptyDefaultValue;}}}}
var tableHeaderRow=_viewScript.getTemplate('headerRow').clone();var tableChildCategoryRow=_viewScript.getTemplate('childCategoryRow').clone();var tableContainer=_viewScript.getContainer('table').addClass('columns'+(providersCount+1));var childrenTemplates=[];for(i=0;i<filtersLength;i++){childrenTemplates[filters[i]]=_viewScript.getTemplate('child'+filters[i]+'Row').clone();}
var selector;for(i=providersCount+2;i<12;i++){selector='.column'+i;tableHeaderRow.find(selector).remove();tableChildCategoryRow.find(selector).remove();tableContainer.find(selector).remove();for(k=0;k<filtersLength;k++){childrenTemplates[filters[k]].find(selector).remove();}}
var isFirstCategory=true;var unionItems;var unionItem;var unionItemsCount;var rowTransform;var $tr;var insertAnchor=_viewScript.getContainer('tableBody');for(i=0,il=unionKeys.length;i<il;i++){categoryTitle=unionKeys[i];unionItems=unionStructure[categoryTitle].Ratings;unionItemsCount=unionItems.length;if(unionItemsCount>0&&categoryTitle!=categoryDefault){$tr=tableHeaderRow.clone();if(isFirstCategory){$tr.addClass('first');isFirstCategory=false;}
insertAnchor.append($tr.supplant({Title:categoryTitle}));}
for(j=0;j<unionItemsCount;j++){unionItem=unionItems[j];insertAnchor.append(tableChildCategoryRow.clone().supplant({Title:unionItem.Title}));rowTransform={Strings:_viewScript.view.Strings,Counter:unionItem.Index};for(k=0;k<filtersLength;k++){insertAnchor.append(childrenTemplates[filters[k]].clone().supplant(rowTransform));}}}
return mappedResults;}};
CompareController.DefaultViewScript={id:'default',load:function(){this.addContainer('compareWrapper','#wrapper');this.addTemplate('anchorLink','#anchorLink');this.addTemplate('navItem','#navItem');this.addTemplate('tableContainer','#tableContainer');},render:function(options){var Strings=this.view.Strings;var pageTitle;if(options.Printing){MVC.Application.getCanvas('compare').getContainer('content').addClass('printAllDetails');pageTitle=Strings.PrintAllDetailsTitle;}else{pageTitle=Strings['PageTitle'+options.ProviderType];}
var content=this.getContainer('compareWrapper').supplant({PageTitle:pageTitle,Strings:Strings});var navigation=content.find('#compareNav');this.addContainer('navMenu',navigation);this.addContainer('footnotes',content.find('#tablesFootnotes'));var tempNavItem=this.getTemplate('navItem');var tempAnchorLink=this.getTemplate('anchorLink');var tempTableContainer=this.getTemplate('tableContainer');var contFootnotes=this.getContainer('footnotes');var tables=this.view.Tables;for(var i=0,il=tables.length;i<il;i++){var table=tables[i];var item=tempNavItem.clone().supplant({Anchor:table.Id,Title:Strings[table.TitleKey],Strings:Strings});navigation.append(item);var anchor=tempAnchorLink.clone().supplant({Name:table.Id}).html();this.addContainer(table.Id,tempTableContainer.clone().attr('id',table.Id).append(anchor));contFootnotes.before(this.getContainer(table.Id));}
navigation.find('.separator:last').remove();content.click(CompareController.Utilities.delegateNavLinksEvents);MVC.SystemController.createResponse().bindViewScript(MVC.SystemController.getController('compare').getViewScript('canvas')).setContent('content',content).send();}};MVC.SystemController.registerViewScript(CompareController,CompareController.DefaultViewScript);
CompareController.ContactInformationViewScript={id:'contactInformation',load:function(){this.addContainer('container','#container');this.addContainer('table','#table');this.addTemplate('websiteLink','#websiteLink');this.addTemplate('listItem','#listItem');this.addTemplate('listTemplate','#listTemplate');this.addContainer('tableBody','#tableBody');this.addTemplate('rowIcon','#rowIcon');this.addTemplate('rowText','#rowText');this.addTemplate('rowList','#rowList');},render:function(options){var isNational=options.IsNational;var providerCategory=EPD.Config.getProviderTypeCategory(options.ProviderType);var isPractitioner=(providerCategory=='practitioners');var isHospital=(providerCategory=='hospitals');var strings=this.view.Strings;var results=this.view.Results;var transformations={Strings:strings};transformations.TableTitle=strings[options.TableTitleKey];var objectTransformFunction=function(d1,d2){d2.Content=d1.Name;return d2;};var objectTransformFunctionEducation=function(d1,d2){d2.Content=(d1.SchoolName===null)?'-':d1.SchoolName+' ('+d1.GradYear+')';return d2;};var scoresAnalyze=function(resultsProvider,targetProvider){targetProvider.CostScoreIcon='icon_zero_result';targetProvider.CostScoreHover='Cost0';targetProvider.QualityScoreIcon='icon_zero_result';targetProvider.QualityScoreHover=isHospital?'HealthGrades0':'Quality0';var scores=isHospital?resultsProvider.HospitalScores:resultsProvider.QualityViewScores;if(scores&&scores.CostRating&&scores.CostRating>0){targetProvider.CostScoreIcon='icon_cost'+scores.CostRating;targetProvider.CostScoreHover='Cost'+scores.CostRating;}
var qualityKey=isHospital?'HealthGradesQualityRating':'QualityRating';if(scores&&scores[qualityKey]&&scores[qualityKey]>0){var score=scores[qualityKey];targetProvider.QualityScoreIcon=(isHospital?'icon_HealthGrades':'icon_quality')+score;targetProvider.QualityScoreHover=(isHospital?'HealthGrades':'Quality')+score;}};var providersCount=results.length;var tableContainer=this.getContainer('table').addClass('columns'+(providersCount+1));var rowIcon=this.getTemplate('rowIcon');var rowText=this.getTemplate('rowText');var rowList=this.getTemplate('rowList');var selector;for(var i=providersCount+2;i<12;i++){selector='.column'+i;tableContainer.find(selector).remove();rowIcon.find(selector).remove();rowText.find(selector).remove();rowList.find(selector).remove();}
var tableBody=this.getContainer('tableBody');var iconWidth=isHospital?49:50;var iconHeight=isHospital?10:18;tableBody.append(rowText.clone().supplant({Title:strings.RowPhoneLabel,Key:'PhoneNumber'}));tableBody.append(rowText.clone().supplant({Title:strings.RowDistanceLabel,Key:'Distance'}));tableBody.append(rowText.clone().supplant({Title:strings.RowWebSiteURLLabel,Key:'WebSiteURL'}));tableBody.append(rowList.clone().supplant({Title:strings.RowSpecialtiesLabel,Key:'Specialties'}));if(isNational&&isPractitioner){tableBody.append(rowList.clone().supplant({Title:strings.RowBoardCertifiedSpecialtiesLabel,Key:'BoardCertifiedSpecialties'}));}
if(!isNational&&(isPractitioner||isHospital)){tableBody.append(rowIcon.clone().supplant({Title:strings.RowQualityLabel,Key:'Quality',Width:iconWidth,Height:iconHeight}));tableBody.append(rowIcon.clone().supplant({Title:strings.RowCostLabel,Key:'Cost',Width:20,Height:20}));}
if(!isHospital&&(providerCategory!='facilities')){tableBody.append(rowList.clone().supplant({Title:strings.RowOtherRecognitionsLabel,Key:'OtherRecognitions'}));tableBody.append(rowText.clone().supplant({Title:strings.RowNCQARecognizedLabel,Key:'IsNCQARecognized'}));}
if(isPractitioner){tableBody.append(rowText.clone().supplant({Title:strings.RowBoardCertifiedLabel,Key:'IsBoardCertified'}));tableBody.append(rowText.clone().supplant({Title:strings.RowIsAcceptingNewPatientsLabel,Key:'IsAcceptingNewPatients'}));tableBody.append(rowText.clone().supplant({Title:strings.RowGenderLabel,Key:'Gender'}));tableBody.append(rowList.clone().supplant({Title:strings.RowEducationLabel,Key:'Education'}));tableBody.append(rowList.clone().supplant({Title:strings.RowLanguagesLabel,Key:'Languages'}));tableBody.append(rowText.clone().supplant({Title:strings.RowGroupLabel,Key:'Group'}));}
if(isNational&&isHospital){tableBody.append(rowText.clone().supplant({Title:strings.RowBlueDistinctionCenterLabel,Key:'IsBlueDistinctionCenter'}));}
i=0;tableBody.find('tr').each(function(){$(this).addClass(i%2===0?'odd':'even');i++;});var provider;var recognitions;var tempList=this.getTemplate('listTemplate');var tempListItem=this.getTemplate('listItem');var emptyList=[{Name:'-'}];for(i=0;i<providersCount;i++){provider=$.extend({},results[i].Provider);recognitions=provider.OtherRecognitions;if(options.IsNational){provider.CityStateZip=provider.City+', '+provider.State+' '+provider.ZipCode;recognitions=provider.NationalOtherRecognitions;}
provider.Distance=provider.Distance+' '+strings.DistanceMilesLabel;provider.WebSiteURL=(provider.WebSiteURL===null||provider.WebSiteURL==='')?'-':this.getTemplate('websiteLink').clone().supplant({LinkURL:provider.WebSiteURL,Strings:strings}).html();provider.Specialties=ApplicationController.Utilities.formatToListSupplant((provider.Specialties&&provider.Specialties.length>0)?provider.Specialties:emptyList,tempList,tempListItem,objectTransformFunction);provider.BoardCertifiedSpecialties=ApplicationController.Utilities.formatToListSupplant((provider.BoardCertifiedSpecialties&&provider.BoardCertifiedSpecialties.length>0)?provider.BoardCertifiedSpecialties:emptyList,tempList,tempListItem,objectTransformFunction);scoresAnalyze(results[i].Provider,provider);provider.OtherRecognitions=ApplicationController.Utilities.formatToListSupplant((recognitions&&recognitions.length>0)?recognitions:emptyList,tempList,tempListItem,objectTransformFunction);provider.IsNCQARecognized=(provider.IsNCQARecognized==1)?strings.YesLabel:'-';provider.IsBoardCertified=(provider.IsBoardCertified=='Y')?strings.YesLabel:'-';provider.IsBlueDistinctionCenter=(provider.IsBlueDistinctionCenter=='Y'||provider.IsBlueDistinctionCenter=='1')?strings.CenterOfExcellenceLabel:'-';provider.IsAcceptingNewPatients=(provider.IsAcceptingNewPatients==1)?strings.YesLabel:'-';provider.Education=ApplicationController.Utilities.formatToListSupplant((provider.Education&&provider.Education.length>0)?provider.Education:[{SchoolName:null}],tempList,tempListItem,objectTransformFunctionEducation);provider.Languages=ApplicationController.Utilities.formatToListSupplant(provider.Languages?provider.Languages:emptyList,tempList,tempListItem,objectTransformFunction);provider.Group=provider.Group?provider.Group.ProviderName:'-';transformations['Provider'+(i+1)]=provider;}
var content=this.getContainer('container').supplant(transformations);var hoverHelpArray=[];content.find('.icon img').each(function(i,elem){var $image=$(elem);var stringKey=$image.attr('data-hover')+'HoverHelp';hoverHelpArray.push({Target:$image,Content:strings[stringKey]});});MVC.SystemController.createRequest().setControllerId('plugins').setActionId('hoverHelpPlugin').setParams(hoverHelpArray).send();if(options.Printing){content.find('.footnotes').removeClass('screenInvisible');}
MVC.SystemController.createResponse().bindViewScript(MVC.SystemController.getController('compare').getViewScript('default')).setContent(this.id,content,'append').addCallback(function(){MVC.SystemController.createRequest().setControllerId('compare').setActionId('confirmRender').send();}).send();}};MVC.SystemController.registerViewScript(CompareController,CompareController.ContactInformationViewScript);
CompareController.AffiliationsViewScript={id:'affiliations',load:function(){this.addContainer('container','#container');this.addContainer('table','#table');this.addContainer('tableBody','#tableBody');this.addTemplate('rowAffiliations','#rowAffiliations');this.addTemplate('listItem','#listItem');this.addTemplate('listTemplate','#listTemplate');},render:function(options){var isLocal=!options.IsNational;var providerCategory=EPD.Config.getProviderTypeCategory(options.ProviderType);var strings=this.view.Strings;var results=this.view.Results;var empty={};var transformations={Strings:strings};transformations.TableTitle=strings[options.TableTitleKey];var rows=[];if(isLocal&&(providerCategory=='hospitals'||providerCategory=='groups'||providerCategory=='behavioralGroups'||providerCategory=='facilities')){rows.push({AffKey:'Other',Title:strings.RowAffiliatedDoctorsLabel});}else{rows.push({AffKey:'Hospital',Title:strings.RowHospitalAffilitationsLabel});rows.push({AffKey:'Other',Title:strings.RowOutpatientFacilityAffiliationsLabel});}
var row;for(var i=0;i<rows.length;i++){row=this.getTemplate('rowAffiliations').clone().supplant(rows[i]).addClass((i%2===0)?'even':'odd');this.getContainer('tableBody').append(row);}
var providersCount=results.length;var tableContainer=this.getContainer('table');for(var c=providersCount+2;c<12;c++){tableContainer.find('.column'+c).remove();}
tableContainer.addClass('columns'+(providersCount+1));var affiliationTransform=function(d1,d2){d2.Content=d1.Name;return d2;};var provider;var tempList=this.getTemplate('listTemplate');var tempListItem=this.getTemplate('listItem');for(var i=0;i<providersCount;i++){provider=$.extend({},empty,results[i].Provider);if(provider.Affiliations&&provider.Affiliations.length>0){var aff;provider.HospitalAffiliations=[];provider.OtherAffiliations=[];for(var j=0,jl=provider.Affiliations.length;j<jl;j++){aff=provider.Affiliations[j];if(aff.Name!=''){if(aff.AffiliationType=='H'){provider.HospitalAffiliations.push(aff);}else{provider.OtherAffiliations.push(aff);}}}}
provider.HospitalAffiliations=ApplicationController.Utilities.formatToListSupplant(provider.HospitalAffiliations,tempList,tempListItem,affiliationTransform)||'-';provider.OtherAffiliations=ApplicationController.Utilities.formatToListSupplant(provider.OtherAffiliations,tempList,tempListItem,affiliationTransform)||'-';transformations['Provider'+(i+1)]=provider;}
var content=this.getContainer('container');MVC.SystemController.createResponse().bindViewScript(MVC.SystemController.getController('compare').getViewScript('default')).setContent(this.id,content.supplant(transformations),'append').addCallback(function(){MVC.SystemController.createRequest().setControllerId('compare').setActionId('confirmRender').send();}).send();}};MVC.SystemController.registerViewScript(CompareController,CompareController.AffiliationsViewScript);
CompareController.MeasuresScoresViewScript={id:'measuresScores',load:function(){this.addContainer('container','#container');this.addContainer('table','#table');this.addContainer('tableBody','#tableBody');this.addTemplate('headerRow','#headerRow');this.addTemplate('childRow','#childRow');this.addTemplate('childCategoryRow','#childCategoryRow');},render:function(options){var strings=this.view.Strings;var results=this.view.Results;var empty={ProviderName:''};var providersCount=results.length;var unionStructure={};var unionKeys=[];var hashMap={};var scoresCategories;var scoresCategory;var children;var child;var categoryTitle;var i,j,k,l,il,jl,kl,ll;var itemsIndex=1;var exists=false;var childTitle;var unionCategory;for(i=0;i<providersCount;i++){if(!results[i]||!results[i].Scores||!results[i].Scores.QualityDetail||results[i].Scores.QualityDetail.length===0){continue;}
scoresCategories=results[i].Scores.QualityDetail;for(j=0,jl=scoresCategories.length;j<jl;j++){scoresCategory=scoresCategories[j];categoryTitle=scoresCategory.Header;if(unionStructure[categoryTitle]===undefined){unionStructure[categoryTitle]={Level:scoresCategory.Level||0,Ratings:[]};unionKeys.push(categoryTitle);}
children=scoresCategory.Children;if(children===null){continue;}
for(k=0,kl=children.length;k<kl;k++){child=children[k];childTitle=child.MeasureDescription;exists=false;unionCategory=unionStructure[categoryTitle].Ratings;for(l=0,ll=unionCategory.length;l<ll;l++){if(unionCategory[l].Title==childTitle){exists=true;}}
if(!exists){unionCategory.push({Index:itemsIndex,Title:childTitle,Level:child.Level||0});hashMap[categoryTitle+childTitle]=itemsIndex;itemsIndex++;}}}}
for(var item in hashMap){empty['Rating'+hashMap[item]]=0;}
var mappedResults=[];var hashMapIndex;for(i=0;i<providersCount;i++){if(!results[i]||!results[i].Scores||!results[i].Scores.QualityDetail||results[i].Scores.QualityDetail.length===0){continue;}
mappedResults[i]={};scoresCategories=results[i].Scores.QualityDetail;for(j=0,jl=scoresCategories.length;j<jl;j++){scoresCategory=scoresCategories[j];children=scoresCategory.Children;if(children===null){continue;}
for(k=0,kl=children.length;k<kl;k++){child=children[k];hashMapIndex=hashMap[scoresCategory.Header+child.MeasureDescription];var rating=child.GroupRating;if(options.ProviderType=='H000'){if(rating===1||rating===2){rating=1;}else if(rating===3||rating===4){rating=2;}else{rating=3;}}
mappedResults[i]['Rating'+hashMapIndex]=rating;}}}
var tableHeaderRow=this.getTemplate('headerRow').clone();var tableChildCategoryRow=this.getTemplate('childCategoryRow').clone();var tableChildRow=this.getTemplate('childRow').clone();var tableContainer=this.getContainer('table');var selector;for(i=providersCount+2;i<12;i++){selector='.column'+i;tableHeaderRow.find(selector).remove();tableChildCategoryRow.find(selector).remove();tableChildRow.find(selector).remove();tableContainer.find(selector).remove();}
this.getContainer('table').addClass('columns'+(providersCount+1));var isFirstCategory=true;var isLeadingData=false;var unionItems;var unionItem;var unionItemsCount;var rowTransform;var $tr;var zebra;var insertAnchor=this.getContainer('tableBody');for(i=0,il=unionKeys.length;i<il;i++){categoryTitle=unionKeys[i];isLeadingData=(categoryTitle.Level===0);unionItems=unionStructure[categoryTitle].Ratings;unionItemsCount=unionItems.length;if(!isLeadingData&&unionItemsCount>0){$tr=tableHeaderRow.clone();if(isFirstCategory){$tr.addClass('first');isFirstCategory=false;}
insertAnchor.append($tr.supplant({Title:categoryTitle}));}
zebra=1;for(j=0;j<unionItemsCount;j++){unionItem=unionItems[j];rowTransform={Title:unionItem.Title,Counter:unionItem.Index};if(unionItem.Level===2){$tr=tableChildCategoryRow.clone();}else{$tr=tableChildRow.clone();}
if(isLeadingData){$tr.removeClass('child');if(zebra==1){zebra=2;}}
$tr.addClass((zebra%2===0)?'even':'odd');zebra++;insertAnchor.append($tr.supplant(rowTransform));}}
var provider;var transformations={Strings:strings};transformations.TableTitle=strings[options.TableTitleKey];for(i=0;i<providersCount;i++){provider=$.extend({},empty,results[i].Provider,mappedResults[i]);transformations['Provider'+(i+1)]=provider;}
var content=this.getContainer('container').supplant(transformations);var hoverHelpArray=[];content.find('.icon img').each(function(i,elem){var $image=$(this);var val=parseInt($image.attr('data-value'),10);var iconName=(val===0)?'zero_result':'quality'+val;$image.attr('src','/images/icon_'+iconName+'.png');hoverHelpArray.push({Target:$image,Content:strings['Quality'+val+'HoverHelp']});});MVC.SystemController.createRequest().setControllerId('plugins').setActionId('hoverHelpPlugin').setParams(hoverHelpArray).send();if(options.Printing){content.find('.footnotes').removeClass('screenInvisible');}
MVC.SystemController.createResponse().bindViewScript(MVC.SystemController.getController('compare').getViewScript('default')).setContent(this.id,content,'append').addCallback(function(){MVC.SystemController.createRequest().setControllerId('compare').setActionId('confirmRender').send();}).send();}};MVC.SystemController.registerViewScript(CompareController,CompareController.MeasuresScoresViewScript);
CompareController.CostRatingsViewScript={id:'costRatings',load:function(){this.addContainer('container','#container');this.addContainer('table','#table');this.addContainer('tableBody','#tableBody');this.addTemplate('headerRow','#headerRow');this.addTemplate('childRow','#childRow');},render:function(options){var strings=this.view.Strings;var results=this.view.Results;var empty={ProviderName:''};var mapOptions;if(options.ProviderType==='H000'){mapOptions={ScoresKeyName:'HosptialScores',TemplateValueName:'Rating',ItemTitleKeyName:'ProcedureOrCondition',DisplayCategories:false,DisplayCategoryAsPrefix:false,CategoriesFilter:{HosptialCostDetail:{ValueKey:'CostRating',Title:strings.ProceduresCategoryTitle}}};}else{mapOptions={ScoresKeyName:'Scores',TemplateValueName:'Rating',ItemTitleKeyName:'Name',DisplayCategories:true,DisplayCategoryAsPrefix:false,CategoriesFilter:{ProceduresScores:{ValueKey:'CostScore',Title:strings.ProceduresCategoryTitle},SurgeriesScores:{ValueKey:'CostScore',Title:strings.SurgeriesCategoryTitle}}};}
var mappedResults=CompareController.Utilities.restructure(this,empty,mapOptions);var provider;var transformations={Strings:strings};transformations.TableTitle=strings[options.TableTitleKey];for(var i=0,il=results.length;i<il;i++){provider=$.extend({},empty,results[i].Provider,mappedResults[i]);transformations['Provider'+(i+1)]=provider;}
var content=this.getContainer('container').supplant(transformations);var hoverHelpArray=[];content.find('.icon img').each(function(i,elem){var $image=$(this);var val=parseInt($image.attr('data-value'),10);var iconName=(val===0)?'zero_result':'cost'+val;$image.attr('src','/images/icon_'+iconName+'.png');hoverHelpArray.push({Target:$image,Content:strings['Cost'+val+'HoverHelp']});});MVC.SystemController.createRequest().setControllerId('plugins').setActionId('hoverHelpPlugin').setParams(hoverHelpArray).send();if(options.Printing){content.find('.footnotes').removeClass('screenInvisible');}
MVC.SystemController.createResponse().bindViewScript(MVC.SystemController.getController('compare').getViewScript('default')).setContent(this.id,content,'append').addCallback(function(){MVC.SystemController.createRequest().setControllerId('compare').setActionId('confirmRender').send();}).send();}};MVC.SystemController.registerViewScript(CompareController,CompareController.CostRatingsViewScript);
CompareController.TopServicesViewScript={id:'topServices',load:function(){this.addContainer('container','#container');this.addContainer('table','#table');this.addContainer('tableBody','#tableBody');this.addTemplate('headerRow','#headerRow');this.addTemplate('childRow','#childRow');this.addTemplate('childRowNames','#childRowNames');},render:function(options){var strings=this.view.Strings;var results=this.view.Results;var providersCount=results.length;var empty={ProviderName:''};var mappedResults=[];if(options.ProviderType!=='H000'){var mapOptions={ScoresKeyName:'Scores',TemplateValueName:'ServiceScore',ItemTitleKeyName:'Name',DisplayCategories:true,DisplayCategoryAsPrefix:false,CategoriesFilter:{ProceduresCases:{ValueKey:'AverageAnnualCases',Title:strings.ProceduresCategoryTitle},SurgeriesCases:{ValueKey:'AverageAnnualCases',Title:strings.SurgeriesCategoryTitle}}};mappedResults=CompareController.Utilities.restructure(this,empty,mapOptions);}else{var i,j,jl;for(i=1;i<=10;i++){this.getContainer('tableBody').append(this.getTemplate('childRowNames').clone().supplant({Counter:i}));}
var topTen;for(i=0;i<providersCount;i++){topTen=results[i].HosptialScores.TopTenProcedures;mappedResults[i]={};if(topTen){for(j=0,jl=topTen.length;j<jl;j++){mappedResults[i]['TopName'+(j+1)]=topTen[j].ProcedureDescription;}}}
var tableContainer=this.getContainer('table');for(i=providersCount+2;i<12;i++){tableContainer.find('.column'+i).remove();}
tableContainer.addClass('columns'+(providersCount+1));}
var provider;var transformations={Strings:strings};transformations.TableTitle=strings[options.TableTitleKey];for(var i=0,il=providersCount;i<il;i++){provider=$.extend({},empty,results[i].Provider,mappedResults[i]);transformations['Provider'+(i+1)]=provider;}
var content=this.getContainer('container');MVC.SystemController.createResponse().bindViewScript(MVC.SystemController.getController('compare').getViewScript('default')).setContent(this.id,content.supplant(transformations),'append').addCallback(function(){MVC.SystemController.createRequest().setControllerId('compare').setActionId('confirmRender').send();}).send();}};MVC.SystemController.registerViewScript(CompareController,CompareController.TopServicesViewScript);
CompareController.AgeBreakdownViewScript={id:'ageBreakdown',load:function(){this.addContainer('container','#container');this.addContainer('table','#table');this.addContainer('tableBody','#tableBody');this.addTemplate('childRow','#childRow');},render:function(options){var strings=this.view.Strings;var results=this.view.Results;var empty={ProviderName:''};var mapOptions={ScoresKeyName:'Scores',TemplateValueName:'Value',ItemTitleKeyName:'AgeGroup',DisplayCategories:false,DisplayCategoryAsPrefix:true,CategoriesFilter:{Male:{ValueKey:'Male',Title:strings.MaleCategoryTitle},Female:{ValueKey:'Female',Title:strings.FemaleCategoryTitle}}};var mappedResults=CompareController.Utilities.restructure(this,empty,mapOptions);var provider;var transformations={Strings:strings,Percent:'%'};transformations.TableTitle=strings[options.TableTitleKey];for(var i=0,il=results.length;i<il;i++){provider=$.extend({},empty,results[i].Provider,mappedResults[i]);transformations['Provider'+(i+1)]=provider;}
var content=this.getContainer('container');MVC.SystemController.createResponse().bindViewScript(MVC.SystemController.getController('compare').getViewScript('default')).setContent(this.id,content.supplant(transformations),'append').addCallback(function(){MVC.SystemController.createRequest().setControllerId('compare').setActionId('confirmRender').send();}).send();}};MVC.SystemController.registerViewScript(CompareController,CompareController.AgeBreakdownViewScript);
CompareController.PatientReviewsViewScript={id:'patientReviews',load:function(){this.addContainer('container','#container');this.addContainer('table','#table');this.addTemplate('headerRow','#headerRow');this.addTemplate('childRow','#childRow');this.addContainer('insertAnchor','#insertAnchor');this.addTemplate('listItem','#listItem');this.addTemplate('listTemplate','#listTemplate');},render:function(options){var strings=this.view.Strings;var results=this.view.Results;var empty={ProviderName:'',WrittenReview:''};var objectTransformFunction=function(d1,d2){d2.Content=d1.ReviewerName+' '+strings.OnLabel+' '+d1.SurveyCompleted+' : '+d1.Comments;return d2;};var providersCount=results.length;var leadingDataCategory='#pred#';var unionStructure={};var unionKeys=[];var hashMap={};var resultItems;var resultItem;var itemTitle;var itemLevel;var actualCategory;var i,j,k,il,jl,kl;unionStructure[leadingDataCategory]=[];unionKeys.push(leadingDataCategory);var itemsIndex=1;var exists=false;for(i=0;i<providersCount;i++){if(!results[i]||!results[i].PatientReview||!results[i].PatientReview.Questions||results[i].PatientReview.Questions.length===0){continue;}
resultItems=results[i].PatientReview.Questions;for(j=0,jl=resultItems.length;j<jl;j++){resultItem=resultItems[j];itemTitle=resultItem.QuestionText;itemLevel=resultItem.Level;if(itemLevel===0){actualCategory=leadingDataCategory;itemLevel=2;}
if(itemLevel==1){if(unionStructure[itemTitle]===undefined){unionStructure[itemTitle]=[];unionKeys.push(itemTitle);}
actualCategory=itemTitle;}
if(itemLevel==2){exists=false;for(k=0,kl=unionStructure[actualCategory].length;k<kl;k++){if(unionStructure[actualCategory][k].Title==itemTitle){exists=true;}}
if(!exists){unionStructure[actualCategory].push({Index:itemsIndex,Title:itemTitle});hashMap[actualCategory+itemTitle]=itemsIndex;itemsIndex++;}}}}
for(var item in hashMap){empty['Rating'+hashMap[item]]=0;}
var mappedResults=[];var hashMapIndex;for(i=0;i<providersCount;i++){if(!results[i]||!results[i].PatientReview||!results[i].PatientReview.Questions||results[i].PatientReview.Questions.length===0){continue;}
mappedResults[i]={};resultItems=results[i].PatientReview.Questions;for(j=0,jl=resultItems.length;j<jl;j++){resultItem=resultItems[j];itemTitle=resultItem.QuestionText;itemLevel=resultItem.Level;if(itemLevel==1){actualCategory=itemTitle;}else if(itemLevel===0){actualCategory=leadingDataCategory;itemLevel=2;}
if(itemLevel==2){hashMapIndex=hashMap[actualCategory+itemTitle];mappedResults[i]['Rating'+hashMapIndex]=resultItem.Rating;}}}
var tableHeaderRow=this.getTemplate('headerRow').clone();var tableChildRow=this.getTemplate('childRow').clone();var tableContainer=this.getContainer('table');var selector;for(i=providersCount+2;i<12;i++){selector='.column'+i;tableHeaderRow.find(selector).remove();tableChildRow.find(selector).remove();tableContainer.find(selector).remove();}
this.getContainer('table').addClass('columns'+(providersCount+1));var isFirstCategory=true;var isLeadingData=false;var unionItems;var unionItem;var unionItemsCount;var rowTransform;var $tr;var zebra;var insertAnchor=this.getContainer('insertAnchor');for(i=0,il=unionKeys.length;i<il;i++){actualCategory=unionKeys[i];isLeadingData=(actualCategory===leadingDataCategory);unionItems=unionStructure[actualCategory];unionItemsCount=unionItems.length;if(!isLeadingData&&unionItemsCount>0){$tr=tableHeaderRow.clone();if(isFirstCategory){$tr.addClass('first');isFirstCategory=false;}
insertAnchor.before($tr.supplant({Title:actualCategory}));}
zebra=1;for(j=0;j<unionItemsCount;j++){unionItem=unionItems[j];rowTransform={Title:unionItem.Title,Counter:unionItem.Index};$tr=tableChildRow.clone();if(isLeadingData){$tr.removeClass('child');if(zebra==1){zebra=2;}}
$tr.addClass((zebra%2===0)?'even':'odd');zebra++;insertAnchor.before($tr.supplant(rowTransform));}}
var provider;var transformations={Strings:strings};transformations.TableTitle=strings[options.TableTitleKey];for(i=0;i<providersCount;i++){provider=$.extend({},empty,results[i].Provider,mappedResults[i]);if(results[i].PatientReview&&results[i].PatientReview.Reviews&&results[i].PatientReview.Reviews.length!==0){provider.WrittenReview=ApplicationController.Utilities.formatToListSupplant(results[i].PatientReview.Reviews,this.getTemplate('listTemplate').clone(),this.getTemplate('listItem').clone(),objectTransformFunction);}
transformations['Provider'+(i+1)]=provider;}
var content=this.getContainer('container').supplant(transformations);var hoverHelpArray=[];content.find('.icon img').each(function(i,elem){var $image=$(this);var val=parseInt($image.attr('data-value'),10);var iconName=(val===0)?'zero_result':'satisfaction'+val;$image.attr('src','/images/icon_'+iconName+'.png');hoverHelpArray.push({Target:$image,Content:strings['Satisfaction'+val+'HoverHelp']});});MVC.SystemController.createRequest().setControllerId('plugins').setActionId('hoverHelpPlugin').setParams(hoverHelpArray).send();if(options.Printing){content.find('.footnotes').removeClass('screenInvisible');}
MVC.SystemController.createResponse().bindViewScript(MVC.SystemController.getController('compare').getViewScript('default')).setContent(this.id,content,'append').addCallback(function(){MVC.SystemController.createRequest().setControllerId('compare').setActionId('confirmRender').send();}).send();}};MVC.SystemController.registerViewScript(CompareController,CompareController.PatientReviewsViewScript);
CompareController.JointCommissionQualityViewScript={id:'jointCommissionQuality',load:function(){this.addContainer('container','#container');this.addContainer('table','#table');this.addContainer('tableBody','#tableBody');this.addTemplate('headerRow','#headerRow');this.addTemplate('childCategoryRow','#childCategoryRow');this.addTemplate('childNationRow','#childNationRow');this.addTemplate('childStateRow','#childStateRow');},render:function(options){var strings=this.view.Strings;var results=this.view.Results;var empty={ProviderName:''};var providersCount=results.length;var unionStructure={};var unionKeys=[];var hashMap={};var scoresCategories;var scoresCategory;var children;var child;var categoryTitle;var i,j,k,l,il,jl,kl,ll;var itemsIndex=1;var exists=false;var childTitle;var unionCategory;for(i=0;i<providersCount;i++){if(!results[i]||!results[i].HosptialScores||!results[i].HosptialScores.JCAHODetailQuality||results[i].HosptialScores.JCAHODetailQuality.length===0){continue;}
scoresCategories=results[i].HosptialScores.JCAHODetailQuality;for(j=0,jl=scoresCategories.length;j<jl;j++){scoresCategory=scoresCategories[j];categoryTitle=(scoresCategory.Header2Description=='')?scoresCategory.Header1Description:scoresCategory.Header2Description;if(unionStructure[categoryTitle]===undefined){unionStructure[categoryTitle]={Ratings:[]};unionKeys.push(categoryTitle);}
children=scoresCategory.Children;if(children===null){continue;}
for(k=0,kl=children.length;k<kl;k++){child=children[k];childTitle=child.MeasureName;exists=false;unionCategory=unionStructure[categoryTitle].Ratings;for(l=0,ll=unionCategory.length;l<ll;l++){if(unionCategory[l].Title==childTitle){exists=true;}}
if(!exists){unionCategory.push({Index:itemsIndex,Title:childTitle});hashMap[categoryTitle+childTitle]=itemsIndex;itemsIndex++;}}}}
for(var item in hashMap){empty['Rating'+hashMap[item]]={Nationwide:'',Statewide:''};}
var mappedResults=[];var hashMapIndex;for(i=0;i<providersCount;i++){if(!results[i]||!results[i].HosptialScores||!results[i].HosptialScores.JCAHODetailQuality||results[i].HosptialScores.JCAHODetailQuality.length===0){continue;}
mappedResults[i]={};scoresCategories=results[i].HosptialScores.JCAHODetailQuality;for(j=0,jl=scoresCategories.length;j<jl;j++){scoresCategory=scoresCategories[j];children=scoresCategory.Children;if(children===null){continue;}
for(k=0,kl=children.length;k<kl;k++){child=children[k];hashMapIndex=hashMap[((scoresCategory.Header2Description=='')?scoresCategory.Header1Description:scoresCategory.Header2Description)+child.MeasureName];mappedResults[i]['Rating'+hashMapIndex]={Nationwide:child.NationwideSymbol,Statewide:child.StatewideSymbol};}}}
var tableHeaderRow=this.getTemplate('headerRow').clone();var tableChildCategoryRow=this.getTemplate('childCategoryRow').clone();var tableChildNationRow=this.getTemplate('childNationRow').clone();var tableChildStateRow=this.getTemplate('childStateRow').clone();var tableContainer=this.getContainer('table');var selector;for(i=providersCount+2;i<12;i++){selector='.column'+i;tableHeaderRow.find(selector).remove();tableChildCategoryRow.find(selector).remove();tableChildNationRow.find(selector).remove();tableChildStateRow.find(selector).remove();tableContainer.find(selector).remove();}
this.getContainer('table').addClass('columns'+(providersCount+1));var isFirstCategory=true;var unionItems;var unionItem;var unionItemsCount;var rowTransform;var $tr;var insertAnchor=this.getContainer('tableBody');var counter;for(i=0,il=unionKeys.length;i<il;i++){categoryTitle=unionKeys[i];unionItems=unionStructure[categoryTitle].Ratings;unionItemsCount=unionItems.length;if(unionItemsCount>0){$tr=tableHeaderRow.clone();if(isFirstCategory){$tr.addClass('first');isFirstCategory=false;}
insertAnchor.append($tr.supplant({Title:categoryTitle}));}
for(j=0;j<unionItemsCount;j++){unionItem=unionItems[j];insertAnchor.append(tableChildCategoryRow.clone().supplant({Title:unionItem.Title}));counter=unionItem.Index;rowTransform={Strings:strings,Counter:counter};insertAnchor.append(tableChildNationRow.clone().supplant(rowTransform));insertAnchor.append(tableChildStateRow.clone().supplant(rowTransform));}}
var provider;var transformations={Strings:strings};transformations.TableTitle=strings[options.TableTitleKey];for(i=0;i<providersCount;i++){provider=$.extend({},empty,results[i].Provider,mappedResults[i]);transformations['Provider'+(i+1)]=provider;}
var content=this.getContainer('container').supplant(transformations);var hoverHelpArray=[];content.find('.icon img').each(function(i,elem){var $image=$(this);var val=$image.attr('data-value');var iconSuffix=(val=='')?'ND':val;$image.attr('src','/images/icon_JointCommission'+iconSuffix+'.png');hoverHelpArray.push({Target:$image,Content:strings['JointCommission'+iconSuffix+'HoverHelp']});});MVC.SystemController.createRequest().setControllerId('plugins').setActionId('hoverHelpPlugin').setParams(hoverHelpArray).send();if(options.Printing){content.find('.footnotes').removeClass('screenInvisible');}
MVC.SystemController.createResponse().bindViewScript(MVC.SystemController.getController('compare').getViewScript('default')).setContent(this.id,content,'append').addCallback(function(){MVC.SystemController.createRequest().setControllerId('compare').setActionId('confirmRender').send();}).send();}};MVC.SystemController.registerViewScript(CompareController,CompareController.JointCommissionQualityViewScript);
CompareController.HealthGradesQualityViewScript={id:'healthGradesQuality',load:function(){this.addContainer('container','#container');this.addContainer('table','#table');this.addContainer('tableBody','#tableBody');this.addTemplate('overallScoreRow','#overallScoreRow');this.addTemplate('headerRow','#headerRow');this.addTemplate('childCategoryRow','#childCategoryRow');this.addTemplate('childRatingRow','#childRatingRow');this.addTemplate('childSHospitalRow','#childSHospitalRow');this.addTemplate('childSDischargeRow','#childSDischargeRow');this.addTemplate('childComplicationsRow','#childComplicationsRow');this.addTemplate('childCasesRow','#childCasesRow');this.addTemplate('childStayRow','#childStayRow');},render:function(options){var strings=this.view.Strings;var results=this.view.Results;var empty={ProviderName:''};var providersCount=results.length;var unionStructure={};var unionKeys=[];var hashMap={};var scoresCategories;var scoresCategory;var children;var child;var categoryTitle;var i,j,k,l,il,jl,kl,ll;var itemsIndex=1;var exists=false;var childTitle;var unionCategory;for(i=0;i<providersCount;i++){if(!results[i]||!results[i].HosptialScores||!results[i].HosptialScores.HospitalDetailQuality||results[i].HosptialScores.HospitalDetailQuality.length===0){continue;}
scoresCategories=results[i].HosptialScores.HospitalDetailQuality;for(j=0,jl=scoresCategories.length;j<jl;j++){scoresCategory=scoresCategories[j];categoryTitle=scoresCategory.Header;if(unionStructure[categoryTitle]===undefined){unionStructure[categoryTitle]={Ratings:[]};unionKeys.push(categoryTitle);}
children=scoresCategory.Children;if(children===null){continue;}
for(k=0,kl=children.length;k<kl;k++){child=children[k];childTitle=child.ProcedureDescription;exists=false;unionCategory=unionStructure[categoryTitle].Ratings;for(l=0,ll=unionCategory.length;l<ll;l++){if(unionCategory[l].Title==childTitle){exists=true;}}
if(!exists){unionCategory.push({Index:itemsIndex,Title:childTitle});hashMap[categoryTitle+childTitle]=itemsIndex;itemsIndex++;}}}}
for(var item in hashMap){empty['Rating'+hashMap[item]]={Rating:0,SurvivalHospital:0,SurvivalDischarge:0,Complications:0,NumberOfCases:0,LengthOfStay:0};}
var mappedResults=[];var hashMapIndex;for(i=0;i<providersCount;i++){if(!results[i]||!results[i].HosptialScores||!results[i].HosptialScores.HospitalDetailQuality||results[i].HosptialScores.HospitalDetailQuality.length===0){continue;}
mappedResults[i]={};scoresCategories=results[i].HosptialScores.HospitalDetailQuality;for(j=0,jl=scoresCategories.length;j<jl;j++){scoresCategory=scoresCategories[j];children=scoresCategory.Children;if(children===null){continue;}
for(k=0,kl=children.length;k<kl;k++){child=children[k];hashMapIndex=hashMap[scoresCategory.Header+child.ProcedureDescription];mappedResults[i]['Rating'+hashMapIndex]={Rating:child.Rating,SurvivalHospital:child.SurvivalInHospital,SurvivalDischarge:child.SurvivalAfterDischarge,Complications:child.Complications,NumberOfCases:child.NumofCases,LengthOfStay:child.AvgLengthOfStay};}}}
var tableOverallScoreRow=this.getTemplate('overallScoreRow').clone();var tableHeaderRow=this.getTemplate('headerRow').clone();var tableChildCategoryRow=this.getTemplate('childCategoryRow').clone();var tableChildRatingRow=this.getTemplate('childRatingRow').clone();var tableChildSHospitalRow=this.getTemplate('childSHospitalRow').clone();var tableChildSDischargeRow=this.getTemplate('childSDischargeRow').clone();var tableChildComplicationsRow=this.getTemplate('childComplicationsRow').clone();var tableChildCasesRow=this.getTemplate('childCasesRow').clone();var tableChildStayRow=this.getTemplate('childStayRow').clone();var tableContainer=this.getContainer('table');var selector;for(i=providersCount+2;i<12;i++){selector='.column'+i;tableOverallScoreRow.find(selector).remove();tableHeaderRow.find(selector).remove();tableChildCategoryRow.find(selector).remove();tableChildRatingRow.find(selector).remove();tableChildSHospitalRow.find(selector).remove();tableChildSDischargeRow.find(selector).remove();tableChildComplicationsRow.find(selector).remove();tableChildCasesRow.find(selector).remove();tableChildStayRow.find(selector).remove();tableContainer.find(selector).remove();}
this.getContainer('table').addClass('columns'+(providersCount+1));var isFirstCategory=true;var unionItems;var unionItem;var unionItemsCount;var rowTransform;var $tr;var insertAnchor=this.getContainer('tableBody');var counter;insertAnchor.append(tableOverallScoreRow);for(i=0,il=unionKeys.length;i<il;i++){categoryTitle=unionKeys[i];unionItems=unionStructure[categoryTitle].Ratings;unionItemsCount=unionItems.length;if(unionItemsCount>0){$tr=tableHeaderRow.clone();if(isFirstCategory){$tr.addClass('first');isFirstCategory=false;}
insertAnchor.append($tr.supplant({Title:categoryTitle}));}
for(j=0;j<unionItemsCount;j++){unionItem=unionItems[j];insertAnchor.append(tableChildCategoryRow.clone().supplant({Title:unionItem.Title}));counter=unionItem.Index;rowTransform={Strings:strings,Counter:counter};insertAnchor.append(tableChildRatingRow.clone().supplant(rowTransform));insertAnchor.append(tableChildSHospitalRow.clone().supplant(rowTransform));insertAnchor.append(tableChildSDischargeRow.clone().supplant(rowTransform));insertAnchor.append(tableChildComplicationsRow.clone().supplant(rowTransform));insertAnchor.append(tableChildCasesRow.clone().supplant(rowTransform));insertAnchor.append(tableChildStayRow.clone().supplant(rowTransform));}}
var provider;var transformations={Strings:strings};transformations.TableTitle=strings[options.TableTitleKey];for(i=0;i<providersCount;i++){provider=$.extend({},empty,results[i].Provider,mappedResults[i]);transformations['Provider'+(i+1)]=provider;}
var content=this.getContainer('container').supplant(transformations);var hoverHelpArray=[];content.find('.icon img').each(function(i,elem){var $image=$(this);var val=parseInt($image.attr('data-value'),10);var iconName=(val===0)?'zero_result':'HealthGrades'+val;$image.attr('src','/images/icon_'+iconName+'.png');hoverHelpArray.push({Target:$image,Content:strings['HealthGrades'+val+'HoverHelp']});});MVC.SystemController.createRequest().setControllerId('plugins').setActionId('hoverHelpPlugin').setParams(hoverHelpArray).send();if(options.Printing){content.find('.footnotes').removeClass('screenInvisible');}
MVC.SystemController.createResponse().bindViewScript(MVC.SystemController.getController('compare').getViewScript('default')).setContent(this.id,content,'append').addCallback(function(){MVC.SystemController.createRequest().setControllerId('compare').setActionId('confirmRender').send();}).send();}};MVC.SystemController.registerViewScript(CompareController,CompareController.HealthGradesQualityViewScript);
CompareController.SurgicalCareViewScript={id:'surgicalCare',load:function(){this.addContainer('container','#container');this.addContainer('table','#table');this.addContainer('tableBody','#tableBody');this.addTemplate('headerRow','#headerRow');this.addTemplate('childCategoryRow','#childCategoryRow');this.addTemplate('childHospitalScoreRow','#childHospitalScoreRow');this.addTemplate('childStateAverageRow','#childStateAverageRow');this.addTemplate('childNationalAverageRow','#childNationalAverageRow');this.addTemplate('childTop10PercentileRow','#childTop10PercentileRow');},render:function(options){var strings=this.view.Strings;var results=this.view.Results;var empty={ProviderName:''};var restructureOptions={ScoresKeyName:'SurgicalCare',FiltersList:['HospitalScore','NationalAverage','StateAverage','Top10Percentile'],DefaultValue:'-',PercentSymbol:'%'};var mappedResults=CompareController.Utilities.restructureNational(this,empty,restructureOptions);var provider;var transformations={Strings:strings};transformations.TableTitle=strings[options.TableTitleKey];for(var i=0,il=results.length;i<il;i++){provider=$.extend({},empty,results[i].Provider,mappedResults[i]);transformations['Provider'+(i+1)]=provider;}
var content=this.getContainer('container');MVC.SystemController.createResponse().bindViewScript(MVC.SystemController.getController('compare').getViewScript('default')).setContent(this.id,content.supplant(transformations),'append').addCallback(function(){MVC.SystemController.createRequest().setControllerId('compare').setActionId('confirmRender').send();}).send();}};MVC.SystemController.registerViewScript(CompareController,CompareController.SurgicalCareViewScript);
CompareController.MedicalServicesViewScript={id:'medicalServices',load:function(){this.addContainer('container','#container');this.addContainer('table','#table');this.addContainer('tableBody','#tableBody');this.addTemplate('headerRow','#headerRow');this.addTemplate('childCategoryRow','#childCategoryRow');this.addTemplate('childHospitalScoreRow','#childHospitalScoreRow');this.addTemplate('childStateAverageRow','#childStateAverageRow');this.addTemplate('childNationalAverageRow','#childNationalAverageRow');this.addTemplate('childTop10PercentileRow','#childTop10PercentileRow');},render:function(options){var strings=this.view.Strings;var results=this.view.Results;var empty={ProviderName:''};var restructureOptions={ScoresKeyName:'MedicalServices',FiltersList:['HospitalScore','NationalAverage','StateAverage','Top10Percentile'],DefaultValue:'-',PercentSymbol:'%'};var mappedResults=CompareController.Utilities.restructureNational(this,empty,restructureOptions);var provider;var transformations={Strings:strings};transformations.TableTitle=strings[options.TableTitleKey];for(var i=0,il=results.length;i<il;i++){provider=$.extend({},empty,results[i].Provider,mappedResults[i]);transformations['Provider'+(i+1)]=provider;}
var content=this.getContainer('container');MVC.SystemController.createResponse().bindViewScript(MVC.SystemController.getController('compare').getViewScript('default')).setContent(this.id,content.supplant(transformations),'append').addCallback(function(){MVC.SystemController.createRequest().setControllerId('compare').setActionId('confirmRender').send();}).send();}};MVC.SystemController.registerViewScript(CompareController,CompareController.MedicalServicesViewScript);
CompareController.MortalityViewScript={id:'mortality',load:function(){this.addContainer('container','#container');this.addContainer('table','#table');this.addContainer('tableBody','#tableBody');this.addTemplate('headerRow','#headerRow');this.addTemplate('childCategoryRow','#childCategoryRow');this.addTemplate('childHospitalScoreRow','#childHospitalScoreRow');},render:function(options){var strings=this.view.Strings;var results=this.view.Results;var empty={ProviderName:''};var restructureOptions={ScoresKeyName:'MortalityAndReadmissions',FiltersList:['HospitalScore'],DefaultValue:'-',PercentSymbol:'%'};var mappedResults=CompareController.Utilities.restructureNational(this,empty,restructureOptions);var provider;var transformations={Strings:strings};transformations.TableTitle=strings[options.TableTitleKey];for(var i=0,il=results.length;i<il;i++){provider=$.extend({},empty,results[i].Provider,mappedResults[i]);transformations['Provider'+(i+1)]=provider;}
var content=this.getContainer('container');MVC.SystemController.createResponse().bindViewScript(MVC.SystemController.getController('compare').getViewScript('default')).setContent(this.id,content.supplant(transformations),'append').addCallback(function(){MVC.SystemController.createRequest().setControllerId('compare').setActionId('confirmRender').send();}).send();}};MVC.SystemController.registerViewScript(CompareController,CompareController.MortalityViewScript);
CompareController.PatientExperienceViewScript={id:'patientExperience',load:function(){this.addContainer('container','#container');this.addContainer('table','#table');this.addContainer('tableBody','#tableBody');this.addTemplate('headerRow','#headerRow');this.addTemplate('childCategoryRow','#childCategoryRow');this.addTemplate('childHospitalScoreRow','#childHospitalScoreRow');this.addTemplate('childNationalAverageRow','#childNationalAverageRow');this.addTemplate('childStateAverageRow','#childStateAverageRow');},render:function(options){var results=this.view.Results;var empty={ProviderName:''};var restructureOptions={ScoresKeyName:'PatientExperience',FiltersList:['HospitalScore','NationalAverage','StateAverage'],DefaultValue:'-',PercentSymbol:'%'};var mappedResults=CompareController.Utilities.restructureNational(this,empty,restructureOptions);var provider;var transformations={Strings:this.view.Strings};for(var i=0,il=results.length;i<il;i++){provider=$.extend({},empty,results[i].Provider,mappedResults[i]);transformations['Provider'+(i+1)]=provider;}
var content=this.getContainer('container');MVC.SystemController.createResponse().bindViewScript(MVC.SystemController.getController('compare').getViewScript('default')).setContent(this.id,content.supplant(transformations),'append').addCallback(function(){MVC.SystemController.createRequest().setControllerId('compare').setActionId('confirmRender').send();}).send();}};MVC.SystemController.registerViewScript(CompareController,CompareController.PatientExperienceViewScript);
var PluginsController={id:'plugins',defaultAction:function(params){},modalPluginAction:function(options){var defaults={'Content':'','DefaultModalControls':true,'CustomModalClass':null,'CloseSelectorClass':'.closeModal','Callback':null};var params=$.extend(params,defaults,options);this.view.modalParams=params;this.view.render('modal');return this;},hoverHelpPluginAction:function(hoverObjectsArray){this.view.render('hoverHelp',hoverObjectsArray);},hoverHelpPluginHideAction:function(target){this.getViewScript('hoverHelp').hide(target);},hoverHelpPluginShowAction:function(data){this.getViewScript('hoverHelp').show(data);}};MVC.SystemController.registerController(PluginsController);
PluginsController.ModalPluginViewScript={id:'modal',load:function(){this.addTemplate('modal','#mvModal');this.addTemplate('modalBlocking','#mvModalBlocking');},render:function(){var params=this.view.modalParams;var Strings={Application:{}};Strings.Application.CloseLabel='close';var $modal=this.getTemplate('modal').supplant(Strings).clone();$modal.find('.body').html(params.Content);if(params.DefaultModalControls===false){$modal.find('.modalControls').remove();}else{$modal.find('.modalControls .closeButton').removeClass('closeButton').addClass(params.CloseSelectorClass.substr(1));}
$modal.modal({background:this.getTemplate('modalBlocking').clone()});if(params.CustomModalClass){$modal.addClass(params.CustomModalClass);}
if(params.CloseSelectorClass!=''){$modal.find(params.CloseSelectorClass).unbind('click').bind('click',function(){$modal.removeModal();});}
if(params.Callback!==null){(params.Callback)(MVC.Application.body.find('.mvModalContent'),(params.DefaultModalControls!==false)?MVC.Application.body.find('.modalControls'):null);}}};MVC.SystemController.registerViewScript(PluginsController,PluginsController.ModalPluginViewScript);
PluginsController.HoverHelpPluginViewScript={id:'hoverHelp',hoversById:{},load:function(){this.addTemplate('hoverHelp','#mvHoverHelp');},render:function(hovers){var hover,$hoverHelp,$hoverHelpSpan;for(var i=0,l=hovers.length;i<l;i++){hover=hovers[i];hover.Target=hover.Target.jQuery?hover.Target:$(hover.Target);$hoverHelp=this.getTemplate('hoverHelp').clone();$hoverHelpSpan=$hoverHelp.find('span').html(hover.Content);$hoverHelp.hoverHelp(hover.Target);this.trackHover(hover,$hoverHelp);}},show:function(hover){var $hoverHelp=this.getTemplate('hoverHelp').clone();var $hoverHelpSpan=$hoverHelp.find('span');$hoverHelpSpan.html(hover.Content);$hoverHelp.hoverHelp(hover.Target);hover.Target.trigger('mouseenter');this.trackHover(hover,$hoverHelp);},hide:function(target){var targetId='';if(target){targetId=target.attr('id')||'noTargetId';}
if(targetId){this.hideById(targetId);}else{this.hideAll();}},hideById:function(id){if(this.hoversById[id]){for(var i=0,j=this.hoversById[id].length;i<j;i++){this.hoversById[id][i].hideHoverHelp();}}},hideAll:function(){for(var id in this.hoversById){this.hideById(id);}},trackHover:function(hover,$hoverHelp){var id=hover.Target.attr('id')||'noTargetId';if(!this.hoversById[id]){this.hoversById[id]=[$hoverHelp];}else{this.hoversById[id].push($hoverHelp);}}};MVC.SystemController.registerViewScript(PluginsController,PluginsController.HoverHelpPluginViewScript);
var MyListController={id:'mylist',currentProviderType:null,defaultAction:function(params){if(params.providerType){this.currentProviderType=params.providerType;}
if(!this.view.Strings){this.view.Strings=$.extend({},EPD.Strings.Results,EPD.Strings.Mylist);}
if(!this.view.ResultsManager){this.view.ResultsManager=$.extend({},MV.ResultsManager);this.view.ResultsManager.init({resultsPerPage:parseInt(this.view.Strings.ConfigResultsPerPage,10),resultsPerPageOptions:this.view.Strings.ConfigResultsPerPageOptions.split(/\s*,\s*/)});}
if(!this.isDefaultViewScriptLoaded()){this.defaultViewSciptIsLoaded();var canvas=MVC.Application.createCanvas({canvasId:'mylist',viewScriptId:'canvas',attr:{className:'mylist detail'}});this.setViewScript(canvas);MVC.SystemController.createRequest().setControllerId('features').setActionId('showFeatures').send();this.view.render('default');this.view.render('title');}
MVC.SystemController.createRequest().setControllerId('application').setActionId('addBreadCrumb').setParams({addType:'final',breadCrumbs:[{Link:this.view.Strings.MyListBreadCrumb,Location:location.href}]}).send();MVC.Application.hideCanvas();MV.EventsManager.fireEvent('resizeParentIFrame');MVC.Application.showCanvas('mylist');if(this.getViewScript('default').isRendered()){var blockParams={viewScript:this.getViewScript('default'),containerId:'detailContent'};MVC.SystemController.createRequest().setControllerId('application').setActionId('block').setParams(blockParams).send();}
var render=function(_this){MVC.SystemController.createRequest().setControllerId('navigation').setActionId('myList').setParams({canvasViewScript:_this.getViewScript('canvas'),navigationData:_this.view.Navigation||[],controllerId:_this.id}).send();_this.view.render('list');};var opts={WSObjectName:'EPD',WSMethodName:'ShowMyProviders',params:{ProviderType:params.providerType||''},callback:function(_this){var model=_this.getModel('ShowMyProviders');_this.view.ResultsManager.setResults(model.findInData('Providers'));_this.view.Navigation=model.findInData('Navigation');if(!params.providerType&&_this.view.Navigation){_this.view.Navigation[0].Elements[0].CssClass='selected';}
render(_this);},error:function(_this){_this.view.ResultsManager.setResults([]);_this.view.Navigation=[];render(_this);}};this.callWS(opts);},addAction:function(params){var opts={WSObjectName:'EPD',WSMethodName:'AddMyProvider',params:{AddString:params.addprovider},callback:function(_this){var data=_this.getModel('AddMyProvider').getData();if(data&&data.Status&&data.Status===true){MV.EventsManager.fireEvent('resultAddedToList',[params,data]);}}};this.callWS(opts);},deleteAction:function(params,callback){var _controller=this;var opts={WSObjectName:'EPD',WSMethodName:'DeleteMyProvider',params:{DeleteString:params.deleteprovider},callback:function(_this){var data=_this.getModel('DeleteMyProvider').getData();if(data&&data.Status&&data.Status===true){if(_controller.view.ResultsManager){_controller.view.ResultsManager.removeResultByKey('CompositeKey',params.deleteprovider);}
if(callback){callback();}
MV.EventsManager.fireEvent('resultDeletedFromList',[params,data]);}}};this.callWS(opts);},deleteInListAction:function(params){var _this=this;this.deleteAction(params,function(){if(_this.view.ResultsManager.getNumberOfResults()===0){_this.defaultAction({providerType:_this.currentProviderType});}else{$row=params.row;if($row.length>0){$row.fadeOut('normal',function(){$row.remove();_this.view.render('list');});}else{_this.view.render('list');}}});}};MVC.SystemController.registerController(MyListController);
MyListController.DefaultViewScript={id:'default',load:function(){this.addContainer('section','#section');this.addContainer('detailTitle','#detailTitle');this.addContainer('detailContent','#detailContent');},render:function(){MVC.SystemController.createResponse().bindViewScript(MVC.SystemController.getController('mylist').getViewScript('canvas')).setContent('content',this.getContainer('section')).send();MVC.SystemController.createRequest().setControllerId('application').setActionId('block').setParams({viewScript:this,containerId:'detailContent'}).send();}};MVC.SystemController.registerViewScript(MyListController,MyListController.DefaultViewScript);
MyListController.TitleViewScript={id:'title',load:function(){this.addTemplate('title','#title');},render:function(){MVC.SystemController.createResponse().bindViewScript(MVC.SystemController.getController('mylist').getViewScript('default')).setContent('detailTitle',this.getTemplate('title').clone().supplant(this.view.Strings)).send();}};MVC.SystemController.registerViewScript(MyListController,MyListController.TitleViewScript);
MyListController.ListViewScript={id:'list',groups:[],columns:[],$table:{},currentPageNumber:null,load:function(){this.addContainer('list','#list').supplant(this.view.Strings);this.addContainer('resultTableContainer','#providerResultContainer');this.addContainer('paginationNavigation','.paginationNavigation');this.addContainer('paginationTally','.paginationTally');this.addTemplate('paginationTemplate','#paginationTemplate').supplant(this.view.Strings);this.addTemplate('paginationTallyTemplate','#paginationTallyTemplate').supplant(this.view.Strings);this.addContainer('compare','.compare');this.addTemplate('dataRowTemplate','#dataRowTemplate').supplant(this.view.Strings);this.addContainer('resultsTableTemplate','#resultsTableTemplate').supplant(this.view.Strings);this.addTemplate('listItem','#listItem');this.addTemplate('listTemplate','#listTemplate');this.addTemplate('errorTemplate','#errorTemplate');},render:function(){if(this.view.ResultsManager.getNumberOfResults()===0){var $error=this.getTemplate('errorTemplate').clone(true);$error.find('span').text(this.view.Strings.ZeroResultsMessage);MVC.SystemController.createResponse().bindViewScript(MVC.SystemController.getController('mylist').getViewScript('default')).setContent('detailContent',$error).send();return;}
this.$table=this.getContainer('resultsTableTemplate');this.clearCompare();this.view.ResultsManager.sortResults([{element:'BoardCertifiedSpecialties.0.Name Specialties.0.Name'},{element:'ProviderName'}]);this.processResultsTally();var resultsData=this.processPagination();this.loadResults(resultsData,true);this.getContainer('resultTableContainer').html(this.$table);var _this=this;MVC.SystemController.createResponse().bindViewScript(MVC.SystemController.getController('mylist').getViewScript('default')).setContent('detailContent',this.getContainer('list')).addCallback(function(){_this.bindEvents();MV.EventsManager.fireEvent('resizeParentIFrame');}).send();},bindEvents:function(){var _this=this;this.getContainer('paginationNavigation').unbind('mousedown').mousedown(function(event){_this.paginationLinkClicked.call(_this,event);});this.getContainer('paginationTally').find('.itemsPerPage').unbind('change').change(function(event){_this.itemsPerPageChanged.call(_this,event);});var $compare=this.getContainer('compare');$compare.find('#moveToTopLink').unbind('click').click(function(event){_this.moveCompareToTopLinkClicked.call(_this,event);});$compare.find('#clearLink').unbind('click').click(function(event){_this.clearCompare.call(_this);});var compareLink=$compare.find('#compareLink').unbind('click').click(function(event){_this.compareLinkClicked.call(_this,event);});this.$table.find('tbody').unbind('click').click(function(event){ResultsController.DelegateListEvents(event,_this.getContainer('list'));});var hoverHelpArray=[{'Target':compareLink,'Content':this.view.Strings.CompareHoverHelp}];MVC.SystemController.createRequest().setControllerId('plugins').setActionId('hoverHelpPlugin').setParams(hoverHelpArray).send();},loadResults:function(results,isInitialRender){var result;var providers=results;var $tbody=this.$table.find('tbody').empty();var $tr=this.getTemplate('dataRowTemplate').clone(true);var compareArray=this.getContainer('compare').find('#compareProviderIds').val().split(';');var compareHash={};for(var i=0,l=compareArray.length;i<l;i++){compareHash[compareArray[i]]=true;}
var listTransformFunction=function(d1,d2){d2.Content=d1.Name;d2.CssClass=d1.CssClass||'';return d2;};for(var i=0,l=providers.length;i<l;i++){result=providers[i];var compositeArr=result.CompositeKey.split('|');if(compositeArr.length>6){this.ProviderType=compositeArr[7];}
else{this.ProviderType=compositeArr[2];}
var detailRequest=MVC.SystemController.createRequest().setControllerId('detail').setActionId('profile').setParams({'healthIssue':'','healthIssueId':'','plan':'','providerType':this.ProviderType,'compositeKey':result.CompositeKey,'Latitude':result.Latitude,'Longitude':result.Longitude,'reload':'true'});var detailURL=detailRequest.serialize();var transformations={CompositeKey:result.CompositeKey,ProviderName:result.ProviderName,AddressLine1:result.AddressLine1,AddressLine2:result.AddressLine3?result.AddressLine2+' '+result.AddressLine3:result.AddressLine2,City:result.City,State:result.State,ZipCode:result.ZipCode,MapURL:result.MapURL,PhoneNumber:result.PhoneNumber,DetailURL:detailURL.replace(' ',''),Specialties:''};if(result.BoardCertifiedSpecialties&&result.BoardCertifiedSpecialties.length>0){transformations.Specialties=MV.Util.DOMCreation.formatToParentChildrenSupplant(result.BoardCertifiedSpecialties,this.getTemplate('listTemplate'),this.getTemplate('listItem'),listTransformFunction);}else if(result.Specialties&&result.Specialties.length>0){transformations.Specialties=MV.Util.DOMCreation.formatToParentChildrenSupplant(result.Specialties,this.getTemplate('listTemplate'),this.getTemplate('listItem'),listTransformFunction);}
var $trow=$tr.clone(true);if(!transformations.AddressLine1){$trow.find('.address1Item').addClass('invisible');}
if(!transformations.AddressLine2){$trow.find('.address2Item').addClass('invisible');}
if(!transformations.PhoneNumber){$trow.find('.phoneItem').addClass('invisible');}
if(result.AddedToList){$trow.find('.delete').toggleClass('invisible');}
else{$trow.find('.add').toggleClass('invisible');}
$tbody.append($trow.addClass(i%2===0?'odd':'even').supplant(transformations));if(compareHash[result.CompositeKey]){$trow.find('.compareBox')[0].checked=true;}}
if(!isInitialRender){this.bindEvents();}},paginationLinkClicked:function(event){event.preventDefault();var mvData=$(event.target).closest('a').attr('data-mv');if(mvData){var mvArr=mvData.split('-');if(mvArr[0]=='page'&&mvArr[1]){var resultsData=this.processPagination(mvArr[1]);this.loadResults(resultsData);}}},itemsPerPageChanged:function(event){var oldItemsPerPage=this.view.ResultsManager.getNumberOfResultsPerPage();var newItemsPerPage=$(event.target).val();if(newItemsPerPage){this.view.ResultsManager.setNumberOfResultsPerPage(parseInt(newItemsPerPage,10),10);this.updateResultsTally(newItemsPerPage);var resultsData=this.processPagination();this.loadResults(resultsData);}},compareLinkClicked:function(event){event.preventDefault();var ids=this.getContainer('compare').find('#compareProviderIds').val();ids=ids.substring(0,ids.lastIndexOf(';'));var resultsController=MVC.SystemController.getController('results');var Latitude=0.0;var Longitude=0.0;if(resultsController&&resultsController.view&&resultsController.view.SearchParams&&resultsController.view.SearchParams.Latitude&&resultsController.view.SearchParams.Longitude){Latitude=resultsController.view.SearchParams.Latitude;Longitude=resultsController.view.SearchParams.Longitude;}
if(ids){var type=ids.split(';');type=type[0].split('|');if(type.length>7&&type[7]){type=type[7];}
else{type=type[2];}
var param={ProviderType:type,ProviderIds:ids,IsMyList:false,Latitude:Latitude,Longitude:Longitude};var request=MVC.SystemController.createRequest();request.setControllerId('compare');request.setActionId('compareProviders');request.setParams(param);var url=window.location.pathname+request.serialize();window.open(url,'','toolbar=yes,location=yes,directories=yes,status=yes,menubar=yes,scrollbars=yes,resizable=yes');}},moveCompareToTopLinkClicked:function(event){event.preventDefault();var compareIds=this.getContainer('compare').find('#compareProviderIds').val().split(';');if(compareIds.length){this.view.ResultsManager.moveValuesToTop('CompositeKey',compareIds);var resultsData=this.processPagination();this.loadResults(resultsData);}},clearCompare:function(){$.cookie('listCompareCounter',0);var $compare=this.getContainer('compare');$compare.find('#compareCount').text(0);$compare.find('#compareProviderIds').val('');var $checkboxes=this.$table.find('.compareBox');for(var i=0,l=$checkboxes.length;i<l;i++){$checkboxes[i].checked=false;}},processPagination:function(page){page=parseInt(page||1,10);this.currentPageNumber=page;var resultsData=this.view.ResultsManager.getResultsForPage(page);var numResults=resultsData.length;var totalResults=this.view.ResultsManager.getNumberOfResults();var pageRanges=this.view.ResultsManager.getPageRanges();var range=pageRanges[page-1];var $navigation=this.getContainer('paginationNavigation').empty();var numPages=pageRanges.length;if(numPages<=1){return resultsData;}
var $template=this.getTemplate('paginationTemplate').clone(true);var $previousLink=$template.find('.previousLink');var $nextLink=$template.find('.nextLink');var $nextItem=$template.find('.nextItem');var $pageItem=$template.find('.pageItem').remove();var $gapItem=$template.find('.gapItem').remove();if(page==1){$previousLink.addClass('inactive');}else{$previousLink.attr('data-mv','page-'+(page-1));}
var maxPages=6;var endPages=maxPages-2;for(var i=1;i<=numPages;i++){var $item;if((numPages>maxPages)&&(i>1)&&(i<=(numPages-endPages))&&(page>=endPages)&&(i<page)){$item=$gapItem.clone(true);if(page<=numPages-endPages){i=page-1;}else{i=numPages-endPages;}}
else if((numPages>maxPages)&&(i<numPages)&&(i>endPages)&&(page<=(numPages-endPages))&&(i>page+1)){$item=$gapItem.clone(true);i=numPages-1;}
else{$item=$pageItem.clone(true);$item.find('.pageNumber').text(i);if(i==page){$item.find('.pageLink').addClass('current');}else{$item.find('.pageLink').attr('data-mv','page-'+i);}}
$nextItem.before($item);}
if(page==numPages){$nextLink.addClass('inactive');}else{$nextLink.attr('data-mv','page-'+(page+1));}
$navigation.append($template.html());return resultsData;},processResultsTally:function(){var $template=this.getTemplate('paginationTallyTemplate').clone(true);var $select=$template.find('.itemsPerPage').empty().addClass('invisible');var $selectLabel=$template.find('.itemsPerPageLabel').addClass('invisible');$template.find('.totalRows').text(this.view.ResultsManager.getNumberOfResults());var resultsPerPage=this.view.ResultsManager.getNumberOfResultsPerPage();var options=this.view.ResultsManager.getNumberOfResultsPerPageOptions();if(options.length>0){for(var i=0,l=options.length;i<l;i++){var value=options[i];var $option=$('<option />').attr('value',value).text(value);$select.append($option);}
$select.removeClass('invisible');$selectLabel.removeClass('invisible');}
var _this=this;this.getContainer('paginationTally').each(function(){var $tally=$(this).empty();if(options.length>0){$tally.empty().append($template.clone(true).html());$tally.find('.itemsPerPage').val(resultsPerPage);}});},updateResultsTally:function(value){this.getContainer('paginationTally').each(function(){$(this).find('.itemsPerPage').val(value);});}};MVC.SystemController.registerViewScript(MyListController,MyListController.ListViewScript);
HomeController.DefaultViewScript={id:'default',load:function(){},render:function(){}};MVC.SystemController.registerViewScript(HomeController,HomeController.DefaultViewScript);
HomeController.WelcomeViewScript={id:'welcome',load:function(){this.addContainer('section','#section').supplant(EPD.Strings.Home);this.addContainer('disclaimer','#sectionDisclaimer');},render:function(){MVC.SystemController.createRequest().setControllerId('application').setActionId('showDisclaimer').setParams({place:'welcome'}).send();MVC.SystemController.createResponse().bindViewScript(MVC.SystemController.getController('home').getViewScript('canvas')).setContent('content',this.getContainer('section')).send();}};MVC.SystemController.registerViewScript(HomeController,HomeController.WelcomeViewScript);
var FeaturesController={id:'features',pdfForSearchURL:null,printAllDetailUrl:null,init:function(){MV.EventsManager.subscribeToEvent('locationHashChanged',this.locationHashChanged);MV.EventsManager.subscribeToEvent('resultAddedToList',this.resultAddedToList);MV.EventsManager.subscribeToEvent('resultDeletedFromList',this.resultDeletedFromList);},locationHashChanged:function(hash){var _this=MVC.SystemController.getController('features');_this.updatePrintAction({Hash:hash});_this.updateLearnMoreAction();},resultAddedToList:function(params,data){MVC.SystemController.getController('features').updateMyListAction({operation:'add',count:data.Count});},resultDeletedFromList:function(params,data){MVC.SystemController.getController('features').updateMyListAction({operation:'delete',count:data.Count});},defaultAction:function(params){this.pdfForSearchURL=null;this.printAllDetailUrl=null;this.view.Strings=EPD.Strings.Features;},showFeaturesAction:function(params){this.defaultAction(params);this.view.FeaturesLinks=[{Title:this.view.Strings.LearnMoreTitleDefault,Id:'learnMoreFeature',Location:'javascript:void(0);'},{Title:this.view.Strings.FAQLabel,Id:'faqFeature',Location:'javascript:void(0);'},{Title:this.view.Strings.PrintLabel,Id:'printFeature',Location:'javascript:void(0);'},{Title:this.view.Strings.MyListLabel,Id:'myListFeature',Location:'javascript:void(0);'}];this.view.render('features');},updateLearnMoreAction:function(params){var currentParams=MVC.SystemController.getRequest().getParams();var providerType=currentParams.providerType;if(providerType===undefined||this.view.Strings['LearnMoreTitle'+providerType]===undefined){providerType='Default';}
var modalParams={title:this.view.Strings['LearnMoreTitle'+providerType],content:this.view.Strings['LearnMoreContent'+providerType]};this.view.learnMoreParams=modalParams;this.getViewScript('features').getContainer('featuresLinks').find('#learnMoreFeature span').text(modalParams.title);},learnMoreAction:function(params){var modalParams={Content:this.view.learnMoreParams.content,Callback:function($content,$controls){MV.Util.Events.jumpLinks($content,$content.find('.body'));}};MVC.SystemController.createRequest().setControllerId('plugins').setActionId('modalPlugin').setParams(modalParams).setRequestInAddress(false).send();},faqAction:function(params){var modalParams={Content:this.view.Strings.FAQContent,Callback:function($content,$controls){MV.Util.Events.jumpLinks($content,$content.find('.body'));}};MVC.SystemController.createRequest().setControllerId('plugins').setActionId('modalPlugin').setParams(modalParams).setRequestInAddress(false).send();},updatePrintAction:function(params){if(params&&params.Hash){var page=params.Hash.substring(1,params.Hash.indexOf('/'));if(page==='detail'){return;}
params=null;}
this.pdfForSearchURL=null;this.printAllDetailUrl=null;var isEmpty=function(object){for(var element in object){return false;}
return true;};var _this=this;if(params&&!isEmpty(params)){if(params.pdfForSearchURL){this.pdfForSearchURL=params.pdfForSearchURL;this.getViewScript('features')._smartLoad({callback:function(){_this.getViewScript('features').getContainer('featuresLinks').find('#printFeature span').text(_this.view.Strings.PDFLabel);}});}else if(params.printAllDetailUrl){this.printAllDetailUrl=params.printAllDetailUrl;this.getViewScript('features')._smartLoad({callback:function(){_this.getViewScript('features').getContainer('featuresLinks').find('#printFeature span').text(_this.view.Strings.PrintAllDetailLabel);}});}}else{this.pdfForSearchURL=null;this.printAllDetailUrl=null;this.getViewScript('features')._smartLoad({callback:function(){_this.getViewScript('features').getContainer('featuresLinks').find('#printFeature span').text(_this.view.Strings.PrintLabel);}});}},printAction:function(params){if(this.pdfForSearchURL){window.open(this.pdfForSearchURL);}else if(this.printAllDetailUrl){window.open(''+this.printAllDetailUrl);}else{window.print();}},updateOtherToolsAction:function(params){},otherToolsAction:function(params){},updateMyListAction:function(params){if(params.operation==='render'){var opts={WSObjectName:'EPD',WSMethodName:'GetMyProvidersCount',callback:function(_this){params.count=_this.getModel('GetMyProvidersCount').getData();FeaturesController.Utilities.updateMyListLayout(params);}};this.callWS(opts);}else{FeaturesController.Utilities.updateMyListLayout(params);}}};FeaturesController.init();MVC.SystemController.registerController(FeaturesController);
FeaturesController.FeaturesViewScript={id:'features',load:function(){this.addContainer('featuresLinks','#topNavigationLinks');this.addTemplate('featuresLink','#topNavigationLink');this.addTemplate('otherToolsLink','#otherToolsLink');this.addTemplate('otherToolsMenu','#otherToolsMenu');},render:function(){var topNavigationLinksArray=this.view.FeaturesLinks||[];var otherToolsMenuArray=this.view.otherTools||[];var featuresLinks=this.getContainer('featuresLinks');featuresLinks.empty().append(MV.Util.DOMCreation.createElementsAndBindDataSupplant(topNavigationLinksArray,this.getTemplate('featuresLink')));var $featuresLinks=featuresLinks.find('#otherToolsFeature').parent();$featuresLinks.append(MV.Util.DOMCreation.formatToParentChildrenSupplant(otherToolsMenuArray,this.getTemplate('otherToolsMenu'),this.getTemplate('otherToolsLink')));$featuresLinks.dropdownMenu();var that=this;MVC.SystemController.createResponse().setContent('features',featuresLinks).addCallback(function(){that.afterRenderUpdate();}).send();},afterRenderUpdate:function(){MVC.SystemController.createRequest().setControllerId('features').setActionId('updateLearnMore').send();MVC.SystemController.createRequest().setControllerId('features').setActionId('updateMyList').setParams({operation:'render'}).send();otherToolsDropdown=this.getContainer('featuresLinks');otherToolsDropdown.click(this.delegateEvents);otherToolsDropdown.find('#otherToolsFeature').parent().click(FeaturesController.Utilities.delegateOtherToolsEvents);otherToolsDropdown.find('.dropdownMenu').dropdownMenu({rebindHoverOnly:true});var hoverHelpArray=[{'Target':this.getContainer('featuresLinks').find('#myListFeature'),'Content':this.view.Strings.MyListHoverHelp}];MVC.SystemController.createRequest().setControllerId('plugins').setActionId('hoverHelpPlugin').setParams(hoverHelpArray).send();},delegateEvents:function(event){event.preventDefault();var $target=$(event.target);var $link=$target.closest('a');var id=$link.attr('id');if(!$link||id==''){return;}
switch(id){case'learnMoreFeature':MVC.SystemController.createRequest().setControllerId('features').setActionId('learnMore').send();break;case'otherToolsFeature':break;case'faqFeature':MVC.SystemController.createRequest().setControllerId('features').setActionId('faq').send();break;case'printFeature':MVC.SystemController.createRequest().setControllerId('features').setActionId('print').send();break;case'myListFeature':MVC.SystemController.createRequest().setControllerId('mylist').setRequestInAddress(true).send();break;}
return false;}};MVC.SystemController.registerViewScript(FeaturesController,FeaturesController.FeaturesViewScript);
var GeocoderController={id:'geocoder',geocoder:null,init:function(){this.geocoder=new google.maps.Geocoder();},geocodeAddressAction:function(params){this.cleanParams(params);var address=params.street+' '+
params.city+' '+
params.county+' '+
params.state+' '+
params.zip;var _this=this;if(this.geocoder){this.geocoder.geocode({'address':address},function(results,status){if(status==google.maps.GeocoderStatus.OK&&_this.countryCheck.call(_this,results[0])){var callbackBundle={lat:results[0].geometry.location.lat(),lng:results[0].geometry.location.lng(),state:_this.getStateFromGeocode(results[0])};params.callback(callbackBundle);}else{try{var callbackBundle={lat:0,lng:0,state:''};params.callback(callbackBundle);}catch(err){MVC.Console.call('debug',"GeocoderController.geocodeAddress :: Geocode was not successful: "+status+' :: '+err);alert("Geocode was not successful.");}}});}},cleanParams:function(params){if(params.zip){params.county='';}
return params;},getCountryFromGeocode:function(data){for(var i=0,l=data.address_components.length;i<=l;i++){var c=data.address_components[i];var types=c.types.join(',');if(types.indexOf('country')>=0){return c.short_name;}}},getStateFromGeocode:function(data){var retval='';for(var i=0,l=data.address_components.length;i<=l;i++){var c=data.address_components[i];if(c&&c.types&&c.types.length){var types=c.types.join(',');if(types.indexOf('administrative_area_level_1')>=0){retval=c.short_name;}}}
return retval=='VI'?'':retval;},countryCheck:function(data){return this.getCountryFromGeocode(data)=='US'||this.getCountryFromGeocode(data)=='PR'||this.getCountryFromGeocode(data)=='VI';}};GeocoderController.init();MVC.SystemController.registerController(GeocoderController);
FeaturesController.Utilities={updateMyListLayout:function(params){var count=params.count;if(count>1&&params.operation!='render'){return;}
var linksContainer=MVC.SystemController.getController('application').getViewScript('default').getContainer('features');var $linkParent=linksContainer.find('#myListFeature').parent();if(count<1){$linkParent.removeClass('highlighted');}else{$linkParent.addClass('highlighted');}},delegateOtherToolsEvents:function(event){event.preventDefault();var $target=$(event.target);var $link=$target.closest('a');var url=$link.attr('href');var target=$link.attr('target');switch(target){case'blank':window.open(url);break;case'self':window.location(url);break;}}};
CompareController.CostRatingsHospitalViewScript={id:'costRatingsHospital',load:function(){this.addContainer('container','#container');this.addContainer('table','#table');this.addContainer('tableBody','#tableBody');this.addTemplate('headerRow','#headerRow');this.addTemplate('childRow','#childRow');},render:function(options){var strings=this.view.Strings;var results=this.view.Results;var empty={ProviderName:''};var providersCount=results.length;var unionStructure={};var unionKeys=[];var hashMap={};var scoresCategories;var scoresCategory;var categoryTitle;var i,j,l,il,jl,ll;var itemsIndex=1;var exists=false;var childTitle;var unionCategory;var itemLevel;var addIntoSubtree=false;for(i=0;i<providersCount;i++){if(!results[i]||!results[i].HosptialScores||!results[i].HosptialScores.CostsDetail||results[i].HosptialScores.CostsDetail.length===0){continue;}
scoresCategories=results[i].HosptialScores.CostsDetail;for(j=0,jl=scoresCategories.length;j<jl;j++){scoresCategory=scoresCategories[j];itemLevel=scoresCategory.Level||0;if(itemLevel==1){categoryTitle=scoresCategory.ServiceType;if(unionStructure[categoryTitle]===undefined){unionStructure[categoryTitle]={Ratings:[]};unionKeys.push(categoryTitle);}
addIntoSubtree=true;}
if(itemLevel==2||addIntoSubtree){addIntoSubtree=false;childTitle=scoresCategory.ServiceType;exists=false;unionCategory=unionStructure[categoryTitle].Ratings;for(l=0,ll=unionCategory.length;l<ll;l++){if(unionCategory[l].Title==childTitle){exists=true;}}
if(!exists){unionCategory.push({Index:itemsIndex,Title:childTitle,Level:itemLevel});hashMap[categoryTitle+childTitle]=itemsIndex;itemsIndex++;}}}}
for(var item in hashMap){empty['Rating'+hashMap[item]]=0;}
var mappedResults=[];var hashMapIndex;for(i=0;i<providersCount;i++){if(!results[i]||!results[i].HosptialScores||!results[i].HosptialScores.CostsDetail||results[i].HosptialScores.CostsDetail.length===0){continue;}
mappedResults[i]={};scoresCategories=results[i].HosptialScores.CostsDetail;for(j=0,jl=scoresCategories.length;j<jl;j++){scoresCategory=scoresCategories[j];if(scoresCategory.Level==1){categoryTitle=scoresCategory.ServiceType;}
hashMapIndex=hashMap[categoryTitle+scoresCategory.ServiceType];mappedResults[i]['Rating'+hashMapIndex]={Cost:scoresCategory.Cost||'',Level:scoresCategory.Level,Title:scoresCategory.ServiceType};}}
var tableHeaderRow=this.getTemplate('headerRow').clone();var tableChildRow=this.getTemplate('childRow').clone();var tableContainer=this.getContainer('table');var selector;for(i=providersCount+2;i<12;i++){selector='.column'+i;tableHeaderRow.find(selector).remove();tableChildRow.find(selector).remove();tableContainer.find(selector).remove();}
this.getContainer('table').addClass('columns'+(providersCount+1));var unionItems;var unionItem;var unionItemsCount;var rowTransform;var $tr;var insertAnchor=this.getContainer('tableBody');for(i=0,il=unionKeys.length;i<il;i++){categoryTitle=unionKeys[i];unionItems=unionStructure[categoryTitle].Ratings;unionItemsCount=unionItems.length;for(j=0;j<unionItemsCount;j++){unionItem=unionItems[j];if(unionItem.Level==1){$tr=tableHeaderRow;}else if(unionItem.Level==2){$tr=tableChildRow;}
$tr=$tr.clone().addClass((j%2===0)?'even':'odd');rowTransform={Counter:unionItem.Index,Title:unionItem.Title};insertAnchor.append($tr.supplant(rowTransform));}}
var provider;var transformations={Strings:strings};transformations.TableTitle=strings[options.TableTitleKey];for(i=0;i<providersCount;i++){provider=$.extend({},empty,results[i].Provider,mappedResults[i]);transformations['Provider'+(i+1)]=provider;}
var content=this.getContainer('container').supplant(transformations);var hoverHelpArray=[];content.find('.costSymbol').each(function(i,elem){var $span=$(this);var val=$span.text();if(val!=''){hoverHelpArray.push({Target:$span,Content:strings['CostRating'+val+'HoverHelp']});}});MVC.SystemController.createRequest().setControllerId('plugins').setActionId('hoverHelpPlugin').setParams(hoverHelpArray).send();if(options.Printing){content.find('.footnotes').removeClass('screenInvisible');}
MVC.SystemController.createResponse().bindViewScript(MVC.SystemController.getController('compare').getViewScript('default')).setContent(this.id,content,'append').addCallback(function(){MVC.SystemController.createRequest().setControllerId('compare').setActionId('confirmRender').send();}).send();}};MVC.SystemController.registerViewScript(CompareController,CompareController.CostRatingsHospitalViewScript);
MV.Util.namespace('MV.User');MV.User.initComplete=function(data){this.setAttribute('PlanId',$.cookie('MVClientPlan'));this.setAttribute('Referrer',$.cookie('MVReferrer'));this.setAttribute('IsSecure',$.cookie('TNAuthenticated')||'false');this.setAttribute('IsServiceMaster',data.IsServiceMaster);};
var ClientConfig={init:function(opts){window.location.hash=window.location.hash;}};$.extend(EPD.Config,ClientConfig);
var ClientApplicationController={init:function(opts){var that=this;var configCallback=function(){that.callWS({WSObjectName:'EPD',WSMethodName:'GetApplicationConfig',params:{ClientPlanId:$.cookie('MVClientPlan')},callback:function(){EPD.Config._init({data:that.getModel('GetApplicationConfig').getData(),callback:EPD.Config.init});EPD.Strings.init(opts);MV.EventsManager.subscribeToEvent('locationHashChanged',function(){var request=MVC.SystemController.getRequest();var axel=Math.random()+"";var a=axel*10000000000000;if(request.getControllerId()!=='results'){$('#Floodlight').attr('src','http://fls.doubleclick.net/activityi;src=2891578;type=bcbst679;cat=finda979;ord='+a+'?');}
else{$('#Floodlight').attr('src','http://fls.doubleclick.net/activityi;src=2891578;type=bcbst679;cat=finda808;ord='+a+'?');}});},error:function(){EPD.Strings.init(opts);}});};this.callWS({WSObjectName:'EPD',WSMethodName:'GetLoggedInUser',callback:function(){MV.User.init(that.getModel('GetLoggedInUser').getData());configCallback();},error:function(){alert('GetLoggedInUser WS error');}});MV.EventsManager.subscribeToEvent('resizeParentIFrame',this.resizeParentIFrameAction);}};MVC.SystemController.extendController(MVC.SystemController.getController('application'),ClientApplicationController);
window.Client=window.Client||{};Client.ApplicationDefaultViewScript={id:'default',render:function(){MVC.Application.body.prepend(this.getContainer('application'));$.ddroundies('.mvModalContent .wrapper','12px',true);$.ddroundies('.nav .navGroup','8px 0 0 8px',true);$.ddroundies('div.header .logo .companyName');var request=MVC.SystemController.getRequest();if(request.getControllerId()!=='compare'){$('.companyLogo').click(function(){window.location=$('li.breadCrumbLink:first a').attr('href');});}
if(MV.User.getAttribute('IsServiceMaster')){$('div.header').addClass('SM');$('div.header').find('div.body').addClass('SM');$('div.header').find('div.body').find('h1#companyName').addClass('SM');}
var oo_floating=new OOo.Ocode({floating:{}});}};MVC.SystemController.extendViewScript(MVC.SystemController.getController('application').getViewScript('default'),Client.ApplicationDefaultViewScript);
MV.Util.namespace('MV.EPD.AnalyticsSubscribers.Webtrends');MV.EPD.AnalyticsSubscribers.Webtrends.analyticsEngine=new AnalyticsEngine(Config.Analytics.Interval);MV.EPD.AnalyticsSubscribers.Webtrends.analyticsEngine.start();MV.EPD.AnalyticsSubscribers.Webtrends.commands={homePageDisplayed:function(subscriberPayload){var trans=new AnalyticsTransformations();trans.setEPDParams(subscriberPayload);trans.callWebTrendsFunction('homePageDisplayed');},goSelected:function(subscriberPayload){var trans=new AnalyticsTransformations();trans.setEPDParams(subscriberPayload);trans.callWebTrendsFunction('goSelected');},networkSelected:function(subscriberPayload){var trans=new AnalyticsTransformations();trans.setEPDParams(subscriberPayload);trans.callWebTrendsFunction('networkSelected');},providerSelected:function(subscriberPayload){var trans=new AnalyticsTransformations();trans.setEPDParams(subscriberPayload);trans.callWebTrendsFunction('providerSelected');},nationalProviderSelected:function(subscriberPayload){var trans=new AnalyticsTransformations();trans.setEPDParams(subscriberPayload);trans.callWebTrendsFunction('nationalProviderSelected');},productPrefixSelected:function(subscriberPayload){var trans=new AnalyticsTransformations();trans.setEPDParams(subscriberPayload);trans.callWebTrendsFunction('productPrefixSelected');},searchResults:function(subscriberPayload){var trans=new AnalyticsTransformations();trans.setEPDParams(subscriberPayload);trans.callWebTrendsFunction('searchResults');},doctorProfileDisplayed:function(subscriberPayload){var trans=new AnalyticsTransformations();trans.setEPDParams(subscriberPayload);trans.callWebTrendsFunction('doctorProfileDisplayed');},doctorAffiliationsDisplayed:function(subscriberPayload){var trans=new AnalyticsTransformations();trans.setEPDParams(subscriberPayload);trans.callWebTrendsFunction('doctorAffiliationsDisplayed');},doctorQualityDetailDisplayed:function(subscriberPayload){var trans=new AnalyticsTransformations();trans.setEPDParams(subscriberPayload);trans.callWebTrendsFunction('doctorQualityDetailDisplayed');},doctorCostDetailDisplayed:function(subscriberPayload){var trans=new AnalyticsTransformations();trans.setEPDParams(subscriberPayload);trans.callWebTrendsFunction('doctorCostDetailDisplayed');},doctorOfficeProfileDisplayed:function(subscriberPayload){var trans=new AnalyticsTransformations();trans.setEPDParams(subscriberPayload);trans.callWebTrendsFunction('doctorOfficeProfileDisplayed');},doctordoctorAffiliatedDoctorsDisplayed:function(subscriberPayload){var trans=new AnalyticsTransformations();trans.setEPDParams(subscriberPayload);trans.callWebTrendsFunction('doctordoctorAffiliatedDoctorsDisplayed');},hospitalProfileDisplayed:function(subscriberPayload){var trans=new AnalyticsTransformations();trans.setEPDParams(subscriberPayload);trans.callWebTrendsFunction('hospitalProfileDisplayed');},hospitalCostDetailDisplayed:function(subscriberPayload){var trans=new AnalyticsTransformations();trans.setEPDParams(subscriberPayload);trans.callWebTrendsFunction('hospitalCostDetailDisplayed');},hospitalMedicalServicesDisplayed:function(subscriberPayload){var trans=new AnalyticsTransformations();trans.setEPDParams(subscriberPayload);trans.callWebTrendsFunction('hospitalMedicalServicesDisplayed');},hospitalSurgicalCareDisplayed:function(subscriberPayload){var trans=new AnalyticsTransformations();trans.setEPDParams(subscriberPayload);trans.callWebTrendsFunction('hospitalSurgicalCareDisplayed');},hospitalMortalityReadmissionsDisplayed:function(subscriberPayload){var trans=new AnalyticsTransformations();trans.setEPDParams(subscriberPayload);trans.callWebTrendsFunction('hospitalMortalityReadmissionsDisplayed');},hospitalPatientExperienceDisplayed:function(subscriberPayload){var trans=new AnalyticsTransformations();trans.setEPDParams(subscriberPayload);trans.callWebTrendsFunction('hospitalPatientExperienceDisplayed');},groupProfileDisplayed:function(subscriberPayload){var trans=new AnalyticsTransformations();trans.setEPDParams(subscriberPayload);trans.callWebTrendsFunction('groupProfileDisplayed');},groupAffiliatedDoctorsDisplayed:function(subscriberPayload){var trans=new AnalyticsTransformations();trans.setEPDParams(subscriberPayload);trans.callWebTrendsFunction('groupAffiliatedDoctorsDisplayed');},compareProvidersDisplayed:function(subscriberPayload){var trans=new AnalyticsTransformations();trans.setEPDParams(subscriberPayload);trans.callWebTrendsFunction('compareProvidersDisplayed');},providerAdded:function(subscriberPayload){var trans=new AnalyticsTransformations();trans.setEPDParams(subscriberPayload);trans.callWebTrendsFunction('providerAdded');},moveToTop:function(subscriberPayload){var trans=new AnalyticsTransformations();trans.setEPDParams(subscriberPayload);trans.callWebTrendsFunction('moveToTop');},printToPDF:function(subscriberPayload){var trans=new AnalyticsTransformations();trans.setEPDParams(subscriberPayload);trans.callWebTrendsFunction('printToPDF');},print:function(subscriberPayload){var trans=new AnalyticsTransformations();trans.setEPDParams(subscriberPayload);trans.callWebTrendsFunction('print');},resultsSorted:function(subscriberPayload){var trans=new AnalyticsTransformations();trans.setEPDParams(subscriberPayload);trans.callWebTrendsFunction('resultsSorted');},healthIssueView:function(subscriberPayload){var trans=new AnalyticsTransformations();trans.setEPDParams(subscriberPayload);trans.callWebTrendsFunction('healthIssueView');},myListView:function(subscriberPayload){var trans=new AnalyticsTransformations();trans.setEPDParams(subscriberPayload);trans.callWebTrendsFunction('myListView');},physicianRatingInfo:function(subscriberPayload){var trans=new AnalyticsTransformations();trans.setEPDParams(subscriberPayload);trans.callWebTrendsFunction('physicianRatingInfo');},hospitalRatingInfo:function(subscriberPayload){var trans=new AnalyticsTransformations();trans.setEPDParams(subscriberPayload);trans.callWebTrendsFunction('hospitalRatingInfo');},learnMore:function(subscriberPayload){var trans=new AnalyticsTransformations();trans.setEPDParams(subscriberPayload);trans.callWebTrendsFunction('learnMore');}}
MV.EventsManager.subscribeToEvent('Analytics.home.homePageDisplayed',MV.EPD.AnalyticsSubscribers.Webtrends.commands.homePageDisplayed);MV.EventsManager.subscribeToEvent('Analytics.search.form.goSelected',MV.EPD.AnalyticsSubscribers.Webtrends.commands.goSelected);MV.EventsManager.subscribeToEvent('Analytics.search.form.networkSelected',MV.EPD.AnalyticsSubscribers.Webtrends.commands.networkSelected);MV.EventsManager.subscribeToEvent('Analytics.search.form.providerSelected',MV.EPD.AnalyticsSubscribers.Webtrends.commands.providerSelected);MV.EventsManager.subscribeToEvent('Analytics.search.form.nationalProviderSelected',MV.EPD.AnalyticsSubscribers.Webtrends.commands.nationalProviderSelected);MV.EventsManager.subscribeToEvent('Analytics.search.form.productPrefixSelected',MV.EPD.AnalyticsSubscribers.Webtrends.commands.productPrefixSelected);MV.EventsManager.subscribeToEvent('Analytics.results.list',MV.EPD.AnalyticsSubscribers.Webtrends.commands.searchResults);MV.EventsManager.subscribeToEvent('Analytics.detail.doctorProfile',MV.EPD.AnalyticsSubscribers.Webtrends.commands.doctorProfileDisplayed);MV.EventsManager.subscribeToEvent('Analytics.detail.doctorAffiliations',MV.EPD.AnalyticsSubscribers.Webtrends.commands.doctorAffiliationsDisplayed);MV.EventsManager.subscribeToEvent('Analytics.detail.doctorQualityDetail',MV.EPD.AnalyticsSubscribers.Webtrends.commands.doctorQualityDetailDisplayed);MV.EventsManager.subscribeToEvent('Analytics.detail.doctorCostDetail',MV.EPD.AnalyticsSubscribers.Webtrends.commands.doctorCostDetailDisplayed);MV.EventsManager.subscribeToEvent('Analytics.detail.doctorOfficeProfile',MV.EPD.AnalyticsSubscribers.Webtrends.commands.doctorOfficeProfileDisplayed);MV.EventsManager.subscribeToEvent('Analytics.detail.doctorAffiliatedDoctors',MV.EPD.AnalyticsSubscribers.Webtrends.commands.doctordoctorAffiliatedDoctorsDisplayed);MV.EventsManager.subscribeToEvent('Analytics.detail.hospitalProfile',MV.EPD.AnalyticsSubscribers.Webtrends.commands.hospitalProfileDisplayed);MV.EventsManager.subscribeToEvent('Analytics.detail.hospitalCostDetail',MV.EPD.AnalyticsSubscribers.Webtrends.commands.hospitalCostDetailDisplayed);MV.EventsManager.subscribeToEvent('Analytics.detail.hospitalMedicalServices',MV.EPD.AnalyticsSubscribers.Webtrends.commands.hospitalMedicalServicesDisplayed);MV.EventsManager.subscribeToEvent('Analytics.detail.hospitalSurgicalCare',MV.EPD.AnalyticsSubscribers.Webtrends.commands.hospitalSurgicalCareDisplayed);MV.EventsManager.subscribeToEvent('Analytics.detail.hospitalMortalityReadmissions',MV.EPD.AnalyticsSubscribers.Webtrends.commands.hospitalMortalityReadmissionsDisplayed);MV.EventsManager.subscribeToEvent('Analytics.detail.hospitalPatientExperience',MV.EPD.AnalyticsSubscribers.Webtrends.commands.hospitalPatientExperienceDisplayed);MV.EventsManager.subscribeToEvent('Analytics.detail.groupProfile',MV.EPD.AnalyticsSubscribers.Webtrends.commands.groupProfileDisplayed);MV.EventsManager.subscribeToEvent('Analytics.detail.groupAffiliatedDoctors',MV.EPD.AnalyticsSubscribers.Webtrends.commands.groupAffiliatedDoctorsDisplayed);MV.EventsManager.subscribeToEvent('Analytics.compare.compareProviders',MV.EPD.AnalyticsSubscribers.Webtrends.commands.compareProvidersDisplayed);MV.EventsManager.subscribeToEvent('Analytics.mylist.add.providerAdded',MV.EPD.AnalyticsSubscribers.Webtrends.commands.providerAdded);MV.EventsManager.subscribeToEvent('Analytics.result.list.moveToTop',MV.EPD.AnalyticsSubscribers.Webtrends.commands.moveToTop);MV.EventsManager.subscribeToEvent('Analytics.features.printToPDF',MV.EPD.AnalyticsSubscribers.Webtrends.commands.printToPDF);MV.EventsManager.subscribeToEvent('Analytics.features.print',MV.EPD.AnalyticsSubscribers.Webtrends.commands.print);MV.EventsManager.subscribeToEvent('Analytics.result.list.sort',MV.EPD.AnalyticsSubscribers.Webtrends.commands.resultsSorted);MV.EventsManager.subscribeToEvent('Analytics.result.healthInfo.view',MV.EPD.AnalyticsSubscribers.Webtrends.commands.healthIssueView);MV.EventsManager.subscribeToEvent('Analytics.mylist.view',MV.EPD.AnalyticsSubscribers.Webtrends.commands.myListView);MV.EventsManager.subscribeToEvent('Analytics.features.physicianRatingInfo',MV.EPD.AnalyticsSubscribers.Webtrends.commands.physicianRatingInfo);MV.EventsManager.subscribeToEvent('Analytics.features.hospitalRatingInfo',MV.EPD.AnalyticsSubscribers.Webtrends.commands.hospitalRatingInfo);MV.EventsManager.subscribeToEvent('Analytics.features.learnMore',MV.EPD.AnalyticsSubscribers.Webtrends.commands.learnMore);
function AnalyticsTransformations(){var EPDParams={};var defaultTransformObject={'DCS.dcsuri':'/epd/search/start.aspx','WT.ti':'Provider Directory - Search Start','WT.cg_n':'ba|health tools','WT.cg_s':'provider directory','DCSext.cg_ss':'search','WT.z_tl_sessionID':MV.User.getAttribute('AnalyticsId'),'WT.si_n':'ba_tl_tr_bu_provider search','WT.si_x':'1','WT.si_cs':'1'};var resetTransformObject={'DCSext.epd_network':null,'DCSext.epd_network':null,'DCSext.epd_prtype':null,'DCSext.epd_hlthiss':null,'DCSext.epd_awards':null,'DCSext.tool_srch':null,'DCSext.epd_loctype':null,'DCSext.epd_doctorID':null,'DCSext.epd_groupID':null,'DCSext.epd_hospitalID':null,'DCSext.sr_navvalue':null,'DCSext.sr_navtype':null,'DCSext.epd_groupID':null};var transformObjects={homePageDisplayed:{'WT.si_x':'1','WT.si_cs':null,'DCS.dcsuri':'/FindADoctor/Directory.aspx','WT.ti':'ba|Provider Directory Homepage','DCSext.cg_ss':'homepage'},goSelected:{'WT.si_x':'3','WT.si_cs':null,'DCS.dcsuri':'/epd/search/gobutton.aspx','WT.ti':'ba|Provider Directory-Search Go Button'},networkSelected:{'WT.si_x':'5','WT.si_cs':null,'DCS.dcsuri':'/epd/search/network/local.aspx','WT.ti':'ba|Provider Directory-Local Search Network'},providerSelected:{'WT.si_x':'7','WT.si_cs':null,'DCS.dcsuri':'/epd/search/whatlookingfor/local.aspx','WT.ti':'ba|Provider Directory-Local Search What Are You Looking For'},nationalProviderSelected:{'WT.si_x':'9','WT.si_cs':null,'DCS.dcsuri':'/epd/search/whatlookingfor/national.aspx','WT.ti':'ba|Provider Directory-National Search What Are You Looking For'},productPrefixSelected:{'WT.si_x':'11','WT.si_cs':null,'DCS.dcsuri':'/epd/search/productprefixselection/national.aspx','WT.ti':'ba|Provider Directory-National Search Product And Prefix Selection'},searchResults:{'DCS.dcsuri':'/epd/search/searchresults.aspx','WT.si_x':'13','WT.ti':'ba|Provider Directory - Search Results'},doctorProfileDisplayed:{'DCS.dcsuri':'/epd/doctor/profile.aspx','WT.ti':'ba|Provider Directory - Doctor Profile','DCSext.cg_ss':'doctor profile','WT.si_n':'ba_epd_act_doctor_profile_view'},doctorAffiliationsDisplayed:{'DCS.dcsuri':'/epd/doctor/affiliations.aspx','WT.ti':'ba|Provider Directory - Doctor Affiliations','DCSext.cg_ss':'doctor profile','WT.si_n':'ba_epd_act_doctor_affiliations_view'},doctorQualityDetailDisplayed:{'DCS.dcsuri':'/epd/doctor/qualitydetail.aspx','WT.ti':'ba|Provider Directory - Doctor Quality Detail','DCSext.cg_ss':'doctor profile','WT.si_n':'ba_epd_act_doctor_quality_view'},doctorCostDetailDisplayed:{'DCS.dcsuri':'/epd/doctor/costdetail.aspx','WT.ti':'ba|Provider Directory - Doctor Cost Detail','DCSext.cg_ss':'doctor profile','WT.si_n':'ba_epd_act_doctor_cost_view'},doctorOfficeProfileDisplayed:{'DCS.dcsuri':'/epd/group/profile.aspx','WT.ti':'ba|Provider Directory - Group Profile','DCSext.cg_ss':'group profile','WT.si_n':'ba_epd_act_group_profile_view'},doctordoctorAffiliatedDoctorsDisplayed:{'DCS.dcsuri':'/epd/group/affiliateddoctors.aspx','WT.ti':'ba|Provider Directory - Group Affiliated Doctors','DCSext.cg_ss':'group profile','WT.si_n':'ba_epd_act_group_affiliation_view'},hospitalProfileDisplayed:{'DCS.dcsuri':'/epd/hospital/profile.aspx','WT.ti':'ba|Provider Directory - Hospital Profile','DCSext.cg_ss':'hospital profile','WT.si_n':'ba_epd_act_hospital_profile_view'},hospitalCostDetailDisplayed:{'DCS.dcsuri':'/epd/hospital/cost.aspx','WT.ti':'ba|Provider Directory - Hospital Cost','DCSext.cg_ss':'hospital profile','WT.si_n':'ba_epd_act_hospital_cost_view'},hospitalMedicalServicesDisplayed:{'DCS.dcsuri':'/epd/hospital/cmsmedicalservices.aspx','WT.ti':'ba|Provider Directory - Hospital CMS Medical Services','DCSext.cg_ss':'hospital profile','WT.si_n':'ba_epd_act_hospital_services_view'},hospitalSurgicalCareDisplayed:{'DCS.dcsuri':'/epd/hospital/cmssurgicalcare.aspx','WT.ti':'ba|Provider Directory - Hospital CMS Surgical Care','DCSext.cg_ss':'hospital profile','WT.si_n':'ba_epd_act_hospital_surgicalcare_view'},hospitalMortalityReadmissionsDisplayed:{'DCS.dcsuri':'/epd/hospital/cmsmortalityreadmissions.aspx','WT.ti':'ba|epd|Provider Directory - Hospital CMS Mortality and Readmissions','DCSext.cg_ss':'hospital profile','WT.si_n':'ba_epd_act_hospital_mortality_view'},hospitalPatientExperienceDisplayed:{'DCS.dcsuri':'/epd/hospital/hcahpspatientexperience.aspx','WT.ti':'ba|Provider Directory - Hospital HCAHPS Patient Experience','DCSext.cg_ss':'hospital profile','WT.si_n':'ba_epd_act_hospital_patientexpe_view'},groupProfileDisplayed:{'DCS.dcsuri':'/epd/group/profile.aspx','WT.ti':'ba|Provider Directory - Group Profile','DCSext.cg_ss':'group profile','WT.si_n':'ba_epd_act_group_profile_view'},groupAffiliatedDoctorsDisplayed:{'DCS.dcsuri':'/epd/group/affiliateddoctors.aspx','WT.ti':'ba|Provider Directory - Group Affiliated Doctors','DCSext.cg_ss':'group profile','WT.si_n':'ba_epd_act_group_affiliation_view'},compareProvidersDisplayed:{'DCS.dcsuri':'/epd/event/compare.aspx','WT.ti':'ba|Provider Search - Compare','DCSext.cg_ss':'events','WT.si_n':'ba_epd_act_compare'},providerAdded:{'DCS.dcsuri':'/epd/event/addtolist.aspx','WT.ti':'ba|Provider Directory - Add to My List','DCSext.cg_ss':'events','WT.si_n':'ba_epd_act_addlist'},moveToTop:{'DCS.dcsuri':'/epd/event/movetop.aspx','WT.ti':'ba|Provider Directory - Move to Top','DCSext.cg_ss':'events','WT.si_n':'ba_epd_act_movetop'},printToPDF:{'DCS.dcsuri':'/epd.event/print.aspx','WT.ti':'ba|Provider Directory - Print to PDF','DCSext.cg_ss':'events','WT.si_n':'ba_epd_act_print_pdf'},print:{'DCS.dcsuri':'/epd.event/print.aspx','WT.ti':'ba|Provider Directory - Print','DCSext.cg_ss':'events','WT.si_n':'ba_epd_act_print'},resultsSorted:{'DCS.dcsuri':'/epd/event/searchresultssort.aspx','WT.ti':'ba|Provider Directory - Search Results Sort','DCSext.cg_ss':'search','WT.si_n':null,'WT.si_x':null,'WT.si_cs':null},healthIssueView:{'DCS.dcsuri':'/epd/healthissue.aspx','WT.ti':'ba|Provider Directory - Health Issue','DCSext.cg_ss':'health issue','WT.si_n':null,'WT.si_x':null,'WT.si_cs':null},myListView:{'DCS.dcsuri':'/epd/mylist.aspx','WT.ti':'ba|Provider Directory - My List','DCSext.cg_ss':'mylist','WT.si_n':null,'WT.si_x':null,'WT.si_cs':null},physicianRatingInfo:{'DCS.dcsuri':'/epd/siteinfo/physicianratings.aspx','WT.ti':'ba|Provider Directory - Site Info Physician Ratings','DCSext.cg_ss':'site info','WT.si_n':null,'WT.si_x':null,'WT.si_cs':null},hospitalRatingInfo:{'DCS.dcsuri':'/epd/siteinfo/hospitalratings.aspx','WT.ti':'ba|Provider Directory - Site Info Hospital Ratings','DCSext.cg_ss':'site info','WT.si_n':null,'WT.si_x':null,'WT.si_cs':null},learnMore:{'DCS.dcsuri':'/epd/siteinfo/definitions.aspx','WT.ti':'ba|Provider Directory - Site Info Definitions','DCSext.cg_ss':'site info','WT.si_n':null,'WT.si_x':null,'WT.si_cs':null}};var callMultiTrack=function(transformObject){var params=[];for(var name in transformObject){params.push(name);params.push(transformObject[name]);}
dcsMultiTrack.apply(this,params);};var convertSearchFormParams=function(params){var MTParams={};MTParams['DCSext.epd_network']=params.networkLabel;MTParams['DCSext.epd_prtype']=EPD.Config.getProviderTypeNameByCode(params.ProviderType);MTParams['DCSext.epd_hlthiss']=params.specialtyCategoriesLabel||params.healthIssue;MTParams['DCSext.epd_awards']=params.recognitionsLabel;MTParams['DCSext.tool_srch']=params.numberOfrecords||"0";var locationType='';if(params.Zip){locationType='zip';}
if(params.Street){locationType+=(locationType?':':'')+'street';}
if(params.City){locationType+=(locationType?':':'')+'city';}
if(params.State){locationType+=(locationType?':':'')+'state';}
if(params.County){locationType+=(locationType?':':'')+'county';}
MTParams['DCSext.epd_loctype']=locationType;return MTParams;};this.setEPDParams=function(params){EPDParams=params;};this.callWebTrendsFunction=function(event){var transformObject=resetTransformObject;switch(event){case'homePageDisplayed':$.extend(transformObject,defaultTransformObject,transformObjects.homePageDisplayed);break;case'goSelected':$.extend(transformObject,defaultTransformObject,transformObjects.goSelected);break;case'networkSelected':$.extend(transformObject,defaultTransformObject,transformObjects.networkSelected);break;case'providerSelected':$.extend(transformObject,defaultTransformObject,transformObjects.providerSelected);break;case'nationalProviderSelected':$.extend(transformObject,defaultTransformObject,transformObjects.nationalProviderSelected);break;case'productPrefixSelected':$.extend(transformObject,defaultTransformObject,transformObjects.productPrefixSelected);break;case'searchResults':$.extend(transformObject,defaultTransformObject,transformObjects.searchResults,convertSearchFormParams(EPDParams));break;case'doctorProfileDisplayed':$.extend(transformObject,defaultTransformObject,transformObjects.doctorProfileDisplayed,{'DCSext.epd_doctorID':EPDParams.CompositeKey});break;case'doctorAffiliationsDisplayed':$.extend(transformObject,defaultTransformObject,transformObjects.doctorAffiliationsDisplayed,{'DCSext.epd_doctorID':EPDParams.CompositeKey});break;case'doctorQualityDetailDisplayed':$.extend(transformObject,defaultTransformObject,transformObjects.doctorQualityDetailDisplayed,{'DCSext.epd_doctorID':EPDParams.CompositeKey});break;case'doctorCostDetailDisplayed':$.extend(transformObject,defaultTransformObject,transformObjects.doctorCostDetailDisplayed,{'DCSext.epd_doctorID':EPDParams.CompositeKey});break;case'doctorOfficeProfileDisplayed':$.extend(transformObject,defaultTransformObject,transformObjects.doctorOfficeProfileDisplayed,{'DCSext.epd_groupID':EPDParams.CompositeKey});break;case'doctordoctorAffiliatedDoctorsDisplayed':$.extend(transformObject,defaultTransformObject,transformObjects.doctordoctorAffiliatedDoctorsDisplayed,{'DCSext.epd_groupID':EPDParams.CompositeKey});break;case'hospitalProfileDisplayed':$.extend(transformObject,defaultTransformObject,transformObjects.hospitalProfileDisplayed,{'DCSext.epd_hospitalID':EPDParams.CompositeKey});break;case'hospitalCostDetailDisplayed':$.extend(transformObject,defaultTransformObject,transformObjects.hospitalCostDetailDisplayed,{'DCSext.epd_hospitalID':EPDParams.CompositeKey});break;case'hospitalMedicalServicesDisplayed':$.extend(transformObject,defaultTransformObject,transformObjects.hospitalMedicalServicesDisplayed,{'DCSext.epd_hospitalID':EPDParams.CompositeKey});break;case'hospitalSurgicalCareDisplayed':$.extend(transformObject,defaultTransformObject,transformObjects.hospitalSurgicalCareDisplayed,{'DCSext.epd_hospitalID':EPDParams.CompositeKey});break;case'hospitalMortalityReadmissionsDisplayed':$.extend(transformObject,defaultTransformObject,transformObjects.hospitalMortalityReadmissionsDisplayed,{'DCSext.epd_hospitalID':EPDParams.CompositeKey});break;case'hospitalPatientExperienceDisplayed':$.extend(transformObject,defaultTransformObject,transformObjects.hospitalPatientExperienceDisplayed,{'DCSext.epd_hospitalID':EPDParams.CompositeKey});break;case'groupProfileDisplayed':$.extend(transformObject,defaultTransformObject,transformObjects.groupProfileDisplayed,{'DCSext.epd_groupID':EPDParams.CompositeKey});break;case'groupAffiliatedDoctorsDisplayed':$.extend(transformObject,defaultTransformObject,transformObjects.groupAffiliatedDoctorsDisplayed,{'DCSext.epd_groupID':EPDParams.CompositeKey});break;case'compareProvidersDisplayed':$.extend(transformObject,defaultTransformObject,transformObjects.compareProvidersDisplayed);break;case'providerAdded':$.extend(transformObject,defaultTransformObject,transformObjects.providerAdded);break;case'moveToTop':$.extend(transformObject,defaultTransformObject,transformObjects.moveToTop);break;case'printToPDF':$.extend(transformObject,defaultTransformObject,transformObjects.printToPDF);break;case'print':$.extend(transformObject,defaultTransformObject,transformObjects.print);break;case'resultsSorted':$.extend(transformObject,defaultTransformObject,transformObjects.resultsSorted,EPDParams);break;case'healthIssueView':$.extend(transformObject,defaultTransformObject,transformObjects.healthIssueView);break;case'myListView':$.extend(transformObject,defaultTransformObject,transformObjects.myListView);break;case'physicianRatingInfo':$.extend(transformObject,defaultTransformObject,transformObjects.physicianRatingInfo);break;case'hospitalRatingInfo':$.extend(transformObject,defaultTransformObject,transformObjects.hospitalRatingInfo);break;case'learnMore':$.extend(transformObject,defaultTransformObject,transformObjects.learnMore);break;}
callMultiTrack(transformObject);}}
window.Client=window.Client||{}
Client.HomeController={id:'home',defaultAction:function(){var canvas;var that=this;if(!this.isDefaultViewScriptLoaded()){this.defaultViewSciptIsLoaded();canvas=MVC.Application.createCanvas({canvasId:'main',viewScriptId:'canvas',attr:{className:'main'}});this.setViewScript(canvas);MVC.SystemController.createRequest().setControllerId('features').setActionId('showFeatures').send();}
MVC.SystemController.createRequest().setControllerId('application').setActionId('resetBreadCrumb').send();MVC.SystemController.createRequest().setControllerId('application').setActionId('showBreadCrumb').send();that.view.render('welcome',{status:'loading'});var callback=function(){if(MVC.SystemController.getRequest().getControllerId()=='home'){MVC.Application.hideCanvas();MVC.Application.showCanvas('main');that.view.render('welcome');}}
MVC.SystemController.createRequest().setControllerId('search').setActionId('reset').setParams({FullReset:true}).send();MVC.SystemController.createRequest().setControllerId('search').setActionId('default').setParams({callBack:callback}).send();MV.EventsManager.fireEvent('resizeParentIFrame');}};MVC.SystemController.extendController(MVC.SystemController.getController('home'),Client.HomeController);
window.Client=window.Client||{};Client.WelcomeViewScript={load:function(){this.addContainer('section','#section').supplant(EPD.Strings.Home);this.addContainer('loading','#loading').supplant(EPD.Strings.Application);},render:function(params){var $content;if(params&&params.status&&params.status==='loading'){$content=this.getContainer('loading');MVC.SystemController.createResponse().bindViewScript(MVC.SystemController.getController('home').getViewScript('canvas')).setContent('content',$content).send();}
else{$content=this.getContainer('section');MVC.SystemController.createResponse().bindViewScript(MVC.SystemController.getController('home').getViewScript('canvas')).setContent('content',$content).addCallback(function(){$content.analyticsBinder();}).send();var hoverText=EPD.Strings.Home.PanelsHoverHelp;var hoverHelps=[{Target:$content.find('.decoration').find('.first'),Content:hoverText},{Target:$content.find('.decoration').find('.second'),Content:hoverText},{Target:$content.find('.decoration').find('.third'),Content:hoverText}];MVC.SystemController.createRequest().setControllerId('plugins').setActionId('hoverHelpPlugin').setParams(hoverHelps).send();}}};MVC.SystemController.extendViewScript(MVC.SystemController.getController('home').getViewScript('welcome'),Client.WelcomeViewScript);
window.Client=window.Client||{};Client.FeaturesController={showFeaturesAction:function(params){this.defaultAction(params);var Strings=this.view.Strings;this.view.FeaturesLinks=[{Title:Strings.InternationalSearchLabel,Id:'internationalSearch',Location:'javascript:void(0);',Target:"blank",Offsite:true},{Title:Strings.OtherToolsLabel,Id:'otherToolsFeature',Location:'javascript:void(0);'},{Title:Strings.SiteInfoTitle,Id:'siteInfoFeature',Location:'javascript:void(0);'},{Title:Strings.PrintLabel,Id:'printFeature',Location:'javascript:void(0);'},{Title:Strings.MyListLabel,Id:'myListFeature',Location:'javascript:void(0);'}];this.view.OtherTools=[{Title:"Tennessee State Licensure",Id:"TSLicensure",Value:"http://health.state.tn.us/Licensure/default.aspx",Target:"blank",Offsite:true}];if(!MV.User.getAttribute('IsServiceMaster')){this.view.OtherTools.push({Title:"Vision Blue",Id:"VisionBlue",Value:"http://www.eyemedvisioncare.com/locator/locator.emvc?ClientId=bcbstn",Target:"blank",Offsite:true});}
this.view.OtherTools.push({Title:"National Pharmacies",Id:"NatPharm",Value:"http://www.bcbst.com/tools/fad/default.asp?txtCategory=PHAR",Target:"blank",Offsite:true});this.view.SiteInfo=[{Title:Strings.SiteInfoPhysicianRatingsLabel,Id:'siteInfoPhysician'},{Title:Strings.SiteInfoHospitalRatingsLabel,Id:'siteInfoHospital'},{Title:Strings.SiteInfoFAQLabel,Id:'siteInfoFAQ'}];this.view.render('features');},infoPhysicianAction:function(params){var modalParams={Content:this.view.Strings.SiteInfoPhysicianRatingsContent,Callback:function($content,$controls){MV.Util.Events.jumpLinks({$content:$content,scrollElement:$content.find('.body'),offset:0});}};MVC.SystemController.createRequest().setControllerId('plugins').setActionId('modalPlugin').setParams(modalParams).send();},learnMoreAction:function(params){var modalParams={Content:this.view.learnMoreParams.content,Callback:function($content,$controls){MV.Util.Events.jumpLinks({$content:$content,scrollElement:$content.find('.body'),offset:0});}};MVC.SystemController.createRequest().setControllerId('plugins').setActionId('modalPlugin').setParams(modalParams).setRequestInAddress(false).send();},faqAction:function(params){var modalParams={Content:this.view.Strings.FAQContent,Callback:function($content,$controls){MV.Util.Events.jumpLinks({$content:$content,scrollElement:$content.find('.body'),offset:0});}};MVC.SystemController.createRequest().setControllerId('plugins').setActionId('modalPlugin').setParams(modalParams).setRequestInAddress(false).send();},infoHospitalAction:function(params){var modalParams={Content:this.view.Strings.SiteInfoHospitalRatingsContent,Callback:function($content,$controls){var contentBody=$content.find('.body');MV.Util.Events.jumpLinks({$content:$content,scrollElement:$content.find('.body'),offset:0});contentBody.analyticsBinder();}};MVC.SystemController.createRequest().setControllerId('plugins').setActionId('modalPlugin').setParams(modalParams).send();},updateLearnMoreAction:function(params){var _this=this;var currentParams=MVC.SystemController.getRequest().getParams();var providerType=currentParams.providerType;if(providerType===undefined||this.view.Strings['LearnMoreTitle'+providerType]===undefined){providerType='Default';}
var modalParams={title:this.view.Strings['LearnMoreTitle'+providerType],content:this.view.Strings['LearnMoreContent'+providerType]};this.view.learnMoreParams=modalParams;this.getViewScript('features')._smartLoad({callback:function(){_this.getViewScript('features').getContainer('featuresLinksHolder').find('#learnMoreFeature span').text(modalParams.title);}});},updatePrintAction:function(params){if(params&&params.Hash){var page=params.Hash.substring(1,params.Hash.indexOf('/'));if(page==='detail'||page==='compare'){return;}
params=null;}
this.pdfForSearchURL=null;this.printAllDetailUrl=null;var isEmpty=function(object){for(var element in object){return false;}
return true;};var _this=this;if(params&&!isEmpty(params)){if(params.pdfForSearchURL){this.pdfForSearchURL=params.pdfForSearchURL;this.getViewScript('features')._smartLoad({callback:function(){_this.getViewScript('features').getContainer('featuresLinksHolder').find('#printFeature span').text(_this.view.Strings.PDFLabel);}});}else if(params.printAllDetailUrl){this.printAllDetailUrl=params.printAllDetailUrl;this.getViewScript('features')._smartLoad({callback:function(){_this.getViewScript('features').getContainer('featuresLinksHolder').find('#printFeature span').text(_this.view.Strings.PrintAllDetailLabel);}});}}else{this.pdfForSearchURL=null;this.printAllDetailUrl=null;this.getViewScript('features')._smartLoad({callback:function(){if(_this.view.Strings&&_this.view.Strings.PDFLabel){_this.getViewScript('features').getContainer('featuresLinksHolder').find('#printFeature span').text(_this.view.Strings.PDFLabel);}}});}},printAction:function(params){MVC.SystemController.createRequest().setControllerId('print').setActionId('print').setParams({printAllDetailUrl:this.printAllDetailUrl}).send();}};MVC.SystemController.extendController(MVC.SystemController.getController('features'),Client.FeaturesController);
window.Client=window.Client||{};Client.FeaturesViewScript={load:function($html){this.setLoadOnlyOnce(true);this.addContainer('featuresLinksHolder','#topNavigationLinksHolder');this.addTemplate('featuresLink','#topNavigationLink');this.addTemplate('featuresOffsiteLink','#topNavigationOffsiteLink');this.addTemplate('featuresLinks','#topNavigationLinks');this.addTemplate('otherToolsLink','#otherToolsLink');this.addTemplate('otherToolsMenu','#otherToolsMenu');this.addTemplate('siteInfoItem','#siteInfoItem');this.addTemplate('offsiteInfoItem','#offsiteInfoItem');this.addTemplate('siteInfoDropdown','#siteInfoDropdown');},render:function(){var _this=this;var topNavigationLinksArray=this.view.FeaturesLinks||[];var otherToolsMenuArray=this.view.OtherTools||[];var featuresLinksHolder=this.getContainer('featuresLinksHolder');var chooseMenuTemplate=function(dataItem){return(dataItem.Offsite)?_this.getTemplate('featuresOffsiteLink'):_this.getTemplate('featuresLink');};var chooseMenuLinkTemplate=function(dataItem){return(dataItem.Offsite)?_this.getTemplate('offsiteInfoItem'):_this.getTemplate('siteInfoItem');};featuresLinksHolder.empty().append(MV.Util.DOMCreation.formatToParentChildrenSupplant(topNavigationLinksArray,this.getTemplate('featuresLinks'),chooseMenuTemplate));var $otherToolsItem=featuresLinksHolder.find('#otherToolsFeature').parent();$otherToolsItem.append(MV.Util.DOMCreation.formatToParentChildrenSupplant(otherToolsMenuArray,this.getTemplate('otherToolsMenu'),chooseMenuLinkTemplate));$otherToolsItem.dropdownMenu();var additionalInfo=$.cookie('TNAuthenticated');var siteInfoLinks=((additionalInfo=='true')?this.view.SiteInfo:this.view.SiteInfo.slice(-1));var $siteInfoDropdown=MV.Util.DOMCreation.formatToParentChildrenSupplant(siteInfoLinks,this.getTemplate('siteInfoDropdown'),chooseMenuLinkTemplate);var $siteInfoItem=featuresLinksHolder.find('#siteInfoFeature').parent();$siteInfoItem.append($siteInfoDropdown.supplant({Strings:this.view.Strings}));$siteInfoItem.dropdownMenu();var that=this;MVC.SystemController.createResponse().setContent('features',featuresLinksHolder).addCallback(function(){that.afterRenderUpdate();}).send();},afterRenderUpdate:function(){MVC.SystemController.createRequest().setControllerId('features').setActionId('updateMyList').setParams({operation:'render'}).send();var otherToolsDropdown=this.getContainer('featuresLinksHolder');otherToolsDropdown.click(this.delegateEvents);otherToolsDropdown.find('#otherToolsFeature').parent().click(FeaturesController.Utilities.delegateOtherToolsEvents);otherToolsDropdown.find('.dropdownMenu').dropdownMenu({rebindHoverOnly:true});var hoverHelpArray=[{'Target':this.getContainer('featuresLinksHolder').find('#myListFeature'),'Content':this.view.Strings.MyListHoverHelp}];MVC.SystemController.createRequest().setControllerId('plugins').setActionId('hoverHelpPlugin').setParams(hoverHelpArray).send();},delegateEvents:function(event){event.preventDefault();var $target=$(event.target);var $link=$target.closest('a');var id=$link.attr('id');if(id==''){return false;}
switch(id){case'internationalSearch':var url='https://international.mondialusa.com/bcbsa/index.asp?page=login';var subscriberPayload={url:url,title:'International Search Feature'};MV.EventsManager.fireEvent('externalLinkAccessed',subscriberPayload);window.open(url);break;case'siteInfoPhysician':MV.EventsManager.fireEvent('Analytics.features.physicianRatingInfo',{});MVC.SystemController.createRequest().setControllerId('features').setActionId('infoPhysician').send();break;case'siteInfoHospital':MV.EventsManager.fireEvent('Analytics.features.hospitalRatingInfo',{});MVC.SystemController.createRequest().setControllerId('features').setActionId('infoHospital').send();break;case'siteInfoFAQ':MV.EventsManager.fireEvent('Analytics.features.learnMore',{});MVC.SystemController.createRequest().setControllerId('features').setActionId('faq').send();break;case'printFeature':MVC.SystemController.createRequest().setControllerId('features').setActionId('print').send();break;case'myListFeature':MV.EventsManager.fireEvent('Analytics.mylist.view',{});MVC.SystemController.createRequest().setControllerId('mylist').setRequestInAddress(true).send();break;case'siteInfoFeature':break;case'otherToolsFeature':break;default:var url=$link.attr('href');var subscriberPayload={url:url,title:'International Search Feature'};MV.EventsManager.fireEvent('externalLinkAccessed',subscriberPayload);window.open(url);}
return false;}};MVC.SystemController.extendViewScript(MVC.SystemController.getController('features').getViewScript('features'),Client.FeaturesViewScript);
window.Client=window.Client||{};Client.SearchController={defaultAction:function(params){if(!this.view.PlanCode){this.view.PlanCode=$.cookie('MVClientPlan');}
var isEmpty=function(object){for(var element in object){if(element!=='callBack'){return false;}}
return true;};this.view.urlParams=MVC.SystemController.getRequest().getParams();if(this.view.urlParams.providerType){var providerType=this.view.urlParams.providerType;this.view.urlParams.providerType=EPD.Config.isValidProviderType(providerType)?providerType:null;}
this.view.HaveSystemRequestParams=(!params||isEmpty(params));this.view.SendFormResponse=true;this.formAction(params);},formAction:function(params){var _this=this;if($.browser.msie&&parseFloat($.browser.version)<7){if($('.navFormClone').length<1){var navigation=$('.nav');var cloneForm=navigation.find('.location').clone();var cloneSearch=navigation.find('.search').clone();var cloneWait=navigation.find('.wait').clone();cloneForm.addClass('navFormClone');cloneWait.addClass('navWaitClone');$('.nav').append(cloneForm);if(!cloneSearch.hasClass('invisible')){cloneSearch.addClass('navSearchClone');$('.nav').append(cloneSearch);}
navigation.find('form').addClass('invisible');navigation.append(cloneWait);cloneForm.removeClass('invisible');}}
var eventSource='';if(params&&params.EventSource){eventSource=params.EventSource;if(params.EventSource==='changedLocationButtonClicked'){params={};}}
if(MV.User.getAttribute('IsServiceMaster')){params.network='BP01';params.product="1";params.prefix="UEY";}
var automaticLoad=(eventSource!='changedLocationButtonClicked');params=$.extend({},this.view.urlParams,params);this.view.SearchParams=params;this.view.render('inputElements');if(!this.getViewScript('inputElements').isLoaded()){setTimeout(function(){_this.formAction(params);},10);return;}
if(!this.view.LocationCriteria){this.loadLocationCriteria(params,function(){_this.formAction(params);});return;}
if(!params.plan&&this.view.PlanCode){params.plan=this.view.PlanCode;}
var render=function(){_this.view.render('form',params);switch(eventSource){case'goButtonClicked':MV.EventsManager.fireEvent('Analytics.search.form.goSelected',params);break;case'networkSelected':MV.EventsManager.fireEvent('Analytics.search.form.networkSelected',params);break;case'providerSelected':if(_this.view.isNational){MV.EventsManager.fireEvent('Analytics.search.form.nationalProviderSelected',params);}
else{MV.EventsManager.fireEvent('Analytics.search.form.providerSelected',params);}
break;case'productPrefixSelected':MV.EventsManager.fireEvent('Analytics.search.form.productPrefixSelected',params);break;default:break;}};if(!automaticLoad||!this.haveLocation(params)){render();}
else if(this.view.HaveSystemRequestParams||!this.view.RequiredCriteria){this.loadSearchCriteria(params,render);}
else if(!this.view.DropDownCriteria){params.latitude=this.view.RequiredCriteria.Latitude;params.longitude=this.view.RequiredCriteria.Longitude;this.loadDropDownCriteria(params,render);}
else{render();}},haveLocation:function(params){return(params.distance&&(params.zip||params.county||(params.city&&params.state)));},loadSearchCriteria:function(params,callback){var _this=this;MVC.SystemController.createRequest().setControllerId('geocoder').setActionId('geocodeAddress').setParams({street:params.street,city:params.city,county:params.county,state:params.state,zip:params.zip.substr(0,5),callback:function(callbackBundle){params.latitude=callbackBundle.lat;params.longitude=callbackBundle.lng;$.cookie('MVClientState',callbackBundle.state);_this.loadRequiredCriteria(params,function(){_this.loadDropDownCriteria(params,callback);});}}).send();},loadRequiredCriteria:function(params,callback){var requiredParams={DirectoryRegion:params.region||null,Distance:params.distance||null,City:params.city||null,State:params.state||null,Zip:params.zip||null,Street:params.street||null,County:params.county||null,Latitude:params.latitude||0,Longitude:params.longitude||0};this.callWS({WSObjectName:'EPD',WSMethodName:'GetRequiredCriteriaList',params:requiredParams,callback:function(_this){_this.view.RequiredCriteria=_this.getModel('GetRequiredCriteriaList').getData();if(callback){callback();}}});},loadDropDownCriteria:function(params,callback){var dropDownParams={DirectoryRegion:params.region||null,ProviderTypeCode:params.providerType||null,NetworkID:params.network||null,PlanCode:params.plan||null,ProductID:params.product||params.prefix||null,Distance:params.distance,Latitude:params.latitude,Longitude:params.longitude};this.callWS({WSObjectName:'EPD',WSMethodName:'GetDropDownCriteriaList',params:dropDownParams,callback:function(_this){var model=_this.getModel('GetDropDownCriteriaList');_this.view.DropDownCriteria=model.findInData('CriteriaList');_this.view.SearchFields=model.findInData('Columns');_this.view.isNational=model.findInData('IsNational');if(callback){callback();}},error:callback});},getStateFromGeocode:function(data){MVC.SystemController.getController('geocoder').getStateFromGeocode(data);}};MVC.SystemController.extendController(MVC.SystemController.getController('search'),Client.SearchController);
window.Client=window.Client||{};Client.FormViewScript={render:function(params){this.inputElements.clear();var searchContainer=this.getContainer('searchContainer');var locationList=this.getContainer('locationFieldset').find('ol');var requiredFieldset=this.getContainer('requiredFieldset');var requiredList=requiredFieldset.find('ol');var optionalFieldset=this.getContainer('optionalFieldset');var optionalList=optionalFieldset.find('ol');var that=this;var hoverHelpArray=[];var request=MVC.SystemController.getRequest();var isResultsList=(request.controllerId=='results'&&request.actionId=='listAction');var isResetWanted=isResultsList&&this.isResetEnabled;var field,element,inputElement;if(this.view.LocationFields){var locationFields=this.view.LocationFields[0].Elements;for(var li=0,ll=locationFields.length;li<ll;li++){field=locationFields[li];var payload=null;if(field.Id=='DistanceZipInput'){payload=this.view.LocationCriteria.RadiiList;}
if(field.Id=='FullAddressInput'){payload=this.view.LocationCriteria;}
element=this.inputElements.create(field,'location',payload).getElement();if(element){if(field.Id=='FullAddressInput'){if(this.strings.FullAddressHoverHelp){hoverHelpArray.push({'Target':element.find('#fullAddressLink'),'Content':this.strings.FullAddressHoverHelp});}}else if(this.strings[field.Id+'HoverHelp']){hoverHelpArray.push({'Target':element,'Content':this.strings[field.Id+'HoverHelp']});}
locationList.append(element);}}}
if(this.view.RequiredCriteria){if(this.view.HaveSystemRequestParams){this.toggleLocationForm(false);}
if(!this.view.DropDownCriteria){if(!this.view.PlanCode&&this.view.RequiredCriteria.PlanList){field={Id:'PlanInput',Label:this.strings.PlanLabel,Attributes:[{Id:'InputType',Value:'Select'},{Id:'InputId',Value:'planInput'}]};element=this.inputElements.create(field,'required',this.view.RequiredCriteria.PlanList).getElement();requiredList.append(element);}
if(this.view.RequiredCriteria.NetworkList&&this.view.RequiredCriteria.NetworkList.length>0){field={Id:'NetworkInput',Label:this.strings.NetworkLabel,Attributes:[{Id:'InputType',Value:'Select'},{Id:'InputId',Value:'networkInput'}]};element=this.inputElements.create(field,'required',this.view.RequiredCriteria.NetworkList).getElement();requiredList.append(element);}
if(this.view.RequiredCriteria.ProviderTypeList){field={Id:'ProviderTypeInput',Label:this.strings.ProviderTypeLabel,Attributes:[{Id:'InputType',Value:'Select'},{Id:'InputId',Value:'providerTypeInput'}]};element=this.inputElements.create(field,'required',this.view.RequiredCriteria.ProviderTypeList).getElement();requiredList.append(element);}
if(this.view.RequiredCriteria.ProductList){field={Id:'PrefixInput',Label:this.strings.PrefixLabel,Attributes:[{Id:'InputType',Value:'Text'},{Id:'InputId',Value:'prefixInput'},{Id:'ClassName',Value:'xorTop'}]};element=this.inputElements.create(field,'required').getElement();requiredList.append(element);field={Id:'ProductInput',Label:this.strings.ProductLabel,Attributes:[{Id:'InputType',Value:'SelectXORBottom'},{Id:'InputId',Value:'productInput'}]};element=this.inputElements.create(field,'required',this.view.RequiredCriteria.ProductList).getElement();requiredList.append(element);}
this.elementToFocus=$(requiredList.find('select')[0]);}
searchContainer.removeClass('invisible');}else{searchContainer.addClass('invisible');}
if(this.view.RequiredCriteria){var hasLatitude=this.view.RequiredCriteria.Latitude==0?true:false;var hasLongitude=this.view.RequiredCriteria.Longitude==0?true:false;if(hasLatitude&&hasLongitude){this.toggleLocationForm(true);var distanceZipElement=that.inputElements.getElement('DistanceZipInput');if(distanceZipElement){var zipInput=distanceZipElement.find("#zipInput");zipInput.addClass('focused');zipInput.focus();}
searchContainer.addClass('invisible');that.validation.validateElement('zipInput','wrongZip');}
else{if(this.view.DropDownCriteria){var requiredFields=[];var optionalFields=[];for(var fi=0,fl=this.view.SearchFields.length;fi<fl;fi++){if(this.view.SearchFields[fi].Id.match(/Required/)){requiredFields=this.view.SearchFields[fi].Elements;}else if(this.view.SearchFields[fi].Id.match(/Optional/)){optionalFields=this.view.SearchFields[fi].Elements;}}
if(requiredFields.length>0){requiredFieldset.removeClass('invisible');requiredFieldset.find('#requiredLegend').removeClass('invisible');}else{requiredFieldset.addClass('invisible');requiredFieldset.find('#requiredLegend').addClass('invisible');}
for(var ri=0,rl=requiredFields.length;ri<rl;ri++){field=requiredFields[ri];inputElement=null;if(field.Id=='NetworkInput'){if(this.view.DropDownCriteria.NetworkList){inputElement=this.inputElements.create(field,'required',this.view.DropDownCriteria.NetworkList);}}else if(field.Id=='ProductInput'){if(this.view.DropDownCriteria.ProductList){inputElement=this.inputElements.create(field,'required',this.view.DropDownCriteria.ProductList);}}else if(field.Id=='ProviderTypeInput'){if(this.view.DropDownCriteria.ProviderTypes){inputElement=this.inputElements.create(field,'required',this.view.DropDownCriteria.ProviderTypes);}}else if(field.Id=='ServiceInput'){if(this.view.DropDownCriteria.Services){inputElement=this.inputElements.create(field,'required',this.view.DropDownCriteria.Services);}}else if(field.Id=='ServiceCountyInput'){if(this.view.DropDownCriteria.CountyList){inputElement=this.inputElements.create(field,'required',this.view.DropDownCriteria.CountyList);}}else{inputElement=this.inputElements.create(field,'required');}
if(inputElement){element=inputElement.getElement();if(this.strings[field.Id+'HoverHelp']){hoverHelpArray.push({'Target':element,'Content':this.strings[field.Id+'HoverHelp']});}
requiredList.append(element);if(MV.User.getAttribute('IsServiceMaster')&&(field.Id=='NetworkInput'||field.Id=='PrefixInput'||field.Id=='ProductInput')){element.addClass('invisible');}}}
if(this.haveAllValues(requiredFields)){for(var oi=0,ol=optionalFields.length;oi<ol;oi++){field=optionalFields[oi];inputElement=null;if(field.Id=='SpecialtyInput'||field.Id=='SpecialtyXORTopInput'){if(this.view.DropDownCriteria.SpecialtyList&&this.view.DropDownCriteria.SpecialtyList.length>0){inputElement=this.inputElements.create(field,'optional',this.view.DropDownCriteria.SpecialtyList,isResetWanted);}}else if(field.Id=='OtherLanguagesInput'||field.Id=='NationalOtherLanguagesInput'){if(this.view.DropDownCriteria.LanguageList&&this.view.DropDownCriteria.LanguageList.length>0){inputElement=this.inputElements.create(field,'optional',this.view.DropDownCriteria.LanguageList,isResetWanted);}}else if(field.Id=='GenderInput'){if(this.view.DropDownCriteria.GenderList&&this.view.DropDownCriteria.GenderList.length>0){inputElement=this.inputElements.create(field,'optional',this.view.DropDownCriteria.GenderList,isResetWanted);}}else if(field.Id=='RecognitionsInput'){if(this.view.DropDownCriteria.OtherRecognitions&&this.view.DropDownCriteria.OtherRecognitions.length>0){inputElement=this.inputElements.create(field,'optional',this.view.DropDownCriteria.OtherRecognitions,isResetWanted);}}else{inputElement=this.inputElements.create(field,'optional',null,isResetWanted);}
if(inputElement){element=inputElement.getElement();var hoverHelpKey=field.Id+'HoverHelp';if(field.Id=='HealthIssueXORBottomInput'){hoverHelpKey='HealthIssueInputHoverHelp';}
if(this.strings[hoverHelpKey]){hoverHelpArray.push({'Target':element,'Content':this.strings[hoverHelpKey]});}
optionalList.append(element);}}
this.elementToFocus=optionalFieldset;optionalFieldset.removeClass('invisible');if(optionalFields.length<=1){optionalFieldset.find('#optionalLegend').addClass('invisible');}else{optionalFieldset.find('#optionalLegend').removeClass('invisible');}
this.isResetEnabled=false;}else{this.elementToFocus=$(requiredList.find('select')[0]);optionalFieldset.addClass('invisible');}
var healthIssueInput=this.inputElements.get('HealthIssueInput')||this.inputElements.get('HealthIssueXORBottomInput');if(healthIssueInput){this.healthIssueAutoCompleteInit(healthIssueInput.getElement(),healthIssueInput.isInGroup('required'));}}
else{optionalFieldset.addClass('invisible');}}}
if(this.view.SendFormResponse){this.view.SendFormResponse=false;var _this=this;MVC.SystemController.createResponse().bindViewScript(MVC.SystemController.getController('home').getViewScript('canvas')).setContent('navigation',this.getForm(),'append').addCallback(function(){_this.bindEvents(hoverHelpArray);}).send();}else{this.bindEvents(hoverHelpArray);}
var geoNetworkDataAvailabilityCheck=function(){if(that.view.DropDownCriteria&&that.view.DropDownCriteria.NetworkList){if(that.view.DropDownCriteria.NetworkList.length==0){that.toggleLocationForm(true);var distanceZipElement=that.inputElements.getElement('DistanceZipInput');if(distanceZipElement){var distanceInput=distanceZipElement.find("#distanceInput"),zipInput=distanceZipElement.find("#zipInput");distanceInput.removeClass('focused');zipInput.focus();}
searchContainer.addClass('invisible');that.validation.validateElement('zipInput','wrongZip');}}};$('.ieDropdown').iedropdown();var isIE6=($.browser.msie&&parseFloat($.browser.version)<7);if(isIE6){setTimeout(function(){$('.navWaitClone').remove();$('.navSearchClone').remove();$('.navFormClone').remove();},1);setTimeout(function(){$('.nav').find('form').removeClass('invisible');geoNetworkDataAvailabilityCheck();},1);}
if(!isIE6){geoNetworkDataAvailabilityCheck();}
params.callBack&&params.callBack();return;},addressLinkClicked:function(){var fullAddressElement=this.inputElements.getElement('FullAddressInput');if(fullAddressElement){fullAddressElement.find('#fullAddressFieldset').toggleClass('invisible');fullAddressElement.find('#fullAddressLink').toggleClass('expanded');}},formReloadTriggered:function(reloadParams){if(this.isBlocked){return;}
this.block();this.validation.reset();var params=$.extend({},this.getParameters(this.getContainer('locationFieldset')),this.getParameters(this.getContainer('requiredFieldset')));var providerCategory=EPD.Config.getProviderTypeCategory(params.providerType);var isLocal=this.getModel('GetDropDownCriteriaList').findInData('IsNational')!==true;if(isLocal&&(providerCategory=='practitioners')&&$.cookie('MVFirstTimeUser')=='true'){var modalParams={'Content':this.strings.HealthIssueModalContent};MVC.SystemController.createRequest().setControllerId('plugins').setActionId('modalPlugin').setParams(modalParams).setRequestInAddress(false).send();$.cookie('MVFirstTimeUser','false');}
this.view.DropDownCriteria=null;if(reloadParams&&reloadParams.eventSource){switch(reloadParams.eventSource){case'networkInput':params.EventSource='networkSelected';break;case'providerTypeInput':params.EventSource='providerSelected';break;case'productInput':params.EventSource='productPrefixSelected';break;case'prefixInput':params.EventSource='productPrefixSelected';break;default:break;}}
MVC.SystemController.createRequest().setControllerId('search').setActionId('form').setParams(params).send();},startButtonClicked:function(event){this.validation.reset();var isValid=this.validation.validate();if(this.isLocationEnabled&&(this.validation.getErrorMessageObject('cityInput')!==null||this.validation.getErrorMessageObject('stateInput')!==null)){var linkElement=this.inputElements.getElement('FullAddressInput').find('#fullAddressLink');if(!linkElement.hasClass('expanded')){this.addressLinkClicked();isValid=this.validation.validate();}}
if(this.isBlocked||!isValid){event.stopImmediatePropagation();return;}
var params=$.extend({},this.view.urlParams,this.getParameters(this.getContainer('locationFieldset')),this.getParameters(this.getContainer('requiredFieldset')),this.getParameters(this.getContainer('optionalFieldset')));params.EventSource='goButtonClicked';if(!(params.zip||params.county||(params.city&&params.state))){return;}
this.block();this.toggleLocationForm(false);MVC.SystemController.createRequest().setControllerId('search').setActionId('reset').send();MVC.SystemController.createRequest().setControllerId('search').setActionId('form').setParams(params).send();},changeLocationButtonClicked:function(){if(this.isBlocked){return;}
this.block();this.toggleLocationForm(true);var request=MVC.SystemController.getRequest();if(request.controllerId=='results'&&request.actionId=='listAction'){this.view.urlParams={};}
this.inputElements.get('DistanceZipInput').reset();this.inputElements.get('FullAddressInput').reset();MVC.SystemController.createRequest().setControllerId('search').setActionId('reset').send();MVC.SystemController.createRequest().setControllerId('search').setActionId('form').setParams({EventSource:'changedLocationButtonClicked'}).send();},bindEvents:function(hoverHelpArray){var _this=this,searchElement;var locationSubmitElement=this.inputElements.getElement('LocationSubmit');if(locationSubmitElement){locationSubmitElement.find('#locationSubmit button').unbind('click').click(function(event){_this.startButtonClicked.call(_this,event);});locationSubmitElement.find('#locationChange button').unbind('click').click(function(){_this.changeLocationButtonClicked.call(_this);});}
searchElement=this.inputElements.getElement('SearchSubmit');if(searchElement){searchElement.find('button').unbind('click').click(function(){_this.submitButtonClicked.call(_this);});}
searchElement=this.inputElements.getElement('RequiredSearchSubmit');if(searchElement){searchElement.find('button').unbind('click').click(function(){_this.submitButtonClicked.call(_this);});}
var distanceZipElement=this.inputElements.getElement('DistanceZipInput');if(distanceZipElement){var distanceInput=distanceZipElement.find("#distanceInput");var zipInput=distanceZipElement.find("#zipInput");distanceInput.get(0).onblur=function(){_this.validation.validateElement('distanceInput','blur');};distanceInput.bind('keyup',function(){_this.validation.validateElement('distanceInput','keyup');});zipInput.get(0).onblur=function(){_this.validation.validateElement('zipInput','blur');};zipInput.bind('keyup',function(){_this.validation.validateElement('zipInput','keyup');});}
var fullAddressElement=this.inputElements.getElement('FullAddressInput');if(fullAddressElement){fullAddressElement.find('#fullAddressLink').unbind('click').click(function(event){event.preventDefault();_this.addressLinkClicked.call(_this);});}
var form=this.getForm();form.unbind('submit').submit(function(event){_this.validation.validate();return false;});form.find('input, select, button').unbind('focus blur keyup').focus(function(event){var $target=$(this);if(this.tagName.toLowerCase()=='input'){var id=$target.attr('id');var $prev=$target.prev();if($prev&&($prev.attr('for')==id)&&($target.val()==$prev.text())){$target.val('');}
if(event.type=='focus'&&id=='prefixInput'){var element=_this.inputElements.getByInputId('prefixInput');MVC.SystemController.createRequest().setControllerId('plugins').setActionId('hoverHelpPluginHide').setParams(element.getElement()).send();}
if(event.type=='focus'&&id=='healthIssueInput'){var element=_this.inputElements.getByInputId('healthIssueInput');MVC.SystemController.createRequest().setControllerId('plugins').setActionId('hoverHelpPluginHide').setParams(element.getElement()).send();}}
$target.addClass('focused');}).blur(function(){var $target=$(this);if(this.tagName.toLowerCase()=='input'){var id=$target.attr('id');var value=$target.val();var $prev=$target.prev();if(!value&&$prev&&($prev.attr('for')==id)&&($prev.hasClass('invisible'))){$target.val($prev.text());}
else if(id=='healthIssueInput'&&value.length<3){$target.val($prev.text());}}
$target.removeClass('focused');}).keyup(function(event){if(event.keyCode==13){if(event.target.id=='distanceInput'&&$('#SearchSubmitElement').length>0){if(_this.validation.validate()){_this.submitButtonClicked.call(_this);}}else{var $fieldset=$(this).closest('fieldset');if($fieldset.hasClass('locationFieldset')||$fieldset.hasClass('fullAddressFieldset')){_this.startButtonClicked.call(_this,event);}else if($fieldset.hasClass('requiredFieldset')){if(_this.validation.validate()){_this.formReloadTriggered.call(_this);}}else if($fieldset.hasClass('optionalFieldset')){_this.submitButtonClicked.call(_this);}}}});var requiredFieldset=this.getContainer('requiredFieldset');requiredFieldset.find('select').unbind('change').change(function(event){var $target=$(event.target);var id=$target.attr('id');if($target.val()&&$target.hasClass(_this.validationErrorClass)){_this.validation.clearValidationError(id);}
_this.getContainer('optionalFieldset').addClass('invisible');_this.inputElements.clear('optional');_this.isResetEnabled=true;if(id=='networkInput'){if(_this.inputElements.get('ProviderTypeInput')){_this.inputElements.get('ProviderTypeInput').clear();_this.view.urlParams.providerType=null;}
if(_this.inputElements.get('RequiredSearchSubmit')){_this.inputElements.get('RequiredSearchSubmit').clear();}}
if(id=='providerTypeInput'){if(_this.inputElements.get('ProductInput')){_this.inputElements.get('ProductInput').clear();_this.inputElements.get('PrefixInput').clear();_this.view.urlParams.product=null;_this.view.urlParams.prefix=null;}
if(_this.inputElements.get('RequiredSearchSubmit')){_this.inputElements.get('RequiredSearchSubmit').clear();}}
_this.formReloadTriggered.call(_this,{eventSource:id});return false;});var prefixInputElement=this.inputElements.get('PrefixInput');var productInputElement=(this.inputElements.get('ProductInput'))?(this.inputElements.get('ProductInput')):'';if(prefixInputElement){var prefixInput=prefixInputElement.getElement().find('#prefixInput');var prefixLabel=prefixInput.prev().text();var productSelect=productInputElement!=''?productInputElement.getElement().find('#productInput'):'';prefixInput.unbind('keyup').keyup(function(event){var value=prefixInput.val();if(value==prefixLabel){value='';}
if(event.keyCode==13){_this.validatePrefix(value,function(){_this.formReloadTriggered.call(_this,{eventSource:'prefixInput'});});}
if(event.keyCode==9||event.keyCode==16){}else if(value.length>0){if(productInputElement!=''){productInputElement.reset();}
if(value.length==3){_this.validatePrefix(value,function(){_this.formReloadTriggered.call(_this,{eventSource:'prefixInput'});});}else if(value.length>3){prefixInput.val(value.substr(0,3));}}}).change(function(){var value=prefixInput.val();if(value==prefixLabel){value='';}
_this.validatePrefix(value,function(){_this.formReloadTriggered.call(_this,{eventSource:'prefixInput'});});return false;});if(productSelect!=''){productSelect.unbind('change').change(function(){_this.getContainer('optionalFieldset').addClass('invisible');_this.inputElements.clear('optional');if(_this.inputElements.get('RequiredSearchSubmit')){_this.inputElements.get('RequiredSearchSubmit').clear();}
if(productSelect.val()){prefixInputElement.reset();_this.prefixIsValid=true;_this.validation.clearValidationError('prefixInput');}
_this.formReloadTriggered.call(_this,{eventSource:'productInput'});}).keyup(function(event){if(event.keyCode==13){_this.validation.validateElement('prefixInput','submit');}});}}
var specialtyInputElement=this.inputElements.getByInputId('specialtyCategoriesInput');var healthIssueInputElement=this.inputElements.getByInputId('healthIssueInput');if(healthIssueInputElement){var healthIssueInput=healthIssueInputElement.getElement().find('#healthIssueInput');var healthIssueLabel=healthIssueInput.prev().text();var healthIssueIdInput=healthIssueInputElement.getElement().find('#healthIssueIdInput');var changeHandler=function(){var value=healthIssueInput.val();if(!value||value==healthIssueLabel){healthIssueIdInput.val('');}else if(specialtyInputElement){specialtyInputElement.reset();}};healthIssueInput.keyup(changeHandler).change(changeHandler).click(function(event){healthIssueIdInput.val('');_this.validation.clearValidationError('healthIssueInput');}).blur(function(event){if(!healthIssueIdInput.val()){healthIssueInput.val(healthIssueInput.prev().text());_this.validation.clearValidationError('healthIssueInput');}});$(document).unbind('click.hideAutocomplete').bind('click.hideAutocomplete',function(){var acResults=$(document.body).children('div.ac_results');for(var i=0,j=acResults.length;i<j;i++){$(acResults[i]).css('display','none');}});}else{$(document).unbind('click.hideAutocomplete');}
if(specialtyInputElement){var specialtyInput=specialtyInputElement.getElement().find('select');specialtyInput.change(function(){if(specialtyInput.val()&&healthIssueInputElement){healthIssueInputElement.reset();}});}
var serviceCountyInputElement=this.inputElements.get('ServiceCountyInput');if(serviceCountyInputElement){var serviceCountySelect=serviceCountyInputElement.getElement().find('#serviceCountyInput');serviceCountySelect.unbind('change').change(function(){if(serviceCountySelect.val()){_this.validation.clearValidationError('serviceInput');}
_this.formReloadTriggered.call(_this);});}
if(hoverHelpArray&&(hoverHelpArray.length>0)){MVC.SystemController.createRequest().setControllerId('plugins').setActionId('hoverHelpPlugin').setParams(hoverHelpArray).send();}
if(this.elementToFocus){this.elementToFocus.focus();this.elementToFocus=null;}
if(this.isBlocked){this.unblock();}},formReloadTriggered:function(){var clicker=undefined;if(this.isBlocked){return;}
this.block();this.validation.reset();var params=$.extend({},this.getParameters(this.getContainer('locationFieldset')),this.getParameters(this.getContainer('requiredFieldset')));this.view.DropDownCriteria=null;if(params.network&&params.network.slice(0,1)==='#'){clicker=jQuery(params.network);params.network="";params.networkLabel="";}
else if(params.providerType&&params.providerType.slice(0,1)==='#'){clicker=jQuery(params.providerType);params.providerType="";params.providerTypeLabel="";}
if(clicker){if(params.callBack===undefined){params.callBack=function(){jQuery(clicker).click();};}
else{jQuery(clicker).click();}}
MVC.SystemController.createRequest().setControllerId('search').setActionId('form').setParams(params).send();},submitButtonClicked:function(){if(this.isBlocked||!this.validation.validate()){return;}
var that=this;var callback=function(){var params=that.getParameters();if(!params.latitude||!params.longitude){params.latitude=that.view.RequiredCriteria.Latitude;params.longitude=that.view.RequiredCriteria.Longitude;}
var controllerAction='list';if(params.providerType=='MVHI00'){controllerAction='healthInfo';}
MVC.SystemController.createRequest().setControllerId('results').setActionId(controllerAction).setRequestInAddress(true).forceDispatch(true).setParams(params).send();};var prefixInputElement=this.inputElements.getByInputId('prefixInput');if(prefixInputElement){var productInputElement=this.inputElements.get('ProductInput')?this.inputElements.get('ProductInput'):'';var product=productInputElement!=''?productInputElement.getElement().find('#productInput').val():'';if(product===''){var prefix=prefixInputElement.getElement().find('#prefixInput').val();this.validatePrefix(prefix,callback);}else{callback();}}else{callback();}},parseit:function(data){var parsed=[];var hospital=EPD.Config.getProviderTypeCategory($('#providerTypeInput').val())=='hospitals';if(data){for(var i=0;i<data.length;i++){var c=data[i];var r=this.formatResult(c);if(!(hospital&&c.Type=='Condition')){parsed[parsed.length]={data:c,value:r,result:r};}}}
if((data&&data.length===0)||parsed.length===0){var $healthInput=$('#healthIssueInput');if($healthInput.length>0&&($healthInput.val()!=$healthInput.prev().text())){SearchController.FormViewScript.validation.clearValidationError('healthIssueInput');SearchController.FormViewScript.validation.forceValidationError('healthIssueInput',EPD.Strings.Search.NoMatchValidationError);$('#healthIssueIdInput').val('');}}else{SearchController.FormViewScript.validation.clearValidationError('healthIssueInput');$('#healthIssueIdInput').val('');}
MVC.SystemController.createRequest().setControllerId('plugins').setActionId('hoverHelpPluginHide').setParams($('#HealthIssueXORBottomInputElement')).send();return parsed;},haveAllValues:function(fields){var params=this.view.SearchParams;for(var i=0,l=fields.length;i<l;i++){var fieldId=fields[i].Id;switch(fieldId){case'PrefixInput':case'ProductInput':if(!params.prefix&&!params.product){return false;}else if(params.prefix){return this.prefixIsValid;}
break;case'ServiceInput':case'ServiceCountyInput':if(!params.service&&!params.serviceCounty){return false;}else if(params.prefix){return true;}
break;case'HealthIssueInput':if(!params.healthIssueId){return false;}
break;default:if(fieldId.indexOf('Input')>0){var inputId=fieldId.charAt(0).toLowerCase()+fieldId.substring(1,fieldId.indexOf('Input'));if(params[inputId]===undefined||params[inputId]===null||params[inputId]===''){return false;}}
break;}}
return true;},createValidationRules:function(){var ret={distanceInput:{tests:[{name:'required',events:['submit'],message:this.strings.DistanceValidationError},{name:'positiveInteger',events:['blur','keyup','submit'],message:this.strings.DistanceValidationError}]},zipInput:{tests:[{name:'locationTN',events:['blur','submit'],message:this.strings.LocationValidationError},{name:'zipCodeTN',events:['blur','submit'],message:this.strings.ZipValidationError},{name:'number',events:['keyup'],message:this.strings.ZipValidationError},{name:'zipCodeIsNotValid',events:['wrongZip'],message:this.strings.ZipValidationError}]},cityInput:{tests:[{name:'cityStateTN',events:['blur','submit'],message:this.strings.CityStateValidationError}]},stateInput:{tests:[{name:'cityStateTN',events:['blur','submit'],message:this.strings.CityStateValidationError}]},providerTypeInput:{tests:[{name:'required',events:['submit'],message:this.strings.ProviderTypeValidationError}]},networkInput:{tests:[{name:'network',events:['submit'],message:this.strings.NetworkValidationError}]},serviceInput:{tests:[{name:'dependent',events:['submit'],additionalArgs:['serviceCountyInput'],message:this.strings.ServiceAndOrCountryValidationError}]},serviceCountyInput:{tests:[{name:'dependent',events:['submit'],additionalArgs:['serviceInput'],message:this.strings.ServiceAndOrCountryValidationError}]},nameInput:{tests:[{name:'noSpecialCharacters',events:['submit'],message:this.strings.NameValidationError}]},lastNameInput:{tests:[{name:'noSpecialCharacters',events:['submit'],message:this.strings.NameValidationError}]},healthIssueInput:{tests:[{name:'requiredIfInFieldset',events:['submit'],additionalArgs:['requiredFieldset'],message:this.strings.HealthIssueValidationError}]}};if(!MV.User.getAttribute('IsServiceMaster')){ret.prefixInput={tests:[{name:'exclusiveRequired',events:['submit'],additionalArgs:['productInput'],message:this.strings.PrefixOrProductValidationError},{name:'minLength',events:['submit'],additionalArgs:[3],message:this.strings.PrefixOrProductValidationError},{name:'prefixIsValid',events:['submit'],message:this.strings.PrefixOrProductValidationError}]};}
return ret;},createCustomValidators:function(){var _this=this;return{network:function(value,element){if(element.closest('div.navGroup').hasClass('invisible')){return true;}
else{if(value){return true;}
else{return false;}}},locationTN:function(value,element,additionalArgs){var isValidZip=value.match(/^\d{5}$/);if(isValidZip||$('#countyInput').val()){return true;}else{var cityInput=$('input#cityInput');var cityValue=cityInput.val();var cityLabel=cityInput.prev().text();var cityFilled=(cityValue!==''&&cityValue!==cityLabel);var stateFilled=($('select#stateInput').val()!=='');if((cityFilled&&stateFilled)||(cityFilled&&!stateFilled)||(!cityFilled&&stateFilled)||(!isValidZip&&(value!=$(element).prev().text()))){return true;}}
return false;},zipCodeTN:function(value,element){var cityInput=$('input#cityInput');var cityValue=cityInput.val();var cityLabel=cityInput.prev().text();var cityFilled=(cityValue!==''&&cityValue!==cityLabel);var stateFilled=($('select#stateInput').val()!=='');var zipFilled=(value!==''&&value!==$(element).prev().text());var isValidZip=(!zipFilled)||/^\d{5}$|^\d{5}-\d{4}$/.test(value);if((cityFilled&&!stateFilled)||(!cityFilled&&stateFilled)||(!zipFilled&&cityFilled&&stateFilled)){return true;}
return isValidZip;},zipCodeIsNotValid:function(value){return false;},cityStateTN:function(value,element){var cityInput=$('input#cityInput');var cityLabel=cityInput.prev().text();var cityValue=cityInput.val();var isStateEmpty=($('select#stateInput').val()==='');var isCityEmpty=(cityValue===''||cityValue===cityLabel);var isOneEmpty=((isCityEmpty&&!isStateEmpty)||(!isCityEmpty&&isStateEmpty));if(isOneEmpty&&((isCityEmpty&&element.id=='cityInput')||(isStateEmpty&&element.id=='stateInput'))){return false;}
return true;},positiveInteger:function(value){return value===''||(/^0*[1-9]+\d*$/).test(value);},noSpecialCharacters:function(value){return value===''||!(/[\~\!\@\#\$\%\^\*\(\)\_\=\+\[\]\{\}\\\|\;\:\<\>\?]/).test(value);},minLength:function(value,element,additionalArgs){return value===''||$.trim(value).length>=additionalArgs[0];},prefixIsValid:function(){return _this.prefixIsValid;},requiredIfInFieldset:function(value,element,additionalArgs){var $element=$(element);if(!($element.closest('fieldset').hasClass(additionalArgs[0]))){return true;}
value=$.trim(value);var labelValue=$element.prev().text();return(value.length>0&&value!==labelValue);}};}};MVC.SystemController.extendViewScript(MVC.SystemController.getController('search').getViewScript('form'),Client.FormViewScript);
window.Client=window.Client||{};MVC.SystemController.extendViewScript(MVC.SystemController.getController('search').getViewScript('inputElements'),{});Client.DistanceZipInputElement={update:function(value,payload,params){var zipElement=this.element.find('#zipInput');if(params.zip){zipElement.val(params.zip);}else if(zipElement.val()==''){zipElement.val(EPD.Strings.Search.ZipLabel);}
SearchController.InputElementsViewScript.Utilities.updateSelect(this.element.find('#distanceInput'),payload,params.distance||25,null);return this;},reset:function(){this.element.find('input[type=text]').each(function(){var input=$(this);input.val(SearchController.InputElementsViewScript.Utilities.getDefaultValue(input));});this.element.find('#distanceInput').val('');return this;}};SearchController.InputElementsViewScript.DistanceZipInputElement=SearchController.InputElementsViewScript.DistanceZipInputElement.extend(Client.DistanceZipInputElement);Client.FullAddressInputElement={update:function(value,payload,params){if(params.street||params.city||params.state){this.element.find('#fullAddressFieldset').removeClass('invisible');this.element.find('#fullAddressLink').addClass('expanded');if(params.street){this.element.find('#streetInput').val(params.street);}
if(params.city){this.element.find('#cityInput').val(params.city);}}
SearchController.InputElementsViewScript.Utilities.updateSelect(this.element.find('#stateInput'),payload.StateList,params.state,'State');SearchController.InputElementsViewScript.Utilities.updateSelect(this.element.find('#countyInput'),payload.CountyList,params.county,'County');return this;},reset:function(){this.element.find('input[type=text]').each(function(){var input=$(this);input.val(SearchController.InputElementsViewScript.Utilities.getDefaultValue(input));});this.element.find('#stateInput, #countyInput').val('');return this;}};SearchController.InputElementsViewScript.FullAddressInputElement=SearchController.InputElementsViewScript.FullAddressInputElement.extend(Client.FullAddressInputElement);SearchController.InputElementsViewScript.Utilities.convertItem=function(item){if(typeof item=="object"){var code=item.ProviderTypeCode||item.ProductID||item.NetworkId||item.PlanCode||item.SpecialtyCode||item.AffiliationID||item.LanguageCode||item.GenderCode||item.ServiceCode||item.CountyCode||item.RadiusCode||item.ID;var name=item.ProviderTypeName||item.ProductName||item.NetworkName||item.PlanName||item.SpecialtyName||item.AffiliationName||item.LanguageName||item.GenderName||item.ServiceName||item.CountyName||item.RadiusName||item.Name;return{Code:typeof code==='string'?$.trim(code):code,Name:name};}else if(typeof item=="number"){return{Code:item,Name:item};}else{item=$.trim(item);return{Code:item,Name:item};}};SearchController.InputElementsViewScript.SelectANDORBottomInputElement=SearchController.InputElementsViewScript.SelectInputElement.extend();SearchController.InputElementsViewScript.SelectXORTopInputElement=SearchController.InputElementsViewScript.SelectInputElement.extend();
window.Client=window.Client||{};Client.ResultsController={defaultAction:function(params){var canvas=MVC.Application.getCanvas('main');if(canvas){MVC.Application.hideCanvas();MVC.Application.showCanvas('main');}else{MVC.SystemController.createRequest().setControllerId('home').setActionId('default').send();}
MVC.SystemController.createRequest().setControllerId('application').setActionId('block').send();if(!this.view.Strings){this.view.Strings=EPD.Strings.Results;}
this.view.TitleProviderType=params.providerTypeLabel;this.view.TitleHealthIssue=params.healthIssue;var maxResults=this.view.Strings.ConfigMaxResults;var searchParams={DirectoryRegion:params.region||null,ProviderType:params.providerType||null,Plan:params.plan||null,Product:params.product||null,Prefix:params.prefix||null,Network:params.network||null,LastName:params.lastName||null,ProviderName:params.name||null,SpecialtyCategories:params.specialtyCategories||null,Specialty:params.healthIssueId||null,IsAcceptingNewPatients:(typeof params.acceptsNewPatients=='boolean')?params.acceptsNewPatients:(params.acceptsNewPatients==='true'),Gender:null,SecondaryLanguage:params.language||null,Distance:params.distance||null,Latitude:params.latitude||0,Longitude:params.longitude||0,HospitalAffiliation:params.hospital||null,IsBoardCertified:(typeof params.boardCertified=='boolean')?params.boardCertified:(params.boardCertified==='true'),IsTopRated:(typeof params.topRated=='boolean')?params.topRated:(params.topRated==='true'),IsPCP:(typeof params.primaryCare=='boolean')?params.primaryCare:(params.primaryCare==='true'),IsBlueDistinctionCenterOfExcellence:(typeof params.blueDistinction=='boolean')?params.blueDistinction:(params.blueDistinction==='true'),IsInNetwork:false,IsAccreditedFacility:(typeof params.accreditedFacility=='boolean')?params.accreditedFacility:(params.accreditedFacility==='true'),IsNCQACertified:(typeof params.ncqaRecognition=='boolean')?params.ncqaRecognition:(params.ncqaRecognition==='true'),SortBy:null,MaxRows:maxResults,TotalRowCount:maxResults,RecordsPerPage:maxResults,PageNumber:1,Zip:params.zip,Street:params.street,City:params.city,County:params.county,State:params.state,Timestamp:params.t,Recognition:null,ServiceName:null,ServiceCounty:null};if(params.gender){searchParams.Gender=(params.gender==='Male')?'M':((params.gender==='Female')?'F':'');}
if(params.service){searchParams.ServiceName=params.service;}
if(params.serviceCounty){searchParams.ServiceCounty=params.serviceCounty;}
if(params.recognitions){searchParams.Recognition=params.recognitions;}
if(this.haveSameParams(searchParams)){this.isNewSearch=false;}else{this.view.SearchParams=searchParams;this.isNewSearch=true;this.pdfForSearchURL=null;}
this.titleAndNavigationAction(params);},listAction:function(params){if(!params.latitude&&!params.longitude&&params.latitude!==0&&params.longitude!==0){this.loadLatitudeAndLongitude(params);return;}
this.defaultAction(params);if(!this.view.ResultsManager){this.view.ResultsManager=$.extend({},MV.ResultsManager);this.view.ResultsManager.init({resultsPerPage:parseInt(this.view.Strings.ConfigResultsPerPage,10),resultsPerPageOptions:this.view.Strings.ConfigResultsPerPageOptions.split(/\s*,\s*/)});}
MVC.SystemController.createRequest().setControllerId('application').setActionId('addBreadCrumb').setParams({breadCrumbs:[{Id:'SearchResults',Link:this.view.Strings.SearchResultsLabel,Location:MVC.SystemController.getRequest().serialize(),Reset:true}]}).send();this.view.HaveHealthIssue=!!params.healthIssueId;this.view.ActivatedTab='Results';if(this.isNewSearch||!this.view.ResultColumns){this.callWS({WSObjectName:'EPD',WSMethodName:'GetProviderResults',params:this.view.SearchParams,callback:function(_this){var model=_this.getModel('GetProviderResults');_this.view.ResultsManager.setResults(model.findInData('Results'));_this.view.ResultColumns=model.findInData('ResultColumns');_this.view.MoreThanTotalRecords=model.findInData('HasMoreThanTotalRecords');_this.view.ResultsSortedBy=model.findInData('SortedBy');_this.view.render('default');_this.view.render('titleAndNavigation');_this.view.render('list');MV.EventsManager.fireEvent('Analytics.results.list',$.extend({'numberOfrecords':model.findInData('Results').length},_this.view.SearchParams,MVC.SystemController.getRequest().getParams()));},error:function(_this,error){error.Message=_this.view.Strings.ResultsError;_this.view.render('default');_this.view.render('titleAndNavigation');_this.renderError(error);}});}else{this.view.render('default');this.view.render('titleAndNavigation');this.view.render('list');this.deliverPDFForSearch();}}};MVC.SystemController.extendController(MVC.SystemController.getController('results'),Client.ResultsController);
window.Client=window.Client||{};Client.ListViewScript={load:function(){this.setLoadOnlyOnce(true);this.addContainer('list','#list').supplant(this.view.Strings);this.addContainer('resultTableContainer','#providerResultContainer');this.addContainer('disclaimer','.disclaimer');this.addContainer('urgentCareDisclaimer','#urgentCareDisclaimer');this.addContainer('paginationNavigation','.paginationNavigation');this.addContainer('paginationTally','.paginationTally');this.addTemplate('paginationTemplate','#paginationTemplate').supplant(this.view.Strings);this.addTemplate('paginationTallyTemplate','#paginationTallyTemplate').supplant(this.view.Strings);this.addContainer('resultsInfoText','#resultsInfoText');this.addContainer('compare','.compare');var $viewTabList=this.addContainer('viewTabList','.viewTabList');this.addTemplate('viewTabItem',$viewTabList.find('.viewTabItem'));$viewTabList.empty();this.addTemplate('colTemplate','#colTemplate');this.addTemplate('headerCellTemplate','#headerCellTemplate');this.addTemplate('dataCellTemplate','#dataCellTemplate');this.addTemplate('dataRowTemplate','#dataRowTemplate');this.addTemplate('resultsTableTemplate','#resultsTableTemplate');this.addTemplate('listItem','#listItem');this.addTemplate('listTemplate','#listTemplate');this.addTemplate('listItemBoardCertified','#listItemBoardCertified');this.addTemplate('boardCertifiedTemplate','#boardCertifiedTemplate');this.addTemplate('specialtyIconTemplate','#specialtyIconTemplate');this.addTemplate('recognitionItem','#recognitionItem');this.addTemplate('recognitionNotApplicableItem','#recognitionNotApplicableItem').supplant(this.view.Strings);this.addTemplate('recognitionsTemplate','#recognitionsTemplate');this.addTemplate('qualityCostItem','#qualityCostItem');this.addTemplate('qualityCostNotApplica
