/*  ---------------------------------------------------------
    Name:       DOM Script
    Des:        Controls Home-Page Banner, Main Nav Drop-Down, Side Nav Drop-Down & Position Arrow, 
                Prefered Country Info(contacts, costs etc), Itinerary Box Tabs
    --------------------------------------------------------- */
window.addEvent('domready', function() {

    if ($('imageBanner')) {
        var t;
        var slideShowSpeed = 5000;

        // Duration of crossfade (seconds)
        var crossFadeDuration = 3;

        // Specify the image files
        var Pic = new Array(); // don't touch this
        Pic[0] = '/images/banners/home-mahlatini-01.jpg';
        Pic[1] = '/images/banners/home-safaris-01.jpg';
        Pic[2] = '/images/banners/home-family-01.jpg';
        Pic[3] = '/images/banners/home-honeymoons-01.jpg';
        //	Pic[4] = '/images/banners/twin-centre-01.jpg';
        //	Pic[5] = '/images/banners/gorilla-trekking-01.jpg';
        //	Pic[6] = '/images/banners/golf-01.jpg';
        //	Pic[7] = '/images/banners/luxury-rail-01.jpg';

        var count = 0;
        var preLoad = new Array();

        for (i = 0; i < Pic.length; i++) {
            preLoad[i] = new Image();
            preLoad[i].src = Pic[i];
        }

        var runSlideShow = function() {
            (function() { $('imageBanner').fade('in'); }).delay(500);

            if (count == Pic.length) {
                count = 0;
            }

            $('imageBanner').setProperty('src', preLoad[count].src);

            (function() { $('imageBanner').fade('out'); }).delay(4500);

            count++;
        }
        runSlideShow.periodical(slideShowSpeed);
    }

//    if ($('favoriteLocations')) {
//        var bannerSlideShowSpeed = 6000;

//        // Duration of crossfade (seconds)
//        var bannerCrossFadeDuration = 3;

//        // Specify the image files
//        var banner = new Array(); // don't touch this
//        banner[0] = '/images/banners/fav-loc-south-africa-mauritius-honeymoon.jpg';
//        banner[1] = '/images/banners/fav-loc-tanzania-zanzibar-honeymoons.jpg';
//        //  Pic[2] = '/images/banners/fav-loc-south-africa-holidays.jpg';
//        //  Pic[3] = '/images/banners/fav-loc-tanzania-zanzibar-honeymoons.jpg';
//        //	Pic[4] = '/images/banners/twin-centre-01.jpg';
//        //	Pic[5] = '/images/banners/gorilla-trekking-01.jpg';
//        //	Pic[6] = '/images/banners/golf-01.jpg';
//        //	Pic[7] = '/images/banners/luxury-rail-01.jpg';
//        var Link = new Array(); // don't touch this
//        Link[0] = '/mauritius-south-africa-honeymoons.aspx';
//        Link[1] = '/tanzania/honeymoons-tanzania.aspx';

//        var Text = new Array(); // don't touch this
//        Text[0] = 'South Africa &amp; Mauritius Honeymoons';
//        Text[1] = 'Tanzania &amp; Zanzibar Honeymoons';

//        var bannerCount = 0;
//        var preLoadBanner = new Array();

//        for (i = 0; i < banner.length; i++) {
//            preLoadBanner[i] = new Image();
//            preLoadBanner[i].src = banner[i];
//        }

//        var runBannerSlideShow = function() {
//            (function() { $('favLocImageBanner').fade('in'); }).delay(500);

//            if (bannerCount == banner.length) {
//                bannerCount = 0;
//            }

//            $('favLocImageBanner').setProperty('src', preLoadBanner[bannerCount].src);
//            $('favLocH2Link').setProperty('href', Link[bannerCount]);
//            $('favLocH2Link').setProperty('title', Text[bannerCount]);
//            $('favLocH2Link').innerHTML = Text[bannerCount];
//            $('favLocLink').setProperty('href', Link[bannerCount]);
//            $('favLocLink').setProperty('title', Text[bannerCount]);
//            $('favLocLink').innerHTML = Text[bannerCount];

//            (function() { $('favLocImageBanner').fade('out'); }).delay(5500);

//            bannerCount++;
//        }
//        runBannerSlideShow.periodical(bannerSlideShowSpeed);
//    }


    if ($('menuPosition')) {
        var listItems = $('accordion').getChildren('li');
        for (var i = 0; i < listItems.length; i++) {
            if ($('menuPosition').get('text').toInt() == i) {
                if (!listItems[i].hasClass('accordionNav')) {
                    listItems[i].getFirst('a').addClass('active');
                }
                else {
                    var placesToSee = listItems[i].getFirst('ul').getChildren('li');
                    for (var i = 0; i < placesToSee.length; i++) {
                        if ($('placesMenuPosition').get('text').toInt() == i) {
                            placesToSee[i].getFirst('a').addClass('active');
                        }
                        else {
                            placesToSee[i].getFirst('a').removeClass('active');
                        }
                    }
                }
            }
            else {
                if (!listItems[i].hasClass('accordionNav')) {
                    listItems[i].getFirst('a').removeClass('active');
                }
            }
        }
    }

    if ($('placesMenuPosition')) {
        var accordion = new Accordion('span.atStart', 'ul.atStart', {
            //start:'all-close',
            //show: showIndex,
        opacity: false,
            onActive: function(toggler, element) {
                /*toggler.setStyle('background', '#1d6a87');*/
                toggler.setStyle('background', 'url(/images/layout/nav-drop-down-hover.jpg)');
                toggler.setStyle('color', '#fff');
            },

            onBackground: function(toggler, element) {
                toggler.setStyle('color', '#34445b');
                toggler.setStyle('background', '#d7eaf0');
            }
        }, $('accordion'));

    }
    else {
        var accordion = new Accordion('span.atStart', 'ul.atStart', {
        start: 'all-close',
            alwaysHide: true,

            //show: showIndex,
            opacity: false,
            onActive: function(toggler, element) 
            {
                /*toggler.setStyle('background', '#1d6a87');*/
                toggler.setStyle('background', 'url(/images/layout/nav-drop-down-hover-3.jpg)');
                toggler.setStyle('color', '#fff');
            },

            onBackground: function(toggler, element) 
            {
                toggler.setStyle('color', '#1d6a87');
                /*toggler.setStyle('background', '#d7eaf0');*/
                toggler.setStyle('background', 'url(/images/layout/nav-drop-down-bg-2.jpg)');
            }
        }, $('accordion'));
    }


    // is a custom one we've made
    $('navCountries').addEvents({
        'mouseenter': function() {
            if ($('countryDropdown').hasClass('farLeft')) {
                $('navCountries').setStyle('background', 'url(/images/buttons/nav-countries-hover.gif)');
                $('countryDropdown').removeClass('farLeft');
                $('countryDropdown').addClass('auto');
            }
        },
        'mouseleave': function() {
            // Resets the tween and changes the element back to its original size  
            if ($('countryDropdown').hasClass('auto')) {
                $('navCountries').setStyle('background', 'url(/images/buttons/nav-countries.gif)');
                $('countryDropdown').removeClass('auto');
                $('countryDropdown').addClass('farLeft');
            }
        }
    });

    $('countryDropdown').addEvents({
        'mouseenter': function() {
            if ($('countryDropdown').hasClass('farLeft')) {
                $('navCountries').setStyle('background', 'url(/images/buttons/nav-countries-hover.gif)');
                $('countryDropdown').removeClass('farLeft');
                $('countryDropdown').addClass('auto');
            }
        },
        'mouseleave': function() {
            // Resets the tween and changes the element back to its original size
            if ($('countryDropdown').hasClass('auto')) {
                $('navCountries').setStyle('background', 'url(/images/buttons/nav-countries.gif)');
                $('countryDropdown').removeClass('auto');
                $('countryDropdown').addClass('farLeft');
            }
        }
    });

    $('navHolidays').addEvents({
        'mouseenter': function() {
            if ($('holidayDropdown').hasClass('farLeft')) {
                $('navHolidays').setStyle('background', 'url(/images/buttons/nav-holidays-hover.gif)');
                $('holidayDropdown').removeClass('farLeft');
                $('holidayDropdown').addClass('auto');
            }
        },
        'mouseleave': function() {
            if ($('holidayDropdown').hasClass('auto')) {
                $('navHolidays').setStyle('background', 'url(/images/buttons/nav-holidays.gif)');
                $('holidayDropdown').removeClass('auto');
                $('holidayDropdown').addClass('farLeft');
            }
        }
    });


    $('holidayDropdown').addEvents({
        'mouseenter': function() {
            if ($('holidayDropdown').hasClass('farLeft')) {
                $('navHolidays').setStyle('background', 'url(/images/buttons/nav-holidays-hover.gif)');
                $('holidayDropdown').removeClass('farLeft');
                $('holidayDropdown').addClass('auto');
            }
        },
        'mouseleave': function() {
            // Resets the tween and changes the element back to its original size
            if ($('holidayDropdown').hasClass('auto')) {
                $('navHolidays').setStyle('background', 'url(/images/buttons/nav-holidays.gif)');
                $('holidayDropdown').removeClass('auto');
                $('holidayDropdown').addClass('farLeft');
            }
        }
    });
    
    
    $('navTwinCentre').addEvents({
        'mouseenter': function() {
            if ($('twinCentreDropdown').hasClass('farLeft')) {
                $('navTwinCentre').setStyle('background', 'url(/images/buttons/nav-twincentre-hover.gif)');
                $('twinCentreDropdown').removeClass('farLeft');
                $('twinCentreDropdown').addClass('auto');
            }
        },
        'mouseleave': function() {
            // Resets the tween and changes the element back to its original size
        if ($('twinCentreDropdown').hasClass('auto')) {
            $('navTwinCentre').setStyle('background', 'url(/images/buttons/nav-twincentre.gif)');
                $('twinCentreDropdown').removeClass('auto');
                $('twinCentreDropdown').addClass('farLeft');
            }
        }
    });

    $('twinCentreDropdown').addEvents({
        'mouseenter': function() {
        if ($('twinCentreDropdown').hasClass('farLeft')) {
            $('navTwinCentre').setStyle('background', 'url(/images/buttons/nav-twincentre-hover.gif)');
                $('twinCentreDropdown').removeClass('farLeft');
                $('twinCentreDropdown').addClass('auto');
            }
        },
        'mouseleave': function() {
            // Resets the tween and changes the element back to its original size
        if ($('twinCentreDropdown').hasClass('auto')) {
            $('navTwinCentre').setStyle('background', 'url(/images/buttons/nav-twincentre.gif)');
                $('twinCentreDropdown').removeClass('auto');
                $('twinCentreDropdown').addClass('farLeft');
            }
        }
    });
    
});


function activateDescription(thisElement)
{
	var descriptionAnchor = $(thisElement);
	var accommodationAnchor = $(thisElement).getNext('a');
	var descriptionDiv = $(thisElement).getParent('div').getNext('div').getFirst('div');
	var accommodationDiv = $(thisElement).getParent('div').getNext('div').getLast('div');
	
	if (descriptionDiv.hasClass('shortDescriptionOff'))
	{
		accommodationDiv.removeClass('locationDescription');
		accommodationDiv.addClass('locationDescriptionOff');
		descriptionDiv.removeClass('shortDescriptionOff');
		descriptionDiv.addClass('shortDescription');
		
		descriptionDiv.set('slide');
		descriptionDiv.slide('hide').slide('in')
		descriptionDiv.get('slide'); 
	}
	
	if (descriptionAnchor.hasClass('tripDescription'))
	{
		accommodationAnchor.removeClass('tripAccommodationActive');
		accommodationAnchor.addClass('tripAccommodation');
		descriptionAnchor.removeClass('tripDescription');
		descriptionAnchor.addClass('tripDescriptionActive');
	}
}

function activateAccommodation(thisElement)
{
	var accommodationAnchor = $(thisElement);
	var descriptionAnchor = $(thisElement).getPrevious('a');
	var accommodationDiv = $(thisElement).getParent('div').getNext('div').getLast('div');
	var descriptionDiv = $(thisElement).getParent('div').getNext('div').getFirst('div');

	if (accommodationDiv.hasClass('locationDescriptionOff'))
	{
		descriptionDiv.removeClass('shortDescription');
		descriptionDiv.addClass('shortDescriptionOff');
		accommodationDiv.removeClass('locationDescriptionOff');
		accommodationDiv.addClass('locationDescription');
		
		accommodationDiv.set('slide');
		accommodationDiv.slide('hide').slide('in')
		accommodationDiv.get('slide'); 
	}
	
	if (accommodationAnchor.hasClass('tripAccommodation'))
	{
		descriptionAnchor.removeClass('tripDescriptionActive');
		descriptionAnchor.addClass('tripDescription');
		accommodationAnchor.removeClass('tripAccommodation');
		accommodationAnchor.addClass('tripAccommodationActive');
	}	
}

function loadStyleSheet(countryPref) 
{
    //alert(Cookie.read("CountryPref"));
    var cssFile;
    var imageSrc;
    //alert(countryPref);
    switch (countryPref) 
    {
        case "USA":
            //alert("in usa");
            newCssStyle = "url(/images/contact-usa.gif) no-repeat top right";
            imageSrc = "/images/flag-usa.gif";
            break;
        case "ROI":
            //alert("in roi");
            newCssStyle = "url(/images/contact-ire.gif) no-repeat top right";
            imageSrc = "/images/flag-ire.gif";
            break;
        case "EU":
            //alert("in roi");
            newCssStyle = "url(/images/contact.gif) no-repeat top right";
            imageSrc = "/images/flag-europe.gif";
            break;
        default:
            //alert("in def");
            //cssFile = "/css/uk.css"; << old style
            newCssStyle = "url(/images/contact.gif) no-repeat top right";
            imageSrc = "/images/flag-uk.gif";
            break;
    }

    $('selectLocation').getFirst('img').set('src', imageSrc);
    $('contactNo').setStyle('background', newCssStyle);   
}



