// -------------------------------------------------
// flash
// -------------------------------------------------

function FL_CloseFlash()
{
	return CL_removePopup();
}

// ----------------------------------------------
// 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);
    }
}


