// Secure this javascript from being called and executed on behalf of outside websites. var d = new Array("www.traveltst.ca", "secure.traveltst.ca"); var domaincheck = document.location.href; //retrieve the current URL of user browser var accepted_ok = false; //set acess to false by default if(domaincheck.indexOf("http") != -1 || domaincheck.indexOf("https") != -1) { // If this is an http or https request. for(r = 0; r < d.length; r++) { if(domaincheck.indexOf(d[r]) != -1) { //if a match is found accepted_ok = true; //set access to true, and break out of loop break; } } } else { accepted_ok = true; } if(!accepted_ok) { alert("You're not allowed to directly link to this .js file on our server!"); history.back(-1); } var global_url = ""; var global_location = "/modustpl/_secureXMLReq.php"; function newsletter(a, b) { if(a) { divShowWaitStop(); document.getElementById("nl_submit").disabled = false ; if(b == "0") { // blacklisted IP address, blacklisted words or phrases, missing, invalid or maxlength fields var error_message = req.responseXML.getElementsByTagName("error_message")[0].firstChild.data; var error_field = req.responseXML.getElementsByTagName("error_field")[0].firstChild.data; alert(error_message); document.getElementById(error_field).focus(); document.getElementById("nl_submit").disabled = false; } else if(b == "1") { // success document.getElementById("div_newsletter").style.display = "none"; document.getElementById("div_wait_mask").style.display = "none"; document.getElementById("div_iframe").style.display = "none"; divShowIsShown = false; divShowName = null; //alert("Thank you, your newsletter subscription preferences have been received."); alert("Thank you, your newsletter subscription preferences have been updated."); document.getElementById("nl_submit").disabled = false; } else if(b == "2") { // email failed, requires confirmation var error_message = req.responseXML.getElementsByTagName("error_message")[0].firstChild.data; var error_field = req.responseXML.getElementsByTagName("error_field")[0].firstChild.data; var yes = confirm(error_message); if(yes) { divShowWaitStart(); var url_tmp = global_url + "&email_verify=1"; lXML(global_location, url_tmp); } else { document.getElementById(error_field).focus(); document.getElementById("nl_submit").disabled = false; } } else if(b == "3") { // email address was not found in our subscriber database, requires confirmation var error_message = req.responseXML.getElementsByTagName("error_message")[0].firstChild.data; var error_field = req.responseXML.getElementsByTagName("error_field")[0].firstChild.data; var yes = confirm(error_message); if(yes) { divShowWaitStart(); var url_tmp = global_url + "&email_verify=2"; lXML(global_location, url_tmp); } else { document.getElementById(error_field).focus(); document.getElementById("nl_submit").disabled = false; } } } else { document.getElementById("nl_submit").disabled = true; var url = "pid=1"; var return_flag = true; var focus_flag = true; var error_message = "A problem with the fields listed below was encountered:\n\n"; url += "&nl_category=" + encodeURIComponent(select_value("nl_category")); if(document.getElementById("nl_email").value.length > 0) { if((/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,7})+$/.test(document.getElementById("nl_email").value))) { url += "&nl_email=" + encodeURIComponent(document.getElementById("nl_email").value); } else { if(focus_flag) { focus_flag = false; document.getElementById("nl_email").focus(); } error_message += "'Email' field invalid.\n"; return_flag = false; } } else { if(focus_flag) { focus_flag = false; document.getElementById("nl_email").focus(); } error_message += "'Email' field missing content.\n"; return_flag = false; } if(!return_flag) { document.getElementById("nl_submit").disabled = false; alert(error_message); return(false); } else { url += "&nl_name=" + encodeURIComponent(document.getElementById("nl_name").value); url += "&lng_id=" + encodeURIComponent(document.getElementById("opt_lng").value); global_url = url; var url_tmp = url + "&email_verify=0"; divShowWaitStart(); //alert(url_tmp) lXML(global_location, url_tmp); } } } function select_value(btn_select) { var value = ""; for(i = 0; i < document.getElementsByName(btn_select).length; i++) { if(document.getElementById("nl_category_" + document.getElementsByName(btn_select)[i].value).checked) { value += (value==""?"[" + document.getElementsByName(btn_select)[i].value + "]":"|[" + document.getElementsByName(btn_select)[i].value + "]"); } } return value; } function parse_uri_args() { if(document.location.href.indexOf('?') == -1) { return false; } else { if(document.location.href.indexOf('&') != -1) { var arguments_list = document.location.href.split('?')[1].split('&'); var arguments = new Array(); for(i = 0; i < arguments_list.length; i++) { key = arguments_list[i].split('=')[0]; value = arguments_list[i].split('=')[1]; arguments[key] = value; } return arguments; } else { arguments = new Array(); var arguments_list = document.location.href.split('?')[1]; key = arguments_list.split('=')[0]; value = arguments_list.split('=')[1]; arguments[key] = value; return arguments; } } }