// 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); } function getCookie(c_name) { if(document.cookie.length > 0) { c_start = document.cookie.indexOf(c_name + "="); if(c_start != -1) { c_start = c_start + c_name.length + 1; c_end = document.cookie.indexOf(";", c_start); if(c_end == -1) c_end = document.cookie.length; return unescape(document.cookie.substring(c_start, c_end)); } } return ""; } var global_location = "/modustpl/_secureXMLReq.php"; var global_url = ""; function sv_package_list(a, b) { if(a) { //divShowWaitStop(); if(b == "0") { // 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(); } else if(b == "1") { // success document.getElementById("sv_addparser_packages_div").innerHTML = req.responseXML.getElementsByTagName("data")[0].firstChild.data; } } else { document.getElementById("sv_addparser_packages_div").innerHTML = '
One moment please, building list of packages from this city... \
One moment please, building list of packages from this city... \
Close Details';
document.getElementById("svDetails" + c).innerHTML = req.responseXML.getElementsByTagName("data")[0].firstChild.data;
document.getElementById("svDetails" + c).style.display = "block";
}
} else {
this.a = a;
this.b = b;
this.c = c;
this.d = d;
// Check for running connections
if(req != null && req.readyState != 0 && req.readyState != 4) {
window.setTimeout(function() {
sv_load_mini_form_content.call(this, a, b, c, d);
}, 500);
return;
}
/*
// Check for running connections
if(req != null && req.readyState != 0 && req.readyState != 4) {
window.setTimeout(function() {
sv_package_details.apply();
}, 500);
return;
}
*/
// if content already exists then show it
if(document.getElementById("svDetails" + c).innerHTML != "") {
document.getElementById("sv" + c + "detailsDiv").onclick = function(){sv_package_details_close(c, d);}
document.getElementById("svImg" + c).innerHTML = '
Close Details';
document.getElementById("svDetails" + c).style.display = "block";
} else {
var url = "pid=7";
var return_flag = true;
var focus_flag = true;
var errMessage = "A problem with the fields listed below was encountered:\n\n";
if(c > 0) {
url += "&id=" + c;
} else {
errMessage += "Softvoyage package ID not specified.\n";
return_flag = false;
}
if(d != "") {
url += "&sv_package_gateway=" + d;
} else {
errMessage += "Softvoyage gateway code not specified.\n";
return_flag = false;
}
if(!return_flag) {
alert(errMessage);
return(false);
} else {
global_url = url;
var url_post = url;
//divShowWaitStart();
//alert(url_post);
lXML(global_location, url_post);
}
}
}
}
function sv_package_details_close(a, b) { // SV ID, SV gateway code
document.getElementById("sv" + a + "detailsDiv").onclick = function(){sv_package_details('', '', a, b);}
document.getElementById("svImg" + a).innerHTML = '
Open Details';
document.getElementById("svDetails" + a).style.display = "none";
}
function sv_flight_list(a, b) {
if(a) {
//divShowWaitStop();
if(b == "0") { // 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();
} else if(b == "1") { // success
document.getElementById("sv_addparser_flights_div").innerHTML = req.responseXML.getElementsByTagName("data")[0].firstChild.data;
}
} else {
document.getElementById("sv_addparser_flights_div").innerHTML = '
One moment please, building list of flights from this city... \
Close Details';
document.getElementById("svDetails" + c).innerHTML = req.responseXML.getElementsByTagName("data")[0].firstChild.data;
document.getElementById("svDetails" + c).style.display = "block";
}
} else {
// Check for running connections
if(req != null && req.readyState != 0 && req.readyState != 4) {
window.setTimeout(function() {
sv_flight_details.apply();
}, 500);
return;
}
// if content already exists then show it
if(document.getElementById("svDetails" + c).innerHTML != "") {
document.getElementById("sv" + c + "detailsDiv").onclick = function(){sv_flight_details_close(c, d);}
document.getElementById("svImg" + c).innerHTML = '
Close Details';
document.getElementById("svDetails" + c).style.display = "block";
} else {
var url = "pid=9";
var return_flag = true;
var focus_flag = true;
var errMessage = "A problem with the fields listed below was encountered:\n\n";
if(c > 0) {
url += "&id=" + c;
} else {
errMessage += "Softvoyage flight ID not specified.\n";
return_flag = false;
}
if(d != "") {
url += "&sv_flight_gateway=" + d;
} else {
errMessage += "Softvoyage gateway code not specified.\n";
return_flag = false;
}
if(!return_flag) {
alert(errMessage);
return(false);
} else {
global_url = url;
var url_post = url;
//divShowWaitStart();
//alert(url_post);
lXML(global_location, url_post);
}
}
}
}
function sv_flight_details_close(a, b) { // SV ID, SV gateway code
document.getElementById("sv" + a + "detailsDiv").onclick = function(){sv_flight_details('', '', a, b);}
document.getElementById("svImg" + a).innerHTML = '
Open Details';
document.getElementById("svDetails" + a).style.display = "none";
}
function sv_mini_form_tab_select(menu_id) {
for(i = 1; i<=3 ; i++) {
document.getElementById("sv_mini_" + i).style.display = "none";
}
if(document.getElementById("sv_mini_" + menu_id).innerHTML == "") {
sv_load_mini_form_content(null, '', menu_id);
}
document.getElementById("sv_mini_" + menu_id).style.display = "block";
// Set all tabs back to the defauld off position.
for(i = 1; i<=3 ; i++) {
document.getElementById("sv_mini_" + i + "s").style.color = "rgb(79, 79, 79)";
document.getElementById("sv_mini_" + i + "s").style.fontWeight = "normal";
}
// Set the selected tab as live.
document.getElementById("sv_mini_" + menu_id + "s").style.color = "rgb(255, 255, 255)";
document.getElementById("sv_mini_" + menu_id + "s").style.fontWeight = "bold";
}
function sv_load_mini_form_content(req, b, menu_id) {
if(req) {
if(b == "0") { // missing, invalid or maxlength fields
alert("Missing or invalid data provide in the 'menu_id' field of your post.");
} else if(b == "1") { // success
var data = req.responseXML.getElementsByTagName("data")[0].firstChild.data;
document.getElementById("sv_mini_" + menu_id).innerHTML = data;
if(menu_id == "1") {
retrieveFormCookies("packages", "mandatory_promo_id|all_inclusive|beach|kitchenette|golf");
initializeGateways("packages", "gateway_dep", "");
retrieveFormCookies("packages","mandatory_promo_id|all_inclusive|beach|kitchenette|golf");
initializeDestinations("packages", "gateway_dep", "dest_dep");
retrieveFormCookies("packages","mandatory_promo_id|all_inclusive|beach|kitchenette|golf");
initializeHotels("packages", "dest_dep", "no_hotel");
retrieveFormCookies("packages","mandatory_promo_id|all_inclusive|beach|kitchenette|golf");
checkHotelStay("packages", "dest_dep", "duration");
retrieveFormCookies("packages","mandatory_promo_id|all_inclusive|beach|kitchenette|golf");
build_calendar("packagesCalendar1");
}
if(menu_id == "2") {
retrieveFormCookies("softvoyage_flight");
build_calendar("flightsCalendar1");
build_calendar("flightsCalendar2");
}
if(menu_id == "3") {
initializeGateways("lastMinute", "gateway_dep", "");
retrieveFormCookies("lastMinute");
initializeDestinations("lastMinute", "gateway_dep", "dest_dep");
checkHotelStay("lastMinute", "dest_dep", "duration");
retrieveFormCookies("lastMinute");
}
}
} else {
this.req = req;
this.b = b;
this.menu_id = menu_id;
// Check for running connections
if(req != null && req.readyState != 0 && req.readyState != 4) {
window.setTimeout(function() {
//sv_load_mini_form_content.apply(this, arguments);
//sv_load_mini_form_content.apply();
sv_load_mini_form_content.call(this, req, b, menu_id);
}, 500);
return;
}
var url = "pid=5";
url += "&menu_id=" + menu_id;
global_url = url;
var url_post = url;
//alert(url_post);
lXML(global_location, url_post);
}
}