/* Search functions begin */
function elem(elementId)
{
	return document.getElementById(elementId);
}

function doSwitchWays() {
	var dissit = false;
	var radioElement = elem('oneway');
	if(radioElement.type!='radio' || radioElement.checked == true) {
		dissit = true;
	} else {
		dissit = false;
	}
	if(dissit) {
		if (elem('returntable')) elem('returntable').disabled = true;
		if (elem('inday')) elem('inday').disabled = true;
		if (elem('inmonthyear')) elem('inmonthyear').disabled = true;
		if (elem('indeparr')) elem('indeparr').disabled = true;
		if (elem('inhour')) elem('inhour').disabled = true;
		if (elem('inmins')) elem('inmins').disabled = true;
		if (elem('incalicon')) elem('incalicon').style.opacity = "0.6";
		if (elem('incalicon')) elem('incalicon').style.filter = "alpha(opacity=60)";
		/* Enable hidden fields */
		if (elem('rinday')) elem('rinday').disabled = false;
		if (elem('rinmonthyear')) elem('rinmonthyear').disabled = false;
		if (elem('rindeparr')) elem('rindeparr').disabled = false;
		if (elem('rinhour')) elem('rinhour').disabled = false;
		if (elem('rinmins')) elem('rinmins').disabled = false;

		showHideReturnTripSelector(false);
	} else {
		if (elem('returntable')) elem('returntable').disabled = false;
		if (elem('inday')) elem('inday').disabled = false;
		if (elem('inmonthyear')) elem('inmonthyear').disabled = false;
		if (elem('indeparr')) elem('indeparr').disabled = false;
		if (elem('inhour')) elem('inhour').disabled = false;
		if (elem('inmins')) elem('inmins').disabled = false;
		if (elem('incalicon')) elem('incalicon').style.opacity = "1";
		if (elem('incalicon')) elem('incalicon').style.filter = "alpha(opacity=100)";
		/* Disable hidden fields */
		if (elem('rinday')) elem('rinday').disabled = true;
		if (elem('rinmonthyear')) elem('rinmonthyear').disabled = true;
		if (elem('rindeparr')) elem('rindeparr').disabled = true;
		if (elem('rinhour')) elem('rinhour').disabled = true;
		if (elem('rinmins')) elem('rinmins').disabled = true;

		showHideReturnTripSelector(true);
	}
}

function showHideReturnTripSelector(show)
{
	if(show)
	{
		if (elem('inTripDiv')) elem('inTripDiv').style.display='block';
		if (elem('inday')) elem('inday').style.display='block';
		if (elem('inmonthyear')) elem('inmonthyear').style.display='block';
		if (elem('indeparr')) elem('indeparr').style.display='block';
		if (elem('inhour')) elem('inhour').style.display='block';
		if (elem('inmins')) elem('inmins').style.display='block';
		if (elem('incalicon')) elem('incalicon').style.display='block';
		if (elem('inTripLabel')) elem('inTripLabel').style.display='block';
		if (elem('inTimeLabel')) elem('inTimeLabel').style.display='block';
		if (elem('incolon')) elem('incolon').style.display='block';
	}
	else
	{
		if (elem('inTripDiv')) elem('inTripDiv').style.display='none';
		if (elem('inday')) elem('inday').style.display='none';
		if (elem('inmonthyear')) elem('inmonthyear').style.display='none';
		if (elem('indeparr')) elem('indeparr').style.display='none';
		if (elem('inhour')) elem('inhour').style.display='none';
		if (elem('inmins')) elem('inmins').style.display='none';
		if (elem('incalicon')) elem('incalicon').style.display='none';
		if (elem('inTripLabel')) elem('inTripLabel').style.display='none';
		if (elem('inTimeLabel')) elem('inTimeLabel').style.display='none';
		if (elem('incolon')) elem('incolon').style.display='none';
	}
}

function toggleAdvanced(advancedOn)
{
	if (advancedOn)
	{
		elem('chooseModesCont').style.display='block';
		elem('showModes').style.display='none';
		elem('advancedFlag').value='true';
	}
	else
	{
		elem('chooseModesCont').style.display='none';
		elem('showModes').style.display='block';
		elem('advancedFlag').value='false';
	}
}
/* Search functions end */

/* Timetable functions begin */
function toggleTrip(tripId, returnTrip) {
	var fullId = returnTrip ? 'fullr_' : 'full_';
	var wrapId = returnTrip ? 'wrapsimpler_' : 'wrapsimple_';
	var imgId = returnTrip ? 'plussimpler_' : 'plussimple_';
	var currDiv = elem(fullId + tripId);
	var wrapDiv = elem(wrapId + tripId);
	var plusImage = elem(imgId + tripId);
	if (!currDiv.isExpanded) {
		currDiv.isExpanded = true;
		currDiv.style.display = 'block';
		setWrapClass(wrapDiv, 'tripWrapExpanded');
		plusImage.src = 'rp/img/minus.gif';
	} else {
		currDiv.isExpanded = false;
		currDiv.style.display = 'none';
		setWrapClass(wrapDiv, 'tripWrap');
		plusImage.src = 'rp/img/plus.gif';
	}
}

function setWrapClass(wrapDiv, newClassName)
{
	var wrapClass = wrapDiv.className;
	if (wrapClass.indexOf('seven') >= 0)
		wrapDiv.className = newClassName + ' seven';
	else
		wrapDiv.className = newClassName + ' sodd';
}

function toggleAll(returnTrip) {
	if (returnTrip)
	{
		toggleImpl(toggleModeR, 'wrapsimpler_', 'fullr_', 'plussimpler_', 'showToggler', 'hideToggler');
		if (toggleModeR == 1)
			toggleModeR = 2;
		else
			toggleModeR = 1;
	}
	else
	{
		toggleImpl(toggleMode, 'wrapsimple_', 'full_', 'plussimple_', 'showToggle', 'hideToggle');
		if (toggleMode == 1)
			toggleMode = 2;
		else
			toggleMode = 1;
	}
}

function toggleImpl(mode, wrapId, fullId, imgId, showButtonId, hideButtonId)
{
	var divs = document.getElementsByTagName("DIV");
	for (var i = 0; i < divs.length; i++) {
		var e = divs[i];
		if(mode == 1) {
			if(e.id.indexOf(fullId) == 0) {
				e.isExpanded = true;
				e.style.display = 'block';
			}
			else if (e.id.indexOf(wrapId) == 0) {
				setWrapClass(e, 'tripWrapExpanded');
			}
		} else {
			if(e.id.indexOf(fullId) == 0) {
				e.isExpanded = false;
				e.style.display = 'none';
			}
			else if (e.id.indexOf(wrapId) == 0) {
				setWrapClass(e, 'tripWrap');
			}
		}
	}
	var divs = document.getElementsByTagName("IMG");
	for (var i = 0; i < divs.length; i++) {
		var e = divs[i];
		if(mode == 1) {
			if(e.id.indexOf(imgId) == 0) {
				e.src = 'rp/img/minus.gif';
			}
		} else {
			if(e.id.indexOf(imgId) == 0) {
				e.src = 'rp/img/plus.gif';
			}
		}
	}
	if(mode == 1) {
		elem(showButtonId).style.display = 'none';
		elem(hideButtonId).style.display = 'block';
	} else {
		elem(showButtonId).style.display = 'block';
		elem(hideButtonId).style.display = 'none';
	}
}
/* Timetable functions end */

/* Cart functions begin */
function toggleCartTrip(tripId, mode) {
	if(mode == 0) {
		elem('fullc_' + tripId).style.display = 'none';
		elem('simplec_' + tripId).style.display = 'block';
	} else {
		elem('fullc_' + tripId).style.display = 'block';
		elem('simplec_' + tripId).style.display = 'none';
	}
}

function toggleCartAll() {
	var divs = document.getElementsByTagName("DIV");
	for (var i = 0; i < divs.length; i++) {
		var e = divs[i];
		if(toggleCartMode == 1) {
			if(e.id.indexOf('simplec_') == 0) {
				e.style.display = 'none';
			} else if(e.id.indexOf('fullc_') == 0) {
				e.style.display = 'block';
			}
		} else {
			if(e.id.indexOf('simplec_') == 0) {
				e.style.display = 'block';
			} else if(e.id.indexOf('fullc_') == 0) {
				e.style.display = 'none';
			}
		}
	}
	if(toggleCartMode == 1) {
		elem('showToggleCart').style.display = 'none';
		elem('hideToggleCart').style.display = 'block';
		toggleCartMode = 2;
	} else {
		elem('showToggleCart').style.display = 'block';
		elem('hideToggleCart').style.display = 'none';
		toggleCartMode = 1;
	}
}
/* Cart functions end */


function toggleWaiter() {
	var theForm = elem('searchForm');
	var theAction = theForm.action;
	var display = theAction.indexOf('Search')>=0 ||
						theAction.indexOf('FindLocation')>= 0 ||
						theAction.indexOf('GetDepartures')>= 0 ||
						theAction.indexOf('SearchAgain')>= 0;
	if (display)
	{
		showWaiter();
	}
	setTimeout(triggerAnimateImage, 100);
	return true;
}

function triggerAnimateImage() {
	elem('waitImage').src=elem('waitImage').src;
}

function showWaiter()
{
	elem('iframeDiv').style.visibility = 'visible';
	elem('waiter').style.visibility = 'visible';
}

function toggleWaiter2() {
	return toggleWaiter();
}

function showWaiter2()
{
	showWaiter();
}

/* Calendar functions start */

function setMultipleValuesF(y, m, d) {
	/* Make sure that the month and day is a two digit string so comparisons work further down */
	m = makeTwoDigits(m);
	d = makeTwoDigits(d);
	var ym = "" + y + "" + m;
	for (var i=0; i<elem('outmonthyear').options.length; i++) {
		if (elem('outmonthyear').options[i].value == ym) {
			elem('outmonthyear').selectedIndex = i;
		}
	}
	for (var i=0; i<elem('outday').options.length; i++) {
		if (elem('outday').options[i].value == d) {
			elem('outday').selectedIndex = i;
		}
	}
	if (self.outDateChanged)
		outDateChanged();
}

function makeTwoDigits(theValue)
{
	if (theValue < 10)
		return "0" + theValue;
	else
		return theValue;
}

function setMultipleValuesT(y, m, d) {
	/* Make sure that the month and day is a two digit string so comparisons work further down */
	m = makeTwoDigits(m);
	d = makeTwoDigits(d);
	var ym = "" + y +  "" + m;
	for (var i=0; i<elem('inmonthyear').options.length; i++) {
		if (elem('inmonthyear').options[i].value == ym) {
			elem('inmonthyear').selectedIndex = i;
		}
	}
	for (var i=0; i<elem('inday').options.length; i++) {
		if (elem('inday').options[i].value == d) {
			elem('inday').selectedIndex = i;
		}
	}
	if (self.returnDateChanged)
		returnDateChanged();
}

function setMultipleValuesPeriod1(y, m, d) {
	if(m < 10) {
		var ym = "" + y + "0" + m;
	} else {
		var ym = "" + y +  "" + m;
	}
	for (var i=0; i<elem('per1monthyear').options.length; i++) {
		if (elem('per1monthyear').options[i].value == ym) {
			elem('per1monthyear').selectedIndex = i;
		}
	}
	for (var i=0; i<elem('per1day').options.length; i++) {
		if (elem('per1day').options[i].value == d) {
			elem('per1day').selectedIndex = i;
		}
	}
}

function setMultipleValuesPeriod2(y, m, d) {
	if(m < 10) {
		var ym = "" + y + "0" + m;
	} else {
		var ym = "" + y +  "" + m;
	}
	for (var i=0; i<elem('per2monthyear').options.length; i++) {
		if (elem('per2monthyear').options[i].value == ym) {
			elem('per2monthyear').selectedIndex = i;
		}
	}
	for (var i=0; i<elem('per2day').options.length; i++) {
		if (elem('per2day').options[i].value == d) {
			elem('per2day').selectedIndex = i;
		}
	}
}

function getDateString(ym_obj,d_obj) {
	var ym = ym_obj.options[ym_obj.selectedIndex].value;
	var y = ym.substr(0, 4);
	var m = ym.substr(4);
	var d = d_obj.options[d_obj.selectedIndex].value;
	if (y == "" || m == "") {
		return null;
	}
	if (d == "") {
		d = 1;
	}
	var str = y + '-' + m + '-' + d;
	return str;
}

/* Calendar functions end */

function ol5(msg)
{
	return overlib(msg,WIDTH,300);
}

