function idSanitize(containerSelector,allElements){var list=(allElements)?$(containerSelector).find("*"):$(containerSelector).find("select, input, textarea");list.each(function(){var t=$(this);var name=(t.attr("name"))?t.attr("name"):"";var id=(t.attr("id"))?t.attr("id"):"";if(name.length>0||id.length>0){if(name.length>0&&id.length==0){id=name;}else if(name.length==0&&id.length>0){name=id;}
id=sanitizeID(id);t.attr("name",name).attr("id",id);}});}
function sanitizeID(id){return id.replace(/[`~!@#$%^&*()+={}\[\]\\'",\/? <>;]/gi,"_");}
function toCurrency(amount){var i=parseFloat(amount);if(isNaN(i)){i=0.00;}
var minus='';if(i<0.0){minus='-';}
i=parseInt(Math.abs(i)*100)/100;s=new String(i);if(s.indexOf('.')<0){s+='.00';}
if(s.indexOf('.')==(s.length-2)){s+='0';}
s=minus+s;return s;}
function ValidateFormValues(contextSelector,sanitizeIDs){var context=(contextSelector)?$(contextSelector):$("body form");var req=context.find("#required");var useID=(req.length>0);var rTxt=(useID)?req.val():"select,input,textarea";var rList=$.map(rTxt.split(","),function(n){n=$.trim(n);if(n=="")return n;if(sanitizeIDs)n=sanitizeID(n);if(useID)n="*[id='"+n+"']";return n;});var i,j,k,name;for(var r=0;r<rList.length;r++){i=context.find(rList[r]);if(rList[r].length>0&&i.length>0){name=(i.attr("name")||i.attr("id"))||"";switch(i[0].nodeName){case"SELECT":j=i.find("option:selected");if(j.length==0||(j.val().length==0&&j.text().length==0)){alert("Required field missing: "+name);i[0].focus();return false;}
break;case"INPUT":if(i.attr("type")&&i.attr("type")=="radio"){j=$("input[type='radio']").filter("*[name='"+name+"']").filter(":checked");if(j.length==0){alert("Required field missing: "+name);i[0].focus();return false;}}else if(i.attr("type")&&i.attr("type")=="checkbox"){if(!i.is(":checked")){alert("Required field missing: "+name);i[0].focus();return false;}}else{if(i.val().length==0){alert("Required field missing: "+name);i[0].focus();return false;}}
break;case"INPUT","SELECT","TEXTAREA":if(i.val().length==0){alert("Required field missing: "+name);i[0].focus();return false;}
break;default:if(i[0].value&&i.val().length==0){alert("Required field missing: "+name);i[0].focus();return false;}else if(!i.html()){alert("Required field missing: "+name);try{i[0].scrollIntoView();}catch(e){}
return false;}
break;}}else{if(rList[r]&&$.trim(rList[r])!=""){alert("Invalid field: "+rList[r]);return false;}}}
return true;}
function jsonToString(jsonObj,keyName){var s="";$.each(jsonObj,function(key,val){if(!keyName||key==keyName)
s+=key+"='"+val+"', ";});return s;}
