function onInvokeError(c,b,a){alert(c+","+b+","+a)}function setSelected(a){$("#"+a.id+" option[value='"+a.value+"']").attr("selected","selected")}function setWaitCursor(){return $("body").css("cursor","wait")}function setDefaultCursor(){return $("body").css("cursor","default")}function sizeOfMedia(b){var a=b/1024;if(a<1000){return Math.floor(a)+" KB"}else{return(a/1024).toFixed(1)+" MB"}}var global={mapView:{},timelineView:{},numPosts:0},wl_postDefaults={dataType:"json",timeout:30*1000,success:onPostSuccess,error:onPostError,async:true,type:"POST"};function postUpdate(a,c,b){b=$.extend(false,{data:c,url:basePostUrl+a+"/"},wl_postDefaults,b);$.ajax(b)}function onPostSuccess(b,a){var c=this;if(b.result){alert(b.result);return false}else{if(c.jdsReload){global.triggerUpdate({reload:true,reset:c.jdsReset,source:c.jdsReloadSource})}}}function onPostError(a,c,b){alert("update failed '"+a.url+"' status = "+a.statusText)}function handleFormResponse(b,a,d){var e=b.result,c=$(d).find("div.form-summary span");if(!e){c.html(b.key||"Success!").parent().addClass("success-summary").removeClass("error-summary").slideDown(300);return true}else{if(c.length==0){alert(e)}else{c.html(e).parent().addClass("error-summary").slideDown(300)}return false}}var DefaultFormValidateOptions={errorPlacement:function(b,c){var a=c.parent("li");b.appendTo(a)},error:function(b,c){var a=c.parent("li");a.addClass("error");c.removeClass("success")},success:function(b){var a=b.parent("li");a.removeClass("error");b.html("&nbsp;").addClass("success")},submitHandler:function(a){$(a).ajaxSubmit({dataType:"json",cache:false,beforeSubmit:function(){$(a).find(".error-summary").slideUp(200)},success:function(c,b,d){setTimeout(function(){handleFormResponse(c,b,a)},1200)}})}};function debugText(b){var a=$("#debugP");if(a){a.html(a.html()+"<br /> "+b)}}function getScript(a,b){return jQuery.ajax({type:"GET",url:a,success:b,cache:true,dataType:"script",error:scriptLoadError})}function scriptLoadError(a,c,b){debugText("failed to load script file, status = "+c)}function cloneObject(c,b){for(var a in c){if(b){this[a]=c[a]}else{if(typeof c[a]=="object"){this[a]=new cloneObject(c[a])}else{this[a]=c[a]}}}}function listOfIds(a,d){var c=new Array(a.length),b;for(b=0;b<a.length;b++){c[b]=a[b][d]}return c.join(",")}var addedRules;function validateSetValueTo(b,a,c){$(a).focus(function(){});return true}function initForm(b){if(!b.submitHandler){b.submitHandler=function(e){doFormSubmit(e,b)}}var d=$.extend({},DefaultFormValidateOptions,b),c,a=b.$form;if(!a){a=$("#"+b.formId)}if(jQuery.validator!=undefined){if(!addedRules){addedRules=true;jQuery.validator.addMethod("setto",validateSetValueTo)}a.validate(d)}if(b.close){$.event.add(a[0],"finished",b.close)}if(b.focus){c=a.find("#"+b.focus);if(c.length==0){c=a.find("[name="+b.focus+"]")}if(c.length==0){debugText("can't find focus field "+b.focus)}else{setTimeout(function(){c.focus()},0)}}return a}function doFormSubmit(b,c){var a=this;$(b).ajaxSubmit({dataType:"json",cache:false,clearForm:c.clearForm,beforeSubmit:function(f,e,d){return onFormBeforeSubmit(f,b,d,a)},success:function(e,d){return onFormSubmitSuccess(b,a,e,d,c)}});global.numPosts++}function onFormBeforeSubmit(d,c,b,a){$(c).find(".error-summary").slideUp(200);$.event.trigger("busy",a,c)}function onFormSubmitSuccess(d,c,b,a,e){$.event.trigger("unbusy",c,d);if(handleFormResponse(b,a,d)){$.event.trigger("finished",c,d);if(e.jdsReload){global.triggerUpdate({reload:true,reset:e.jdsReset})}}}function onSubmitInlineForm(a){var b=$("#"+a).find("form");b.submit()}function startTimer(a){if(a.timer){clearTimeout(a.timer)}a.timer=setTimeout(function(){a.timer=0;a.timeout(a)},1200)}function clearTimer(a){if(a.timer){clearTimeout(a.timer);a.timer=0}}function onAutoInputEnterCheck(b,a){if(b.which==13){a.timeout(a,true);b.preventDefault();return false}}function onAutoInputBlur(a){clearTimer(a);if(a.showTextTip){if(a.$input.val()==""){a.$input.addClass("prompt-mode").val(a.defaultValue)}else{a.$input.select()}}else{a.timeout(a)}}function onAutoInputFocus(a){clearTimer(a);if(a.showTextTip){if(a.$input.val()==a.defaultValue){a.$input.removeClass("prompt-mode").val("")}else{a.$input.select()}}}function initAutoInput(b){b.timer=0;var e=$("#"+b.parentId);if(e.length!=1){throw"invalid id for autoInput init:"+b.parentId}var a=b.$input=e.find("#"+b.inputId);if(a.length!=1){throw"can't find title input"}var d=b.$imgButton=e.find("#"+b.imgButtonId);if(d.length!=1){throw"can't find title button"}if(b.focus){a.select();a.focus()}b.defaultValue=a.val();a.focus(function(){onAutoInputFocus(b)});a.blur(function(){onAutoInputBlur(b)});a.keydown(function(f){return onAutoInputEnterCheck(f,b)});a.keyup(function(f){startTimer(b)});b.imageButtonSrc=d.attr("src");d.click(function(){b.timeout(b);return false});if(b.resetImgButtonId){var c=b.$resetImgButton=e.find("#"+b.resetImgButtonId);if(c.length!=1){throw"can't find resetImgButton"}c.click(function(){b.reset(b);return false})}}function toggleFormWrapper(a){a.$formWrap.toggleClass("hidden")}function initTitleEditbox(a){a.timeout=doUpdateTitle;a.inputId="title";a.imgButtonId="utb";initAutoInput(a)}function doUpdateTitle(b){var a=b.$input.val();if(a!=b.defaultValue){throw"Not Implemented"}}function onUpdatedTitle(a){a.$imgButton.attr("src",a.imageButtonSrc)}function nada(){}var OpenPanelId="open-new",DefaultLoadControlOptions={clearPanel:false,timeout:30*1000},baseMarkupUrl="";function loadControl(c,e,f,b){if(!c){c=OpenPanelId}var d=$.extend({baseUrl:baseMarkupUrl},DefaultLoadControlOptions,b),a=(typeof c=="object")?c:$("#"+c);if(a.length!=1){debugText("panel not valid: "+c)}else{if(d.clearPanel){a.html(d.clearPanel)}$.ajax({url:e,type:(d.baseUrl.indexOf("Invoke")>0)?"POST":"GET",async:true,timeout:d.timeout,data:f,dataType:"html",success:function(g,h){if(d.filterFn){g=d.filterFn(g)}if(d.appendTo==true){a.append(g)}else{a.html(g)}},error:function(g,j,i){var h="failed to load control '"+e+"' status = "+g.statusText;if(d.appendTo==true){a.append(h)}else{a.html(h)}}})}}function popupControl(c,b,d,a){if(!a){a={}}a.ucName=b;a.data=d;if(a.triggerUpdate!=undefined){global.numPosts=0;a.onClosed=function(){triggerUpdate(a)}}$(c.target).formpopup(a);return false}function triggerUpdate(a){if(a.triggerUpdate=="always"||global.numPosts>0){setWaitCursor();setTimeout(function(){global.triggerUpdate({reload:true,view:a});setDefaultCursor()},0)}};