var hwndPopup_52c7;function openhelppopup(url){var popupWidth=700;var popupHeight=700;var popupTop=100;var popupLeft=100;var isFullScreen=false;var isAutoCenter=true;var popupTarget="popupwin_52c7";var popupParams="toolbar=0, scrollbars=1, menubar=0, status=0, resizable=1";if(isFullScreen){popupParams+=", fullscreen=1"}else{if(isAutoCenter){popupTop=parseInt((window.screen.height-popupHeight)/2);popupLeft=parseInt((window.screen.width-popupWidth)/2)}}var ua=window.navigator.userAgent;var isMac=(ua.indexOf("Mac")>-1);if(isMac&&url.indexOf("http")!=0){url=location.href.substring(0,location.href.lastIndexOf("/"))+"/"+url}var isOpera=(ua.indexOf("Opera")>-1);var operaVersion;if(isOpera){var i=ua.indexOf("Opera");operaVersion=parseFloat(ua.substring(i+6,ua.indexOf(" ",i+8)));if(operaVersion>7){var isAccessible=false;eval("try { isAccessible = ( (hwndPopup_52c7 != null) && !hwndPopup_52c7.closed ); } catch(exc) { } ");if(!isAccessible){hwndPopup_52c7=null}}}if((hwndPopup_52c7==null)||hwndPopup_52c7.closed){if(isOpera&&(operaVersion<7)){if(url.indexOf("http")!=0){hwndPopup_52c7=window.open(url,popupTarget,popupParams+((!isFullScreen)?", width="+popupWidth+", height="+popupHeight:""));if(!isFullScreen){hwndPopup_52c7.moveTo(popupLeft,popupTop)}hwndPopup_52c7.focus();return}}if(!(window.navigator.appName=="Netscape"&&!document.getElementById)){popupParams+=", width="+popupWidth+", height="+popupHeight+", left="+popupLeft+", top="+popupTop}else{popupParams+=", left="+popupLeft+", top="+popupTop}hwndPopup_52c7=window.open("",popupTarget,popupParams);if(!isFullScreen){hwndPopup_52c7.resizeTo(popupWidth,popupHeight);hwndPopup_52c7.moveTo(popupLeft,popupTop)}hwndPopup_52c7.focus();with(hwndPopup_52c7.document){open();write("<html><head></head><body onLoad=\"window.location.href='"+url+"'\"></body></html>");close()}}else{if(isOpera&&(operaVersion>7)){eval('try { hwndPopup_52c7.focus();	hwndPopup_52c7.location.href = url; } catch(exc) { hwndPopup_52c7 = window.open("'+url+'","'+popupTarget+'","'+popupParams+", width="+popupWidth+", height="+popupHeight+'"); } ')}else{hwndPopup_52c7.focus();hwndPopup_52c7.location.href=url}}}df_cs_getURLParam=function(b){b=b.replace(/[\[]/,"\\[").replace(/[\]]/,"\\]");var a="[\\?&]"+b+"=([^&#]*)";var d=new RegExp(a);var c=d.exec(window.location.href);if(c==null){return""}else{return c[1]}};df_cs_getURLParamNames=function(){var b=new Array();var a=/[\?&]([^=]+)=/g;while((results=a.exec(window.location.href))!=null){b.push(results[1])}return b};var df_cs_logMsg=new Array();function df_cs_log(a){}function df_cs_replaceHTMLContent(c,b){var a=document.getElementById(c);a.innerHTML=b}df_CheckoutSelectorConfigOption={DEFAULT_CURRENCY_INDEX:"default_currency_index",COPIES_TEXT:"copies_text",COPIES_VALIDATION_MSG:"copies_validation_msg",COUPON_TEXT:"coupon_text",TOTAL_TEXT:"total_text",PROCEED_TEXT:"proceed_text",GEO_LOCATION:"geo_location",SINGLE_CURRENCY:"single_currency",SINGLE_PURCHASE:"single_purchase",USE_COUPON:"use_coupon"};function df_CheckoutSelector(c,j,f,e,b){var d=new Array();d.GB="GBP";d.AT="EUR";d.BE="EUR";d.BG="EUR";d.CH="EUR";d.CY="EUR";d.CZ="EUR";d.DE="EUR";d.DK="EUR";d.EE="EUR";d.ES="EUR";d.FI="EUR";d.FR="EUR";d.GR="EUR";d.HU="EUR";d.IE="EUR";d.IT="EUR";d.LU="EUR";d.LV="EUR";d.LT="EUR";d.MT="EUR";d.NL="EUR";d.NO="EUR";d.PL="EUR";d.PT="EUR";d.RO="EUR";d.SE="EUR";d.SK="EUR";d.SI="EUR";var a="USD";var h=new Array();h.GB=1;h.AT=1;h.BE=1;h.BG=1;h.CY=1;h.CZ=1;h.DE=1;h.DK=1;h.EE=1;h.ES=1;h.FI=1;h.FR=1;h.GR=1;h.HU=1;h.IE=1;h.IT=1;h.LU=1;h.LV=1;h.LT=1;h.MT=1;h.NL=1;h.PL=1;h.PT=1;h.RO=1;h.SE=1;h.SK=1;h.SI=1;this._max_location_service_checks=5;this._time_between_location_service_checks=200;this._checkoutSelectorHtmlId=c;this._arrConfigOptions=b;this._arrCurrencies=j;this._arrEditions=f;this._arrOptions=e;this._defaultCurrencyIndex=0;this._vat_text1="";this._vat_text2="";this._copiesText="Number of users:";this._copiesValidationMsg="numbers only, please";this._couponText="Coupon:";this._totalText="Total:";this._proceedText="Secure Checkout";this._useGeoLocations=false;this._useSingleCurrency=false;this._useSinglePurchase=false;this._useCoupon=false;this._useCouponInitialValue="";this._numUsers=1;this._editionIndex=null;this._totalPrice=null;this._isReCheckRequired=false;this._isNumericValidation=function(n,l){var m=/^[0-9]+$/;if(n.value.match(m)){this._isReCheckRequired=false;return true}else{n.focus();this._isReCheckRequired=true;return false}};this.reCheckHandler=function(){if(this._isReCheckRequired){this.changeHandler()}};this.proceedHandler=function(l){var n=this._getSelectedCurrencyIndex();var m="";if(this._useCoupon){var o=document.getElementById("df_cs_coupon");m=o.value}this.changeHandler();l(n,this._numUsers,this._editionIndex,this._arrOptions,m,this._totalPrice)};this._getSelectedCurrencyIndex=function(){var l=this._defaultCurrencyIndex;if(!this._useSingleCurrency){l=parseInt((document.getElementById("df_cs_currency")).value)}return l};this.changeCurrencyHandler=function(){var l=this._getSelectedCurrencyIndex();for(var n=0;n<f.length;n++){df_cs_replaceHTMLContent("df_cs_edition_price_"+n,this._arrCurrencies[l][2]+(f[n][l+2]).toFixed(2))}for(var m=0;m<e.length;m++){df_cs_replaceHTMLContent("df_cs_option_price_"+m,this._arrCurrencies[l][2]+(e[m][l+2]).toFixed(2))}df_cs_replaceHTMLContent("df_cs_currency_flag",'<td id="df_cs_currency_flag"><img style="width: 24px; height: 13px;" alt="'+this._arrCurrencies[l][0]+'" src="'+this._arrCurrencies[l][3]+'"></td>');this.changeHandler()};this.changeHandler=function(){var q=0;var l=this._getSelectedCurrencyIndex();if(this._useSinglePurchase){this._numUsers=1}else{var t=document.getElementById("df_cs_numUsers");var m=t.value;if(m==""){df_cs_replaceHTMLContent("df_cs_total","");return}if(!this._isNumericValidation(t,this._copiesValidationMsg)){return}this._numUsers=m}var u=document.getElementsByName("df_cs_edition");var s=0;for(var n=0;n<u.length;n++){if(u[n].checked==true){s=parseInt(u[n].value)}}this._editionIndex=s;var r=document.getElementsByName("df_cs_option");this._arrOptions=new Array();var o=0;var p=0;for(n=0;n<r.length;n++){if(r[n].checked==true){p+=e[n][l+2];this._arrOptions.push(n)}}q=this._arrCurrencies[l][2]+(this._numUsers*((f[s][l+2])+p)).toFixed(2);this._totalPrice=q;df_cs_log(" selectedCurrency: "+l+" numUsers: "+m+" editionIndex: "+s+" optionsTotal: "+p+" total: "+q);df_cs_replaceHTMLContent("df_cs_total",q+this._vat_text1)};this._displayCheckoutSelector=function(){var l='<div style="text-align: center;"><table style="margin-left: auto; margin-right: auto;" class="df_cs_table" cellpadding="3" cellspacing="2">';l+="<tbody>";l+='<tr style="text-align: center;"><td>';l+='</td><td class="df_cs_text df_cs_currencytext" colspan="1"><table style="text-align: left; margin-left: auto; margin-right: 0px;" border="0" cellpadding="2" cellspacing="2"><tbody><tr>';l+='<td id="df_cs_currency_flag"><img style="width: 24px; height: 13px;" alt="'+this._arrCurrencies[this._defaultCurrencyIndex][0]+'" src="'+this._arrCurrencies[this._defaultCurrencyIndex][3]+'"></td><td class="df_cs_currencytext df_cs_text">Currency:</td></tr></tbody></table></td>';if(this._useSingleCurrency){l+='<td class="df_cs_text df_cs_currencytext" width="150px">'+this._arrCurrencies[this._defaultCurrencyIndex][1]+"</td>"}else{l+='<td class="df_cs_currencyselect" width="150px"><select id="df_cs_currency" class="df_cs_currencyselect" style="width:100%" onchange="df_cs_changeCurrencyHandler()">';var o;for(o=0;o<this._arrCurrencies.length;o++){l+="<option "+((o==this._defaultCurrencyIndex)?'selected="selected"':"")+' value="'+o+'">'+this._arrCurrencies[o][1]+"</option>"}l+="</select></td>"}l+='<td><a href="javascript:openhelppopup(\'http://www.perfecttableplan.com/purchase/Purchase_help.html#currency\')"><img style="border: 0px solid ; width: 16px; height: 16px;" alt="more information" src="../purchases/more_info.png"></a></td></tr>';var n;for(n=0;n<this._arrEditions.length;n++){l+='<tr><td class="df_cs_radio df_cs_text"><input type="radio" class="df_cs_radio df_cs_text" name="df_cs_edition" onclick="df_cs_changeHandler()" '+((n==0)?"CHECKED":"")+' value="'+n+'"/></td><td class="df_cs_text">'+this._arrEditions[n][0]+"<br>"+this._arrEditions[n][1]+"</td>";l+='<td id="df_cs_edition_price_'+n+'" class="df_cs_price df_cs_text">'+this._arrCurrencies[this._defaultCurrencyIndex][2]+(this._arrEditions[n][this._defaultCurrencyIndex+2]).toFixed(2)+"</td></tr>"}for(var m=0;m<this._arrOptions.length;m++){l+='<tr><td class="df_cs_checkbox df_cs_text"><input type="checkbox" name="df_cs_option" class="df_cs_checkbox" value="'+(m+1)+'" onclick="df_cs_changeHandler()" /></td><td class="df_cs_text">'+this._arrOptions[m][0]+"<br>"+this._arrOptions[m][1]+"</td>";l+='<td class="df_cs_text df_cs_price" id="df_cs_option_price_'+m+'">'+this._arrCurrencies[this._defaultCurrencyIndex][2]+(this._arrOptions[m][this._defaultCurrencyIndex+2]).toFixed(2)+'</td><td><a href="javascript:openhelppopup(\'http://www.perfecttableplan.com/purchase/Purchase_help.html#cd\')"><img style="border: 0px solid ; width: 16px; height: 16px;" alt="more information" src="../purchases/more_info.png"></a></td></tr>'}if(!this._useSinglePurchase){l+='<tr><td colspan="2" style="text-align: right;" class="df_cs_text">'+this._copiesText+'</td><td class="df_cs_numUsers df_cs_text"><input style="width:100%" type="text" id="df_cs_numUsers" class="df_cs_numUsers df_cs_text"  value="1" onKeyUp="df_cs_changeHandler()" onBlur="df_cs_reCheckHandler()"/></td><td><a href="javascript:openhelppopup(\'http://www.perfecttableplan.com/purchase/Purchase_help.html#users\')"><img style="border: 0px solid ; width: 16px; height: 16px;" alt="more information" src="../purchases/more_info.png"></a></td></tr>'}if(this._useCoupon){l+='<tr><td colspan="2" style="text-align: right;" class="df_cs_text">'+this._couponText+'</td><td><input style="width:100%" type="text" id="df_cs_coupon" class="df_cs_text df_cs_coupon" value="'+this._useCouponInitialValue+'"/></td></tr>'}l+='<tr><td colspan="2" style="text-align: right;" class="df_cs_text">'+this._totalText+'</td><td id="df_cs_total" class="df_cs_price df_cs_total df_cs_text"></td></tr>';l+="<tr><td></td><td>"+this._vat_text2+'</td><td class="df_cs_proceed" colspan="1" style="text-align: center;"> <input type="button" class="df_cs_proceed" onclick="df_cs_proceedHandler()"  value="'+this._proceedText+'"/></td><td></td></tr>';l+="</tbody>";l+="</table></div>";df_cs_replaceHTMLContent(this._checkoutSelectorHtmlId,l);this.changeHandler()};this._js;this._include_js=function(m){var l=document.getElementsByTagName("head").item(0);this._js=document.createElement("script");this._js.setAttribute("type","text/javascript");this._js.setAttribute("src",m);l.appendChild(this._js);this._js.onreadystatechange=function(){};this._js.onload=function(){};return false};this._useLocationService=function(){if(window.geoip_country_code){var m=geoip_country_code();var l=d[m];if(!l){l=a}this._defaultCurrencyIndex=0;var n=false;var o=0;while((!n)&&(o<this._arrCurrencies.length)){if(this._arrCurrencies[o][0]==l){this._defaultCurrencyIndex=o;n=true}else{o++}}if(h[m]){this._vat_text1="<i>+VAT*</i>";this._vat_text2="<i>*VAT will be calculated on checkout<i>"}else{this._vat_text1="";this._vat_text2=""}this._displayCheckoutSelector()}else{df_cs_log("geolocation service notfound remainingchecks:"+this._max_location_service_checks);if(this._max_location_service_checks>0){this._max_location_service_checks--;this._checkLocationServiceAgainLater()}else{df_cs_log("geolocation service not found contry code - multiple times");this._defaultCurrencyIndex=0;this._displayCheckoutSelector()}}};this._checkLocationServiceAgainLater=function(){var m=this;var l=function(){m._useLocationService()};window.setTimeout(l,this._time_between_location_service_checks)};this._setConfigOptions=function(){df_cs_log(this._arrConfigOptions);for(var l=0;l<this._arrConfigOptions.length;l++){var m=this._arrConfigOptions[l];switch(m[0]){case df_CheckoutSelectorConfigOption.DEFAULT_CURRENCY_INDEX:this._defaultCurrencyIndex=m[1];break;case df_CheckoutSelectorConfigOption.COPIES_TEXT:this._copiesText=m[1];break;case df_CheckoutSelectorConfigOption.COPIES_VALIDATION_MSG:this._copiesValidationMsg=m[1];break;case df_CheckoutSelectorConfigOption.TOTAL_TEXT:this._totalText=m[1];break;case df_CheckoutSelectorConfigOption.COUPON_TEXT:this._couponText=m[1];break;case df_CheckoutSelectorConfigOption.PROCEED_TEXT:this._proceedText=m[1];break;case df_CheckoutSelectorConfigOption.GEO_LOCATION:this._useGeoLocations=true;break;case df_CheckoutSelectorConfigOption.SINGLE_CURRENCY:this._useSingleCurrency=true;break;case df_CheckoutSelectorConfigOption.SINGLE_PURCHASE:this._useSinglePurchase=true;break;case df_CheckoutSelectorConfigOption.USE_COUPON:if(m.length==1){this._useCoupon=true}else{if((m.length==3)&&(m[1]=="URL")){this._useCouponInitialValue=df_cs_getURLParam(m[2]);this._useCoupon=true}else{if((m.length==3)&&(m[1]=="VALUE")){this._useCouponInitialValue=m[2];this._useCoupon=true}}}break;default:break}}};try{this._setConfigOptions();if(this._defaultCurrencyIndex==null){this._defaultCurrencyIndex=0}if(this._useGeoLocations){this._include_js("http://j.maxmind.com/app/country.js");df_cs_log("Use geo location");this._useLocationService();return}this._displayCheckoutSelector()}catch(g){var k="Main Error:";for(var i in g){k+=" "+i+":"+g[i]+"\n"}}};