;(function($){$.fn.ajaxSubmit=function(options){if(!this.length){log('ajaxSubmit: skipping submit process - no element selected');return this;}
if(typeof options=='function')
options={success:options};options=$.extend({url:this.attr('action')||window.location.toString(),type:this.attr('method')||'GET'},options||{});var veto={};this.trigger('form-pre-serialize',[this,options,veto]);if(veto.veto){log('ajaxSubmit: submit vetoed via form-pre-serialize trigger');return this;}
if(options.beforeSerialize&&options.beforeSerialize(this,options)===false){log('ajaxSubmit: submit aborted via beforeSerialize callback');return this;}
var a=this.formToArray(options.semantic);if(options.data){options.extraData=options.data;for(var n in options.data){if(options.data[n]instanceof Array){for(var k in options.data[n])
a.push({name:n,value:options.data[n][k]})}
else
a.push({name:n,value:options.data[n]});}}
if(options.beforeSubmit&&options.beforeSubmit(a,this,options)===false){log('ajaxSubmit: submit aborted via beforeSubmit callback');return this;}
this.trigger('form-submit-validate',[a,this,options,veto]);if(veto.veto){log('ajaxSubmit: submit vetoed via form-submit-validate trigger');return this;}
var q=$.param(a);if(options.type.toUpperCase()=='GET'){options.url+=(options.url.indexOf('?')>=0?'&':'?')+q;options.data=null;}
else
options.data=q;var $form=this,callbacks=[];if(options.resetForm)callbacks.push(function(){$form.resetForm();});if(options.clearForm)callbacks.push(function(){$form.clearForm();});if(!options.dataType&&options.target){var oldSuccess=options.success||function(){};callbacks.push(function(data){$(options.target).html(data).each(oldSuccess,arguments);});}
else if(options.success)
callbacks.push(options.success);options.success=function(data,status){for(var i=0,max=callbacks.length;i<max;i++)
callbacks[i].apply(options,[data,status,$form]);};var files=$('input:file',this).fieldValue();var found=false;for(var j=0;j<files.length;j++)
if(files[j])
found=true;if(options.iframe||found){if(options.closeKeepAlive)
$.get(options.closeKeepAlive,fileUpload);else
fileUpload();}
else
$.ajax(options);this.trigger('form-submit-notify',[this,options]);return this;function fileUpload(){var form=$form[0];if($(':input[name=submit]',form).length){alert('Error: Form elements must not be named "submit".');return;}
var opts=$.extend({},$.ajaxSettings,options);var s=jQuery.extend(true,{},$.extend(true,{},$.ajaxSettings),opts);var id='jqFormIO'+(new Date().getTime());var $io=$('<iframe id="'+id+'" name="'+id+'" src="about:blank" />');var io=$io[0];$io.css({position:'absolute',top:'-1000px',left:'-1000px'});var xhr={aborted:0,responseText:null,responseXML:null,status:0,statusText:'n/a',getAllResponseHeaders:function(){},getResponseHeader:function(){},setRequestHeader:function(){},abort:function(){this.aborted=1;$io.attr('src','about:blank');}};var g=opts.global;if(g&&!$.active++)$.event.trigger("ajaxStart");if(g)$.event.trigger("ajaxSend",[xhr,opts]);if(s.beforeSend&&s.beforeSend(xhr,s)===false){s.global&&jQuery.active--;return;}
if(xhr.aborted)
return;var cbInvoked=0;var timedOut=0;var sub=form.clk;if(sub){var n=sub.name;if(n&&!sub.disabled){options.extraData=options.extraData||{};options.extraData[n]=sub.value;if(sub.type=="image"){options.extraData[name+'.x']=form.clk_x;options.extraData[name+'.y']=form.clk_y;}}}
setTimeout(function(){var t=$form.attr('target'),a=$form.attr('action');form.setAttribute('target',id);if(form.getAttribute('method')!='POST')
form.setAttribute('method','POST');if(form.getAttribute('action')!=opts.url)
form.setAttribute('action',opts.url);if(!options.skipEncodingOverride){$form.attr({encoding:'multipart/form-data',enctype:'multipart/form-data'});}
if(opts.timeout)
setTimeout(function(){timedOut=true;cb();},opts.timeout);var extraInputs=[];try{if(options.extraData)
for(var n in options.extraData)
extraInputs.push($('<input type="hidden" name="'+n+'" value="'+options.extraData[n]+'" />')
.appendTo(form)[0]);$io.appendTo('body');io.attachEvent?io.attachEvent('onload',cb):io.addEventListener('load',cb,false);form.submit();}
finally{form.setAttribute('action',a);t?form.setAttribute('target',t):$form.removeAttr('target');$(extraInputs).remove();}},10);var nullCheckFlag=0;function cb(){if(cbInvoked++)return;io.detachEvent?io.detachEvent('onload',cb):io.removeEventListener('load',cb,false);var ok=true;try{if(timedOut)throw'timeout';var data,doc;doc=io.contentWindow?io.contentWindow.document:io.contentDocument?io.contentDocument:io.document;if((doc.body==null||doc.body.innerHTML=='')&&!nullCheckFlag){nullCheckFlag=1;cbInvoked--;setTimeout(cb,100);return;}
xhr.responseText=doc.body?doc.body.innerHTML:null;xhr.responseXML=doc.XMLDocument?doc.XMLDocument:doc;xhr.getResponseHeader=function(header){var headers={'content-type':opts.dataType};return headers[header];};if(opts.dataType=='json'||opts.dataType=='script'){var ta=doc.getElementsByTagName('textarea')[0];xhr.responseText=ta?ta.value:xhr.responseText;}
else if(opts.dataType=='xml'&&!xhr.responseXML&&xhr.responseText!=null){xhr.responseXML=toXml(xhr.responseText);}
data=$.httpData(xhr,opts.dataType);}
catch(e){ok=false;$.handleError(opts,xhr,'error',e);}
if(ok){opts.success(data,'success');if(g)$.event.trigger("ajaxSuccess",[xhr,opts]);}
if(g)$.event.trigger("ajaxComplete",[xhr,opts]);if(g&&!--$.active)$.event.trigger("ajaxStop");if(opts.complete)opts.complete(xhr,ok?'success':'error');setTimeout(function(){$io.remove();xhr.responseXML=null;},100);};function toXml(s,doc){if(window.ActiveXObject){doc=new ActiveXObject('Microsoft.XMLDOM');doc.async='false';doc.loadXML(s);}
else
doc=(new DOMParser()).parseFromString(s,'text/xml');return(doc&&doc.documentElement&&doc.documentElement.tagName!='parsererror')?doc:null;};};};$.fn.ajaxForm=function(options){return this.ajaxFormUnbind().bind('submit.form-plugin',function(){$(this).ajaxSubmit(options);return false;}).each(function(){$(":submit,input:image",this).bind('click.form-plugin',function(e){var form=this.form;form.clk=this;if(this.type=='image'){if(e.offsetX!=undefined){form.clk_x=e.offsetX;form.clk_y=e.offsetY;}else if(typeof $.fn.offset=='function'){var offset=$(this).offset();form.clk_x=e.pageX-offset.left;form.clk_y=e.pageY-offset.top;}else{form.clk_x=e.pageX-this.offsetLeft;form.clk_y=e.pageY-this.offsetTop;}}
setTimeout(function(){form.clk=form.clk_x=form.clk_y=null;},10);});});};$.fn.ajaxFormUnbind=function(){this.unbind('submit.form-plugin');return this.each(function(){$(":submit,input:image",this).unbind('click.form-plugin');});};$.fn.formToArray=function(semantic){var a=[];if(this.length==0)return a;var form=this[0];var els=semantic?form.getElementsByTagName('*'):form.elements;if(!els)return a;for(var i=0,max=els.length;i<max;i++){var el=els[i];var n=el.name;if(!n)continue;if(semantic&&form.clk&&el.type=="image"){if(!el.disabled&&form.clk==el)
a.push({name:n+'.x',value:form.clk_x},{name:n+'.y',value:form.clk_y});continue;}
var v=$.fieldValue(el,true);if(v&&v.constructor==Array){for(var j=0,jmax=v.length;j<jmax;j++)
a.push({name:n,value:v[j]});}
else if(v!==null&&typeof v!='undefined')
a.push({name:n,value:v});}
if(!semantic&&form.clk){var inputs=form.getElementsByTagName("input");for(var i=0,max=inputs.length;i<max;i++){var input=inputs[i];var n=input.name;if(n&&!input.disabled&&input.type=="image"&&form.clk==input)
a.push({name:n+'.x',value:form.clk_x},{name:n+'.y',value:form.clk_y});}}
return a;};$.fn.formSerialize=function(semantic){return $.param(this.formToArray(semantic));};$.fn.fieldSerialize=function(successful){var a=[];this.each(function(){var n=this.name;if(!n)return;var v=$.fieldValue(this,successful);if(v&&v.constructor==Array){for(var i=0,max=v.length;i<max;i++)
a.push({name:n,value:v[i]});}
else if(v!==null&&typeof v!='undefined')
a.push({name:this.name,value:v});});return $.param(a);};$.fn.fieldValue=function(successful){for(var val=[],i=0,max=this.length;i<max;i++){var el=this[i];var v=$.fieldValue(el,successful);if(v===null||typeof v=='undefined'||(v.constructor==Array&&!v.length))
continue;v.constructor==Array?$.merge(val,v):val.push(v);}
return val;};$.fieldValue=function(el,successful){var n=el.name,t=el.type,tag=el.tagName.toLowerCase();if(typeof successful=='undefined')successful=true;if(successful&&(!n||el.disabled||t=='reset'||t=='button'||(t=='checkbox'||t=='radio')&&!el.checked||(t=='submit'||t=='image')&&el.form&&el.form.clk!=el||tag=='select'&&el.selectedIndex==-1))
return null;if(tag=='select'){var index=el.selectedIndex;if(index<0)return null;var a=[],ops=el.options;var one=(t=='select-one');var max=(one?index+1:ops.length);for(var i=(one?index:0);i<max;i++){var op=ops[i];if(op.selected){var v=op.value;if(!v)
v=(op.attributes&&op.attributes['value']&&!(op.attributes['value'].specified))?op.text:op.value;if(one)return v;a.push(v);}}
return a;}
return el.value;};$.fn.clearForm=function(){return this.each(function(){$('input,select,textarea',this).clearFields();});};$.fn.clearFields=$.fn.clearInputs=function(){return this.each(function(){var t=this.type,tag=this.tagName.toLowerCase();if(t=='text'||t=='password'||tag=='textarea')
this.value='';else if(t=='checkbox'||t=='radio')
this.checked=false;else if(tag=='select')
this.selectedIndex=-1;});};$.fn.resetForm=function(){return this.each(function(){if(typeof this.reset=='function'||(typeof this.reset=='object'&&!this.reset.nodeType))
this.reset();});};$.fn.enable=function(b){if(b==undefined)b=true;return this.each(function(){this.disabled=!b});};$.fn.selected=function(select){if(select==undefined)select=true;return this.each(function(){var t=this.type;if(t=='checkbox'||t=='radio')
this.checked=select;else if(this.tagName.toLowerCase()=='option'){var $sel=$(this).parent('select');if(select&&$sel[0]&&$sel[0].type=='select-one'){$sel.find('option').selected(false);}
this.selected=select;}});};function log(){if($.fn.ajaxSubmit.debug&&window.console&&window.console.log)
window.console.log('[jquery.form] '+Array.prototype.join.call(arguments,''));};})(jQuery);var gDisableJSValidation=false;var gStaticMessages=[];var gJsHandlers=[];var gValidateRules=new Object;var gMessages=new Object;var pageloadflag=true;var lasthash="";if(location.hash){Utils.handlePageload(location.hash);}
jQuery(function(){if(Global.supportHistoryPlugin){$.historyInit(Utils.handlePageload);}
$.ajaxSetup({cache:false,dataFilter:Global.sanitizeResponseData});$("form").submit(function(){return FormUtils.validateForm(this);});$.fn.clearForm=FormUtils.clearForm;$("#loading").hide();$("#loading").ajaxSend(function(event,xhr,options){xhr.setRequestHeader('Fw-Ajax',1);$(this).show();});$("#loading").ajaxComplete(function(event,xhr,options){$(this).hide();if(Global.pendingJs.length>0){var js=Global.pendingJs.pop();eval(js);}});$("#loading").ajaxError(function(event,request,settings){Global.handleAjaxError(request.responseText,settings.url);return false;});$(".alpha_browser .page").live("click",function(){var letter=$(this).text().toLowerCase();var parent=$(this).parents(".alpha_browser").get(0);if($(parent).hasClass("primary")){if(Global.supportHistoryPlugin){Global.updateHash("letter",[letter]);}else{Global.loadAlphaPage(parent,letter);}}else{Global.loadAlphaPage(parent,letter);}
return false;});$(".pagination .page, .pagination_prevnext .page").live("click",function(){var page=this.id.substr(6);var parent=$(this).parents(".pagination, .pagination_prevnext").get(0);if($(parent).hasClass("primary")){if(!$(parent).hasClass("pgn_ajax")){return true;}
if(Global.supportHistoryPlugin){Global.updateHash("page",[page]);}else{Global.loadNumericPage(parent,page);}}else{Global.loadNumericPage(parent,page);}
return false;});if($("#debugger_details").length>0){Debug.handleDebugEvents();}});var Global={supportHistoryPlugin:false,dialogElement:null,pendingJs:[],executedHandlers:[],sanitizeResponseData:function(data,type){if(data.indexOf("<!--FW_SEPARATOR-->")<=0)return data;var temp=data.split("<!--FW_SEPARATOR-->");var fwdata=temp[0];data=temp[1];if(fwdata.match(/[\s\S]*<!--FW_DEBUG-->[\s\S]*/)){var debugData=fwdata.replace(/^[\s\S]*?<!--FW_DEBUG-->([\s\S]*?)<!--FW_DEBUG-->[\s\S]*?$/,"$1");if(debugData){$("#fw_debug_ajax_actions").append(debugData);}}
if(fwdata.match(/[\s\S]*<!--FW_JS-->[\s\S]*/)){var js=fwdata.replace(/^[\s\S]*?<!--FW_JS-->([\s\S]*?)<!--FW_JS-->[\s\S]*?$/,"$1");if(js){Global.pendingJs.push(js);}}
return data;},executeJsHandler:function(handler,alwaysExec){if(!alwaysExec&&jQuery.inArray(handler,Global.executedHandlers)!=-1)
return;if(handler=='')
return;eval(handler+'()');if(jQuery.inArray(handler,Global.executedHandlers)==-1)
Global.executedHandlers.push(handler);},updateHash:function(action,params){var hash=location.hash.replace(/^#\/?/,"").replace(/\/?$/,"/");if(action=='page'){hash=hash.replace(/page\/\d+/,"")+"page/"+params[0];}
if(action=='letter'){hash=hash.replace(/page\/\d+/,"");hash=hash.replace(/letter\/[\w-09]+/,"")+"letter/"+params[0];}
if(location.hash!="#"+hash){$.historyLoad(hash);}
return false;},getMsg:function(msg_id,args){arg_array=Utils.is_array(args);msg=gStaticMessages[msg_id];if(arg_array){for(var i=0;i<args.length;i++){msg=msg.replace("{"+(i+1)+"}",args[i]);}}else{msg=msg.replace("{1}",args);}
return msg;},alertMsg:function(msg_id,args){alert(Global.getMsg(msg_id,args));},confirmMsg:function(msg_id,args){return confirm(Global.getMsg(msg_id,args));},extractValidateRules:function(){if($("#gValidateRules").length==0)
return;var rules=window["eval"]("("+$("#gValidateRules").text()+")");for(var action in rules){gValidateRules[action]=rules[action];}
$("#gValidateRules").remove();},getAction:function(action,params,callback,customLoader){var actionUrl=URL_PREFIX_AJAX+action;return jQuery.get(actionUrl,params,function(data){var ret=Global.handleAjaxError(data,action);if(!ret)
return;if(callback)
callback(data);});},postAction:function(action,params,callback){var actionUrl=URL_PREFIX_AJAX+action;return jQuery.post(actionUrl,params,function(data){var ret=Global.handleAjaxError(data,action);if(!ret)
return;if(callback)
callback(data);});},getJSONAction:function(action,params,callback){var actionUrl=URL_PREFIX_AJAX+action;return jQuery.getJSON(actionUrl,params,function(data){var error_flag=false;for(var i in data['messages']){if(data['messages'][i]['type']=='E'){error_flag=true;}}
for(var i in data['verrors']){error_flag=true;}
Validation.displayMessages(action,data['messages'],true);for(var h in data['handlers']){var alwaysExec=data['handlers'][h];Global.executeJsHandler(handler,alwaysExec);}
if(callback&&!error_flag){callback(data);}});},loadAction:function(target,action,params,callback){var actionUrl=URL_PREFIX_AJAX+action;return jQuery.get(actionUrl,params,function(data){var ret=Global.handleAjaxError(data,action);if(!ret)
return;$(target).html(data);if(callback){callback(data);}});},ajaxSubmitAction:function(form_id,callback){var form=document.getElementById(form_id);var action=Global.getFormAction(form);var ret=FormUtils.validateForm(form);if(!ret)
return;$(form).ajaxSubmit({success:function(data){var ret=Global.handleAjaxError(data,action);if(!ret)
return;if(callback){callback(data);}}});},ajaxSubmitJSON:function(form_id,callback,errorcallback){var form=document.getElementById(form_id);var ret=FormUtils.validateForm(form);var action=Global.getFormAction(form);if(!ret){return;}
$(form).ajaxSubmit({dataType:'json',success:function(data){var error_flag=false;for(i in data['messages']){if(data['messages'][i]['type']=='E'){error_flag=true;}}
for(i in data['verrors']){error_flag=true;}
Validation.displayMessages(action,data['messages'],true);for(var h in data['handlers']){var alwaysExec=data['handlers'][h];Global.executeJsHandler(handler,alwaysExec);}
if(errorcallback&&error_flag){errorcallback(data);}
if(callback&&!error_flag){callback(data);}},error:function(data){if(errorcallback){errorcallback(data);}}});},handleAjaxError:function(data,url){if(!data)
return true;if(data.match(/FW_PHP_ERROR/)){var error=data.replace(/<!--FW_PHP_ERROR-->/g,'');alert("Oops! Something went wrong. Please try again.");return false;}else if(data.match(/FW_PHP_EXCEPTION/)){alert("Oops! Something went wrong. Please try again.");return false;}else if(data.match(/FW_AJAX_REDIRECT/)){var redirect_url=data.replace(/.*<!--FW_AJAX_REDIRECT-->(.*?)<!--FW_AJAX_REDIRECT-->.*/m,"$1");window.location.href=redirect_url;return false;}
return true;},clearActionMessages:function(action){$(".alert, .alertbox").each(function(){if(!this.className
.match("m_"+action.toLowerCase()+"-")){return;}
$(this).html("");$(this).hide();$(this).parents('form.normal').find('label').removeClass('error_label');});},loadNumericPage:function(elem,page){if($(elem).length==0)
return;var container=$(elem).parents(".container").get(0);if($(elem).hasClass("pgn_scrolltop")){if(jQuery().scrollTo){$.scrollTo($(container));}}
var primary=$(elem).hasClass("primary")?1:0;var action=$(elem).find(".pgn_action").text();Global.loadAction($(container),action,{page:page,_primary:primary},function(){});},loadAlphaPage:function(elem,letter){if($(elem).length==0)
return;var container=$(elem).parents(".container").get(0);var action=$(elem).find(".pgn_action").text();Global.loadAction($(container),action,{letter:letter},function(){});},alertObj:function(obj){var output="";for(var i in obj){output+=i+"="+obj[i];}},getFormAction:function(form){var action=form.action;if(!action){var path=location.pathname;action=path.replace(/^(\w+).*/,"$1");}
action=action.toLowerCase();action=action.replace(/(\w+)\?/,"$1");action=action.replace(/^.*?(\w+)$/g,"$1");return action;},typeAhead:function($input,func,minChars,maxChars,delay){var timeout=false;if($.browser.mozilla)
$input.keypress(processKey);else
$input.keydown(processKey);function processKey(e){if(($(this).val().length<minChars-1)||($(this).val().length>maxChars-1))
return;if(e.which>=32&&e.which<127||e.which==8){if(timeout)
clearTimeout(timeout);timeout=setTimeout(func,delay);}}},dialog:function(jelem,params){if(Global.dialogElement!=null){Global.closeDialog();}
if(params==null){params={};}
if(params.width==null){params.width=jelem.width();}
if(params.minHeight==null){params.minHeight=50;}
params.draggable=false;params.modal=true;jelem.dialog(params).dialog('open');if(params.padding==null){params.padding=20;}
$(".ui-dialog").css("padding",params.padding);if(params.top!=null){$(".ui-dialog").css("top",params.top);}else{if($(window).height()<=$(".ui-dialog").height()+20){$(".ui-dialog").css("margin-top",10);}}
Global.dialogElement=jelem;},closeDialog:function(){if(Global.dialogElement!=null){Global.dialogElement.dialog('destroy');Global.dialogElement.remove();Global.dialogElement=null;}
return false;},actionDialog:function(msg,callbacks,params){$("#action_dialog").remove();var html='<div id="action_dialog"><div id="action_dialog_msg">'+msg+'</div>';if(callbacks){for(var action in callbacks){html+='<a id="action_dialog_'+action+'" href="javascript:void(0);" class="btn">'+action+'</a>';}}
if(params==null){params={};}
if(params.width==null)
params.width=300;Global.dialog($(html),params);if(callbacks){for(var action in callbacks){var cb=callbacks[action];$("#action_dialog_"+action).click(cb);}}},htmlSpecialCharsEncode:function(string){string=string.replace(/\&/g,"&amp;");string=string.replace(/>/g,"&gt;");string=string.replace(/</g,"&lt;");string=string.replace(/\"/g,"&quot;");string=string.replace(/\'/g,"&#39;");return string;},htmlSpecialCharsDecode:function(string){string=string.replace(/\&gt;/g,">");string=string.replace(/\&lt;/g,"<");string=string.replace(/\&quot;/g,"\"");string=string.replace(/\&#039;/g,"'");string=string.replace(/\&#39;/g,"'");string=string.replace(/\&apos;/g,"'");string=string.replace(/\&amp;/g,"&");return string;}};var Validation={validateAction:function(form){if(gDisableJSValidation)
return true;var action=Global.getFormAction(form);var validateRules=gValidateRules[action];var ret=true;for(var elem in validateRules){var elemRules=validateRules[elem];if(elemRules!=null){ret1=this.validateElem(action,form,elem,elemRules);ret=ret&&ret1;}}
return ret;},validateElem:function(action,form,elem,rules){jform=$(form);jelem=jform.find(":input[name='"+elem+"']");var required=true;var label=elem;var jLabel=jform.find("label[for='"+elem+"']");if(jLabel){label=jLabel.text();}
if(!label){label=elem;}
for(var id in rules){var rule=rules[id];var message=rule['message'];var type=rule['rule'];var args=rule['args'];message=message.replace("{label}",label);if(type=='matchOther'){var otherLabel=jform.find("label[for='"+args[0]+"']");if(otherLabel){otherLabel=otherLabel.text();}else{otherLabel=elem;}
message=message.replace("{label1}",otherLabel);}
for(var i=0;i<args.length;i++){message=message.replace("{"+(i+1)+"}",args[i]);}
if(required&&jQuery.trim(jelem.val())==""){this.displayActionMessage(action,'-e-'+elem,message,'E','');return false;}
if(!this.validateElemType(jform,jelem,type,args)){this.displayActionMessage(action,'-e-'+elem,message,'E','');return false;}}
return true;},validateElemType:function(jform,jelem,type,args){if(type=='alphanumeric'){if(jelem.val().match(/[^\d\w]/i)){return false;}}else if(type=='postalcode'){if(jelem.val().match(/[^\d\w\s-]/i)){return false;}}else if(type=='minLength'){if(jelem.val().length<args[0]){return false;}}else if(type=='maxLength'){if(jelem.val().length>args[0]){return false;}}else if(type=='matchOther'){var jOther=jform.find(":input[name='"+args[0]+"']");if(jelem.val()!=jOther.val()){return false;}}else if(type=='ip'){var bytes=jelem.val().split('.');if(!bytes||bytes.length!=4)
return false;for(var i in bytes){var byte1=bytes[i];if(isNaN(byte1)||byte1<0||byte1>255){return false;}}}else if(type=='email'){return/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i
.test(jelem.val());}else if(type=='required'){if(jQuery.trim(jelem.val())==''){return false;}}
return true;},displayMessages:function(action,messages,ajax){var alert_flag=false;for(var msg_id1 in messages){var msg_style=messages[msg_id1]['style'];if(msg_style=='A'){alert_flag=true;}}
if(alert_flag){if($("#alert_messages").length>0){$("#alert_messages").html("");}else{$("body").append('<div id="alert_messages"></div>');}}
jQuery(".m_global").html("");jQuery(".m_global").hide("");if(ajax){Global.clearActionMessages(action);}
for(var msg_id1 in messages){var msg_str=messages[msg_id1]['msg'];var msg_type=messages[msg_id1]['type'];var msg_style=messages[msg_id1]['style'];var global_flag=messages[msg_id1]['global'];if(!ajax&&!msg_style)
continue;if(global_flag){this.displayGlobalMessage(msg_str,msg_type);}else{this.displayActionMessage(action,msg_id1,msg_str,msg_type,msg_style);}}
if(alert_flag){if(jQuery().dialog){Global.dialog($("#alert_messages"),{buttons:{"Ok":function(){Global.closeDialog();}},closeText:''});}else{Global.modal($("#alert_messages"));}}},displayGlobalMessage:function(msg_str,msg_type){var error_class="";if(msg_type=='S'){error_class="success";}else if(msg_type=='W'){error_class="warning";}else if(msg_type=='E'){error_class="error";}else if(msg_type=='I'){error_class="info";}
$(".m_global").append("<div class='"+error_class+"'>"+msg_str+"</div>");$(".m_global").show();},displayActionMessage:function(action,msg_id,msg_str,msg_type,msg_style){var elem_id=".m_"+action.toLowerCase()+"-"+msg_id;var rest_id=".m_"+action.toLowerCase()+"-REST";var all_id=".m_"+action.toLowerCase()+"-ALL";var error_class="";if(msg_type=='S'){error_class="success";}else if(msg_type=='W'){error_class="warning";}else if(msg_type=='E'){error_class="error";}else if(msg_type=='I'){error_class="info";}
if(!msg_style)
msg_style="";if(msg_style=='A'){$("#alert_messages").append("<div class='"+error_class+"'>"+msg_str+"</div>");}else{if($(elem_id).length>0){$(elem_id).html(msg_str);$(elem_id).height("");$(elem_id).addClass(error_class);$(elem_id).show();if(msg_style=="F"){$(elem_id).show("fast",function(){setTimeout('$("'+elem_id+'").hide()',5000);});}}else if($(rest_id).length>0){$(rest_id).height("");$(rest_id).append("<div class='"+error_class+"' >"+msg_str+"</div>");$(rest_id).show();if(msg_style=="F"){$(rest_id).show("fast",function(){setTimeout('$("'+rest_id+'").hide()',5000);});}}
if($(all_id).length>0){$(all_id).height("");$(all_id).append("<div class='"+error_class+"' >"+msg_str+"</div>");$(all_id).show();if(msg_style=="F"){$(all_id).show("fast",function(){setTimeout('$("'+all_id+'").hide()',5000);});}}
if(msg_id.match('-e-')){var elem=msg_id.replace('-e-','');$("form").find("label[for='"+elem+"']").addClass("error_label");}}}};var Utils={is_array:function(mixed_var){return(mixed_var instanceof Array);},is_object:function(mixed_var){if(mixed_var instanceof Array){return false;}else{return(mixed_var!==null)&&(typeof(mixed_var)=='object');}},stripslashes:function(elem){return elem.replace(/^\/+|\/+$/g,"");},handlePageload:function(hash){var hash=hash.replace(/^[#\/]+/,"");if(hash!=""){var parts=hash.split("/");var actions=[];pathname=location.pathname.replace(/\/?$/,"");var page,letter;for(var i=0;i<parts.length;i++){var action=parts[i++];var value=parts[i];if(action=='page'){hash=hash.replace(/\/?page\/\d+/,"");pathname=pathname.replace(/\/page\/\d+/,"")+"/page/"+value;page=value;}
if(action=='letter'){hash=hash.replace(/\/?page\/\d+/,"");pathname=pathname.replace(/\/page\/\d+/,"");hash=hash.replace(/\/?letter\/[\w-09]+/,"");pathname=pathname.replace(/\/letter\/[\w-09]+/,"")+"/letter/"+value;letter=value;page=1;}}
pathname+="/";if(hash){hash="#"+hash;}
if(pageloadflag){location.href=location.protocol+"//"+location.host+pathname+location.search+hash;return false;}else{if(page&&!letter){Global
.loadNumericPage($(".pagination.primary, .pagination_prevnext.primary"),page);}
if(letter){Global.loadAlphaPage($(".alpha_browser"),letter);}}}else{if(!pageloadflag){var page="1";var pathname=location.pathname.replace(/\/?$/,"");if(pathname.match(/\/page\/\d+/)){page=pathname.replace(/.*\/page\/(\d+).*/,"$1");}
if(pathname.match(/\/letter\/[\w-09]+/)){page=pathname.replace(/.*\/letter\/([\w-09]+).*/,"$1");}
if(lasthash!=""&&lasthash.match(/\/page\/\d+/)){Global
.loadNumericPage($(".pagination.primary, .pagination_prevnext.primary"),page);}
if(lasthash!=""&&lasthash.match(/\/letter\/[\w-09]+/)){Global.loadAlphaPage($(".alpha_browser"),letter);}}}
lasthash=location.hash;pageloadflag=false;return false;}};var FormUtils={validateForm:function(form){$(form).find("label").removeClass("error_label");var action=Global.getFormAction(form);if(action){Global.clearActionMessages(action);}
var ret=Validation.validateAction(form);if(!ret){return ret;}
var labels={};$(form).find("label").each(function(){name=$(this).attr("for");label=$(this).text();labels[name]=label;});for(name in labels){$(form).append("<input type='hidden' name='_label_"+name+"' value='"+labels[name]+"' />");};var formName='';if(form.name){formName=form.name}
$(form).append("<input type='hidden' name='_form_' value='"+formName+"' />");return true;},clearForm:function(){return this.each(function(){$(':input',this).each(function(){var type=this.type,tag=this.tagName.toLowerCase();if(type=='text'||type=='password'||tag=='textarea'){this.value='';}else if(type=='checkbox'||type=='radio'){this.checked=false;}else if(tag=='select'){this.selectedIndex=-1;}});});},formReset:function(frm){for(var i=0;i<frm.elements.length;i++){if(!(frm.elements[i].type&&frm.elements[i].type=="submit"||frm.elements[i].type=="button"||frm.elements[i].type=="hidden")){if(frm.elements[i].type=="radio"||frm.elements[i].type=="checkbox"){frm.elements[i].checked=false;}else if(frm.elements[i].type=="select-one"){frm.elements[i].selectedIndex=-1;}else{frm.elements[i].value="";}}}}};var Debug={highlight:function(action){$(".debug_action_container").toggleClass("selected");},toggleActionDetails:function(elem){var id=elem.id.substr(12);$("#debugdata_"+id).toggleClass('hidden');},handleDebugEvents:function(){$("#debugger_details .collapsed").live("click",function(){$(this).removeClass("collapsed");$(this).addClass("expanded");});$("#debugger_details .expanded").live("click",function(){$(this).removeClass("expanded");$(this).addClass("collapsed");});$("#debugger_details .tab").live("click",function(){var id=this.id;$(this).parents(".debugdata").find(".tab").removeClass("selected");$(this).parents(".debugdata").find(".data").hide();$("#"+id+"_data").show();$(this).addClass("selected");});}};jQuery(function($){if($("body.see-page").length){swfobject.embedSWF(MAIN_URL+"files/whatbabiessee.swf","wbs_swf","700","500","9.0.0");}
if($("body.store.checkout-page").length){$("#id_accept_terms").parent().find("a").click(function(){console.log("foo");window.open($(this).attr("href"),$(this).attr("target"));return false;});}});
