if(typeof (feutil)=="undefined"){feutil={}}feutil.getFieldName=function(B){var A=B.name;if(!A){A=B.id}if(A){A=A.replace(/^\d+/,"");A=A.replace(/\W/gi,"_");return A.toLowerCase()}else{return"unknown"}};feutil.collate=function(C){var A="";var B=function(H){var E=H.getAttribute("wslink");if(!E){E=""}var D=feutil.getFieldName(H);var F=H.type.toLowerCase();var G=escape(H.value);return"<"+D+" type='"+F+"' wslink='"+E+"'>"+G+"</"+D+">"};jQuery(":input",C).each(function(D,E){switch(E.tagName.toLowerCase()){case"input":if(E.type.search(/text|password|hidden|file/gi)==0){A+=B(E)}else{if(E.type.search(/checkbox|radio/gi)==0){if(E.checked){A+=B(E)}}}break;case"textarea":A+=B(E);break;case"select":for(j=0;j<E.options.length;j++){if(E.options[j].selected){A+=B(E)}}break}});A="<?xml version='1.0' encoding='ISO-8859-1'?><xml formname='"+C.name+"'>"+A+"</xml>";return A};feutil.winOpen=function(C,A,B){window.open(C,"i","toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,width="+A+",height="+B+",top=100,left=100");window.location=""};feutil.FormLoginValidate=function(A){if(A.user.value.length==0){alert("Oops! You need to enter a username");A.user.focus();return false}else{if(A.password.value.length==0){A.password.focus();alert("Oops! You need to enter a password");return false}}A.style.display="none";document.getElementById("formLoginProcessing").style.display="block";return true};feutil.FormPasswordResetValidate=function(A){if(A.newPassword.value.length==0){alert("Oops! You need to enter a new password.");A.newPassword.focus();return false}else{if(A.confirmNewPassword.value.length==0){A.confirmNewPassword.focus();alert("Oops! You need to confirm the new password");return false}}if(A.newPassword.value!=A.confirmNewPassword.value){alert("Oops! New password values do not match.");return false}A.style.display="none";document.getElementById("formLoginProcessing").style.display="block";return true};feutil.forgotPassword=function(A,B){if(A.user.value.length==0){alert("Oops! You need to enter a username");A.user.focus()}else{A.style.display="none";document.getElementById("formLoginProcessing").style.display="block";wsfe.sendRequest("admin/securearea/secureareaservice.svc/passwordreminder/"+B+"/"+A.user.value+"/",false,"get",function(C){if(C.readyState==4){feutil.notifyFormResult(C.responseText,A)}})}return false};feutil.notifyFormResult=function(B,C){var A=document.getElementById("jsId");if(A){document.body.removeChild(A)}js=document.createElement("script");js.defer=true;js.id="jsId";js.type="text/javascript";js.text="var formResult="+B;document.body.appendChild(js);alert(formResult.content);C.style.display="";document.getElementById("formLoginProcessing").style.display="none"};feutil.ValidateUserForm=function(A){msg="";if(!A.user_name.value.length){msg="Oops, you must enter a name"}else{if(!A.user_password.value.length){msg="Oops, you must enter a password"}else{if(A.user_password.value!=A.user_password_confirm.value){msg="The entered Passwords do not match, please try again."}else{if(!A.user_email.value.length||A.user_email.value.indexOf("@")==-1){msg="Oops, you must enter a valid email address"}}}}if(msg.length){alert(msg);return false}A.style.display="none";document.getElementById("formUserDetailsProcessing").style.display="block";return true};feutil.productDisplayCount=0;feutil.productDisplayInterval=100;feutil.displayProducts=function(B,C,A,D){fullUrl=B+"?action="+C+"&dir="+A+"&start="+D;wsfe.go(fullUrl);return ;if(typeof productlist!="undefined"){feutil.productDisplayCount=0;pageCountCell=document.getElementById("pagecount");prevTopCell=document.getElementById("prevtop");nextTopCell=document.getElementById("nexttop");if(scrolldir==1){D=D+displayperpage<end?D+displayperpage:D}else{D=D>displayperpage?D-displayperpage:0}stop=D+displayperpage<end?D+displayperpage:end;pageCountCell.innerHTML="Page "+(D/displayperpage+1)+" of "+(Math.ceil(end/displayperpage));if(D>=displayperpage){prevTopCell.style.display="block"}else{prevTopCell.style.display="none"}if(D+displayperpage<end){nextTopCell.style.display="block"}else{nextTopCell.style.display="none"}prodRows=document.getElementById("products");while(prodRows.rows.length>0){prodRows.deleteRow(0)}for(i=D;i<stop;i++){newRow=prodRows.insertRow(-1);newCell=newRow.insertCell(-1);newCell.vAlign="top";newCell.innerHTML=productlist[i]["tdimage"];newCell=newRow.insertCell(-1);newCell.vAlign="top";newCell.align="left";newCell.innerHTML=productlist[i]["tddetails"];newCell=newRow.insertCell(-1);newCell.vAlign="top";newCell.innerHTML=productlist[i]["tdquote"];newRow=prodRows.insertRow(-1);newCell=newRow.insertCell(-1);newCell.colSpan="2";newCell.innerHTML=productlist[i]["tdhr"]}}else{if(feutil.productDisplayCount>30000){feutil.productDisplayCount=0;return }else{feutil.productDisplayCount=feutil.productDisplayCount+feutil.productDisplayInterval;window.setTimeout("feutil.displayProducts('"+scrolldir+"')",feutil.productDisplayInterval)}}};feutil.prodImg;feutil.PopProductImage=function(A){feutil.prodImg=new Image();feutil.prodImg.src=A;feutil.IsLoaded(A)};feutil.IsLoaded=function(A){if(feutil.prodImg.complete){var C=feutil.prodImg.width;var B=feutil.prodImg.height;var E='<style>body{border:0;margin-width:0;padding:0;}</style><body bgcolor="##ffffff" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0"><img src="'+A+'" width="'+C+'" height="'+B+'" ></body>';var D=window.open("","img_window","scrollbars=no,status=no,resizable=no,width="+C+",height="+B+"");D.document.writeln(E);D.document.close();D.focus();self.status="Image Loaded!";setTimeout("self.status = ''",2000)}else{setTimeout("feutil.IsLoaded('"+A+"')",100);self.status="Loading Image - "+A+"...."}};feutil.validateShopUser=function(C){msg="";var A=C.user.value;var B=C.password.value;if(A==""){msg="Please enter an email"}else{if(B==""){msg="Please enter a password"}}if(msg.length){alert(msg);return false}return true};feutil.validateShopAddress=function(I,E){var C="";var J=I[E+"_firstname"].value;var K=I[E+"_lastname"].value;var A=I[E+"_address1"].value;var H=I[E+"_city"].value;var D=I[E+"_country"].options[I[E+"_country"].selectedIndex].value;var L=I[E+"_phone"].value;var M=I[E+"_email"].value;if(E=="address"){var G=I.shopuser.value;var B=I.newpassword.value;var F=I.newpasswordconfirm.value}if(J==""){C="Please enter a first name"}else{if(K==""){C="Please enter an last name"}else{if(A==""){C="Please enter an address"}else{if(H==""){C="Please enter a city"}else{if(D==""){C="Please select a country"}else{if(L==""){C="Please enter a phone number"}else{if((E!="shipping")&&(M=="")){C="Please enter billing email address"}else{if((E=="address")&&(G=="")){C="Please enter a login email"}else{if((E=="address")&&(B=="")){C="Please enter a login password"}else{if((E=="address")&&(F=="")){C="Please confirm login password"}}}}}}}}}}if((E=="address")&&(B!=F)){C="The entered Passwords do not match, please try again"}if(fmutil.regex.email.checkError(M)){C=fmutil.regex.email.msg}if(C.length){alert(C);return false}return true};feutil.setEmailValue=function(){document.getElementById("shopuser").value=document.getElementById("address_email").value};feutil.selectShopAddress=function(M,O){var I=document.getElementById(M+"_firstname_"+O).innerHTML;var J=document.getElementById(M+"_lastname_"+O).innerHTML;var C=document.getElementById(M+"_address1_"+O).innerHTML;var B=document.getElementById(M+"_address2_"+O).innerHTML;var F=document.getElementById(M+"_city_"+O).innerHTML;var A=document.getElementById(M+"_state_"+O).innerHTML;var E=document.getElementById(M+"_country_"+O).innerHTML;var H=document.getElementById(M+"_postcode_"+O).innerHTML;var K=document.getElementById(M+"_phone_"+O).innerHTML;var D=document.getElementById(M+"_fax_"+O).innerHTML;var L=document.getElementById(M+"_email_"+O).innerHTML;document.getElementById(M+"_firstname").value=I;document.getElementById(M+"_lastname").value=J;document.getElementById(M+"_address1").value=C;document.getElementById(M+"_address2").value=B;document.getElementById(M+"_city").value=F;document.getElementById(M+"_state").value=A;var N=document.getElementById(M+"_country");for(var G=0;G<N.options.length;G++){if(N.options[G].text==E){N.options[G].selected=true;break}}document.getElementById(M+"_postcode").value=H;document.getElementById(M+"_phone").value=K;document.getElementById(M+"_fax").value=D;document.getElementById(M+"_email").value=L};feutil.swapPayView=function(D,B,A){var C=false;if(A=="shopaddress"){if(!(feutil.validateShopAddress(D,"shipping"))||!(feutil.validateShopAddress(D,"billing"))){return false}}document.getElementById(B).style.display="block";document.getElementById(A).style.display="none"};feutil.jumpNext=function(B,A){if(B==4){document.forms.profilefm[A].focus()}};feutil.validateCreditCard=function(H){var E="";var F=new Date();var B=H.cardname.value;var N=H.cardnumber1.value;var M=H.cardnumber2.value;var L=H.cardnumber3.value;var K=H.cardnumber4.value;var D=H.cardtype.selectedIndex;var G=H.cardmonthexpiry.selectedIndex;var J=H.cardyearexpiry.selectedIndex;var A=0;var I=0;var C=H.submitorder;if(G>0){A=parseInt(H.cardmonthexpiry.options[G].value)}if(J>0){I=parseInt("20"+H.cardyearexpiry.options[J].value)}if(B.length==0){E="Please enter a valid Credit Card Name"}else{if(D==0){E="Please enter a valid Credit Card Type"}else{if((N.length!=4)||(M.length!=4)||(L.length!=4)||(K.length!=4)||isNaN(N)||isNaN(M)||isNaN(L)||isNaN(K)){E="Please enter a valid Credit Card Number"}else{if(G==0){E="Please enter a valid Credit Card Expiry Month"}else{if(J==0){E="Please enter a valid Credit Card Expiry Year"}else{if(I<F.getYear()){E="Please enter a valid Credit Card Expiry Year"}else{if((A<(F.getMonth()+1))&&(I==F.getYear())){E="Please enter a valid Credit Card Expiry Month"}}}}}}}if(E.length){alert(E);return false}C.style.visibility="hidden";return true};feutil.getSelectedItems=function(D){var C=new Array();var A=document.getElementsByName(D);for(var B=0;B<A.length;B++){if(A[B].checked){C.push(A[B].value)}}return C.join("-")};feutil.getProductQuantities=function(F){var E=new Array();var D=0;var B=F.getElementsByTagName("input");var A=wsfe.collectionToArray(B);for(var C=0;C<A.length;C++){if(A[C].name.indexOf("prodqty_")>-1){D=A[C].name.split("_")[1];E.push(D+"("+A[C].value+")")}}return E.join("-")};if(!Array.prototype.filter){Array.prototype.filter=function(B){var A=this.length;if(typeof B!="function"){throw new TypeError()}var E=new Array();var D=arguments[1];for(var C=0;C<A;C++){if(C in this){var F=this[C];if(B.call(D,F,C,this)){E.push(F)}}}return E}};