// -------------------------------------------------
// flash
// -------------------------------------------------

function FL_CloseFlash()
{
	return CL_removePopup();
}

// -------------------------------------------------
// webcams
// -------------------------------------------------
function CU_popupWebcam(id, language, width, height) {
    if (language == null) language = __language;
    if (width == null) width = 700;
    if (height == null) height = 600;

    var s_url = '/pages/popupWebcam.aspx?id=' + id + '&language=' + language;
    return CL_popupDiv(s_url, width, height, null, 100);
}

// -------------------------------------------------
// show google map - companies
// -------------------------------------------------
function showGoogleMap(object, url) {
    if (url != "") {
        var o = MM_findObj(object);
        if (o != null) {
            var dmy = o.getAttribute('googleLoaded');

            if (dmy == '0') {
                o.setAttribute('googleLoaded', 1);
                o.innerHTML = "<div class='googleMap'><iframe width=\"499\" height=\"350\" frameborder=\"0\" scrolling=\"no\" marginheight=\"0\" marginwidth=\"0\" src=" + url + "></iframe></div>";
            }
        }
    }
    return false;
}
// -------------------------------------------------
// show/hide objects
// -------------------------------------------------
function showhide(object) {
    var o = MM_findObj(object);
    if (o != null) {
        if (o.className == 'hidingdivs')
            o.className = '';
        else
            o.className = 'hidingdivs';
    }

    return false;
}

function showhideSearch(object) {
    var o = MM_findObj(object);
    if (o != null) {
        if (o.className == 'hiddencontent')
            o.className = 'searchcontent';
        else
            o.className = 'hiddencontent';
    }

    return false;
}

function changeClassName(object, classname1, classname2) {
    var o = MM_findObj(object);
    if (o != null) {
        if (o.className == classname1)
            o.className = classname2;
        else
            o.className = classname1;
    }

    return false;
}


// ----------------------------------------------------- 
// Quick express
// ----------------------------------------------------- 

var _qeArrivalID;
var _qeDurationID;
var _qePersonsID;
var _qeTypeID;
var _qeComfortID;

var _qeBoardtype = new Array(2, 3, 4, 1);

function CU_qeSearch(mode) {
    var boardType = MM_findObj(_qeComfortID);

    var params = '&qry=';
    params += CU_getParam(_qeArrivalID);
    params += CU_getParam(_qeDurationID);
    params += CU_getParam(_qeComfortID);
    params += CU_getParam(_qeTypeID);
    params += CU_getParam(_qePersonsID);

    if (boardType != null) params += _qeBoardtype[boardType.selectedIndex];

    return CU_qeExtendedSearch(mode, params);
}

function CU_qeExtendedSearch(mode, params) {
    var width = 615;
    var height = 550;
    var lang = __language.toLowerCase();
    params = params == null ? '' : params;

    switch (mode) {
        case 0:
            height = 550;
            break;

        case 2:
            width = 635;
            height = 550;
            break;

        case 3:
            break;

    }

    return CL_popupDiv('/pages/popupQuickRequest.aspx?__language=' + lang + '&mode=' + mode + params, width, height, null, 20, false)
}

function CU_getParam(id) {
    var o = MM_findObj(id);
    var result = '';

    if (o)
        result += encodeURI(o.value) + '|';

    return result;
}


// ----------------------------------------------
// alpha bug
// ----------------------------------------------

//Array containing all PNG images on the page

var PNGimageArray = new Array();
var isPrinting = false;


//Path to the blank image (1x1 transparent)
var blankSrc = "/media/blank.gif";


//Captures print events
//window.attachEvent("onbeforeprint", function() { beforePrint(); });
//window.attachEvent("onafterprint", function() { afterPrint(); });

//Tests if element is a PNG image, and if so fixes it
function addPngImage(element) {
    if (/\.png$/i.test(element.src)) {
        fixImage(element);
        element.attachEvent("onpropertychange", function()
        { propertyChanged(); });
        PNGimageArray[PNGimageArray.length] = element;
    }
}

//Applies filter and changes source to blank
function fixImage(element) {
    element.runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + element.src + "')";
    element.src = blankSrc;
}

//If property "src" is changed fixs image (not 
//if it is changed to blank though)
function propertyChanged() {
    if (isPrinting) return;
    var element = event.srcElement;
    var pName = event.propertyName;
    if (pName != "src") return;
    if (!new RegExp(blankSrc).test(element.src))
        fixImage(element);
}

//Turns image back to original before print (Explorer can't print filters)
function beforePrint() {
    isPrinting = true;
    var element;
    for (var i = 0; i < PNGimageArray.length; i++) {
        element = PNGimageArray[i];
        element.src = element.filters[0].src;
        element.runtimeStyle.filter = "";
    }
}

//Fixes image after print
function afterPrint() {
    isPrinting = false;
    var element;
    for (var i = 0; i < PNGimageArray.length; i++) {
        element = PNGimageArray[i];
        fixImage(element);
    }
}
