(function(e,n){var a=function(n,a,t,i,r){var d=new window.AddressFinder.Widget(document.getElementById(n+"address_1"),a,t,r);d.on("result:select",i);d._getPosition=function(){var n=e(this.element).offset();n.top+=e(this.element).outerHeight();return n};return d};var t=function(e){if(e==undefined){return null}try{e=JSON.parse(e)}catch(a){if(n.debug){alert("Invalid widget option: "+e)}return null}return e};var i=function(i){var r={enable:function(){},disable:function(){},on:function(){}};var o={};var u=t(n["widget_options"]);if(n["key_nz"]){o.nz=a(i,n["key_nz"],"nz",s,u)}else{o.nz=r}if(n["key_au"]){o.au=a(i,n["key_au"],"au",l,u);o.au.prefix=i}else{o.au=r}o.nz.prefix=i;o.au.prefix=i;var c=function(n){if(e(this).val()=="NZ"){o.nz.enable()}else{o.nz.disable()}if(e(this).val()=="AU"){o.au.enable()}else{o.au.disable()}n=n===undefined?true:n;if(n){d(o.au.prefix)}};var f=e("#"+i+"country");if(f[0]){f.change(c);c.bind(f)(false)}};var r=function(e,n){return!!document.getElementById(e+n)};var d=function(e){var n=["address_1","address_2","city","postcode"];for(var a=0;a0){e(t).select2().val(a).trigger("change")}else{u(n+"state",a)}};var s=function(e,n){var a=this.prefix;var t=n.postal||n.a;var i=t.split(",");for(var d=0;d1&&r(a,"address_2")){u(a+"address_2",i.pop())}else{u(a+"address_2","")}u(a+"address_1",i.join(", "));var l={"Auckland Region":"AK","Bay Of Plenty Region":"BP","Canterbury Region":"CT","Gisborne Region":"GI","Hawke's Bay Region":"HB","Manawatu-Wanganui Region":"MW","Marlborough Region":"MB","Nelson Region":"NS","Northland Region":"NL","Otago Region":"OT","Southland Region":"SL","Taranaki Region":"TK","Tasman Region":"TM","Waikato Region":"WA","Wellington Region":"WE","West Coast Region":"WC","No Region (Chatham Islands)":null}[n.region];o(a,l)};var l=function(e,n){var a=this.prefix;if(n.address_line_2!=null){if(r(a,"address_2")){u(a+"address_1",n.address_line_1);u(a+"address_2",n.address_line_2)}else{var t=n.address_line_1+", "+n.address_line_2;u(a+"address_1",t)}}else{u(a+"address_1",n.address_line_1);u(a+"address_2","")}u(a+"city",n.locality_name||"");o(a,n.state_territory);u(a+"postcode",n.postcode)};var u=function(e,a){var t=document.getElementById(e);if(t){t.value=a;return}var i="AddressFinder Error - unable to find an element with id: "+e;if(n.debug){alert(i);return}if(window.console){window.console.log(i)}};var c=function(){if(document.getElementById("billing_address_1")){i("billing_")}if(document.getElementById("shipping_address_1")){i("shipping_")}};e(document).ready(function(){var e=document.createElement("script");e.src="https://api.addressfinder.io/assets/v3/widget.js";e.onreadystatechange=function(){if(e.readyState==="complete"||e.readyState==="loaded"){c()}};e.onload=c;document.body.appendChild(e)})})(window.jQuery,window.AddressFinderConfig);