// $Date: 2007/10/13 11:10:55 $
// $Name: ukconcept_v1_r56 $
// $Revision: 1.7 $
// $State: Exp $

/* Article Navigation */

var numdivs=4;

IE5=NN4=NN6=false
if(document.all)IE5=true
else if(document.layers)NN4=true
else if(document.getElementById)NN6=true

var videoURL = "";

function switchProp(element,prop,newVal) {
        if(NN4) eval("getElement('"+element+"')."+prop+"='"+newVal+"'")
        if(IE5) eval("getElement('"+element+"').style."+prop+"='"+newVal+"'")
        if(NN6) eval("getElement('"+element+"').style."+prop+"='"+newVal+"'") 
}


function showArticle( article, max) {
    for(i=1;i<=max;i++) {
        if (document.getElementById("articleID"+i))
        {
            if (i == article)
            {
                switchProp("articleID"+i,'display','block');
            } else {
                switchProp("articleID"+i,'display','none');
            }
        }
    }
}

function enhHideAd() {
    if (document.getElementById('widesky160x600'))
    {
        switchProp('widesky160x600','display','none')
    }
}

function enhShowAd(adkey) {
    if (document.getElementById('widesky160x600'))
    {
        if (adkey)
        {
            switchProp('widesky160x600','display','block')
            switchProp('enhArticle','width','450px')
        } else {
            switchProp('widesky160x600','display','none')
            switchProp('enhArticle','width','600px')
        }
    }
}

function showPage(page) {
    for(i=0;i<numdivs;i++) {
        if ((document.getElementById("navItem"+i)) && (document.getElementById("pageID"+i)))
        {
            if (i == page)
            {
                switchProp("navItem"+i,'color','red');
                switchProp("pageID"+i,'display','block');
            } else 
            {
                switchProp("navItem"+i,'color','094C9D');
                switchProp("pageID"+i,'display','none');
            }
        }
    }
}

function arrayDebug() {
    alert('In debug');
    for (x=1;x<=5;x=x+1) {
            alert(imageUrls1[x]);
        }
}

/* Enhanced Photo Gallery */
var maxItem1 = "";
var headText1 = new Array();
var contentText1 = new Array();
var imageUrls1 = new Array();
var imageAlts1 = new Array();
var imageClicks1 = new Array();
var widgetSrc1 = new Array();
var currentDir1 = 1; // 0 = backwards
var currentItem1 = 1; // range 1 to x
var fade1 = 0;
var hasWidgets1 = 0;
var fadeLevel1 = 0;
var paused1 = false;
var locked1 = false;
var isPopup1 = 1;
//var isPendingAuto1 = true;
var pendingAutoID1 = 1;
var timer1 = 0;

var isPopup1 = 0;

function setPause() {
    if (maxItem1 <= 1) {
            paused1 = 1;
        }
}

function moveNext1(p) {
    paused1 = p;
    updatePauseButton1();
    currentItem1++;
    if (currentItem1 > maxItem1) {
        currentItem1 = 1;
    }
    updatePage1();
}

function movePrev1(p) {    
    paused1 = p;
    updatePauseButton1();
    currentItem1--;
    if (currentItem1 < 1) {
        currentItem1 = maxItem1;
    }
    updatePage1();
}

function moveTo1(x, p) {
    paused1 = p;    
    updatePauseButton1();
    if (x > maxItem1) {
        x = maxItem1
    }
    if (x < 1) {
        x = 1;
    }
    currentItem1 = x;
    updatePage1();
}

function pause1() {
    if (!locked1) {
        writeDebug21("pause set to " + !paused1);
                
        paused1 = !paused1;
        
        updatePauseButton1();

        if (!paused1) {
                pendingAutoID1++;
                writeDebug21("Re-start sequence..." + pendingAutoID1);
                //writeDebug21("Timer set to :   "+timer1+"<br>");
                window.clearTimeout(timer1);
                //writeDebug21("Cleared "+timer1+"<br>");
                timer1 = setTimeout("animateAuto1(0, 'autoMove1()'," + pendingAutoID1 + ");", 20000);
                //writeDebug21("Set "+timer1+"<br>");
        }
    }
}

function updatePage1() {
    
    writeDebug21("updatePage");

    var eImage = document.getElementById("imgContent1");
    var eHeadText = document.getElementById("divHeadText1");
    var eText = document.getElementById("divText1");    
    var eButtons = document.getElementById("spanButtons1");
    var ePos = document.getElementById("spanPos1");
    var eLink = document.getElementById("linkImage1");
    var eLink = document.getElementById("linkImage1");
    var eFrame = document.getElementById("widgetFrame1");
    var eTextRow = document.getElementById("textRow1");
    var eBottomRow = document.getElementById("bottomRow1");
    var eNavLink = document.getElementById("divLinks1");

    noText = false;
    noHeadline = false;

    if (eHeadText) { 
        if (headText1[currentItem1].length > 0) {
            eHeadText.innerHTML = "<b>" + headText1[currentItem1] + "</b>";
            eHeadText.style.display = "";
        } else {
            eHeadText.style.display = "none";
            noHeadline = true;
        }
    }
    if (eText) {
        
        if (contentText1[currentItem1].length > 0) {
            if (8 >8) {
                eText.innerHTML = "<p>" + contentText1[currentItem1]+"</p>";} else {
                eText.innerHTML = contentText1[currentItem1];}
            eText.style.display = "";
        } else {
            eText.style.display = "none";
            noText = true;
        }
    }
    if (eTextRow && eBottomRow) {
        if (noText && noHeadline) {
            eTextRow.style.display = "none";
            eBottomRow.style.display = "none";
        } else {
            eTextRow.style.display = "";
            eBottomRow.style.display = "";
        }
    }

    if (eImage) {
        eImage.src = imageUrls1[currentItem1];
        eImage.alt = imageAlts1[currentItem1];
    }
    if (eLink) {
        eLink.href = imageClicks1[currentItem1];
    }
    if (ePos) {
        ePos.innerHTML = currentItem1 + " of " + maxItem1
    }
    if (eNavLink) {

        var sNavLinks = "";

        for (i=1;i<=maxItem1;i++) {
            if (i != currentItem1) {
                
                sNavLinks = sNavLinks + "<a href=\"javascript:animateClick1(0, 'moveTo1(" + i + ",true)');\" >" + i + "</a><span style=\"cursor:default;padding-right:3px;\"></span>";
                //alert( "<a href=\"javascript:animateClick1(0, 'moveTo1(" + i + ",true)');\" style='cursor:pointer;'>" + i + "</a>")
            } else {

                sNavLinks = sNavLinks +  "<span style=\"cursor:default;padding-right:3px;\" class=\"selected_picture_text\">" + i + "</span>";
            }
        }
        eNavLink.innerHTML = sNavLinks;
        

    }

    if (eFrame && hasWidgets1) {
        // only update iFrame if it has changed.
        if (widgetSrc1[currentItem1] != eFrame.src) {
            eFrame.src = widgetSrc1[currentItem1];
        }
    }
    
    if (eButtons) {
        var sButtons = "";

        for (i=1;i<=maxItem1;i++) {
            if (i != currentItem1) {
                var mout = "onMouseOut=\"changeImage1('button1_" + i + "', 'http://cdn.digitalcity.com/aoluk/widgets/gal_but_norm_" + i + ".gif');\" ";
                var mover = "onMouseOver=\"changeImage1('button1_" + i + "', 'http://cdn.digitalcity.com/aoluk/widgets/gal_but_over_" + i + ".gif');\" ";
                            
                sButtons = sButtons + "<a href=\"javascript:animateClick1(0, 'moveTo1(" + i + ",true)');\"" + mover + " " + mout + "><img id='button1_" + i + "' src=\"http://cdn.digitalcity.com/aoluk/widgets/gal_but_norm_" + i + ".gif\" border=\"0\" width=\"20\" height=\"20\"></a><img src=\"http://cdn.digitalcity.com/aoluk/news_portal/clear.gif\" width=\"1\" border=\"0\"  />";
            } else {
                sButtons = sButtons + "<img src=\"http://cdn.digitalcity.com/aoluk/widgets/gal_but_down_" + i + ".gif\" border=\"0\" width=\"20\" height=\"20\"><img src=\"http://cdn.digitalcity.com/aoluk/news_portal/clear.gif\" width=\"1\" border=\"0\"  />";
            }
        }
        eButtons.innerHTML = sButtons;
    }

    if (isPopup1) {
        resizePopup1();
    }
}

function writeDebug1(message) {
    if (0) {
        var eDebug = document.getElementById("divDebug1");

        if (eDebug) {
            eDebug.innerHTML = message; 
        }
    }
}

function writeDebug21(message) {
    if (0) {
        var eDebug = document.getElementById("divDebug21");

        if (eDebug) {
            eDebug.innerHTML = eDebug.innerHTML + "<br>" + message; 
        }
    }
}

function animateClick1(direction, nextCommandText) {
    writeDebug21("animateClick");    
    if (!locked1) {
        paused1 = true;
        updatePauseButton1();
        animate1(direction, nextCommandText, false);
    }
}

function animateAuto1(direction, nextCommandText, pendingID) {
//    if (pendingID == pendingAutoID1) {
        writeDebug21("animateAuto " + pendingID);    
        animate1(direction, nextCommandText, true);
//    } else {
//        writeDebug21("Cancelled animateAuto - old id " + pendingID);    
//    }
}

function updatePauseButton1() {
    var ePause = document.getElementById("paus1");

    if (ePause && (8 <8)) {
            if (paused1) {
                changeImage1('paus1', 'http://cdn.digitalcity.com/aoluk/widgets/controls_down_p.gif');
            } else {
             changeImage1('paus1', 'http://cdn.digitalcity.com/aoluk/widgets/controls_norm_p.gif');
        }
        }else {
        if (paused1) {
                changeImage1('paus1', 'http://cdn.digitalcity.com/aoluk/portal_general/pause_active');
            } else {
             changeImage1('paus1', 'http://cdn.digitalcity.com/aoluk/portal_general/pause_normal');
             }

        }
}

function animate1(direction, nextCommandText, isAuto) {    
    
    var pos = "0";
    if (isAuto && paused1) {
        writeDebug21("Cancelling automatic as paused");
        return;
    }

    if (fade1) {
        setHourlassMousePointer1();
        
        var eFade = document.getElementById("divFade1");
        
        if (eFade) {
            
            if (direction) {
                fadeLevel1 = fadeLevel1 - 25;
            } else {
                fadeLevel1 = fadeLevel1 + 25;
            }

            // note: use 120 as the limit to "pause" briefly whilst completely faded out
            if (fadeLevel1 > 120) {
                fadeLevel1 = 120;
            }
            
            if (fadeLevel1 < 0) {
                fadeLevel1 = 0;
                locked1 = false;
                eFade.style.filter = "alpha(opacity=" + fadeLevel1 + ");"
                
                setDefaultMousePointer1();
                
                eval(nextCommandText);
                        
                if (!paused1) {    //  && !isPendingAuto1
                    pendingAutoID1++;
                    writeDebug21("Stop fade, schedule next fade " + pendingAutoID1 + " in 20000");    
                    //isPendingAuto1 = true;
                    window.clearTimeout(timer1);
                    timer1 = setTimeout("animateAuto1(0, 'autoMove1()', pendingAutoID1);", 20000);
                }
                pos = "1";
            } else {
                eFade.style.filter = "alpha(opacity=" + fadeLevel1 + ");"        

                if ((fadeLevel1 < 120)) {
                    window.clearTimeout(timer1);
                    timer1 = setTimeout("animate1(" + direction + ",'" + nextCommandText + "', false)", 50);
                    locked1 = true;            
                    pos = "2 (" + direction + "," + nextCommandText + ")";
                } else {
                    writeDebug21("Flip direction of fade");
                    eval(nextCommandText);
                    animate1(!direction, "", false);
                    pos = "3";
                }
            }
        }
    } else {
        // no fade set, so just do the action without fading at all
        eval(nextCommandText);
        window.clearTimeout(timer1);
        timer1 = setTimeout("animate1(0, 'autoMove1()', true);", 20000);
    }

    writeDebug1("<b>Debug:</b> Locked:" + locked1 + " FadeL:" + fadeLevel1 + " Paused:" + paused1 + " NextCmd:" + nextCommandText + " Pos:" + pos + " isAuto:" + isAuto); 
}

function autoMove1(delayPeriod) {
    writeDebug21("autoMove");
    
    if (!paused1) {
        if (currentDir1) {
            moveNext1(false);
        } else {
            movePrev1(false);
        }
        
    }    
}

function preloadImages1() {
    writeDebug21("preloadImages");
    
    for(i=1;i<=maxItem1;i++) {
        var x = new Image()
        x.src = imageUrls1[i];
    }
}

function changeImage1(id, url) {
    var eImage = document.getElementById(id);
    if (eImage) {
        eImage.src = url;
    }
}

function resizePopup1() {
    writeDebug21("resizePopup");

    if (!isPopup1) {
        return;
    }    

    var eTable = document.getElementById('table1');
    if (eTable) {
        try {
            
            if (0 > 0 && 0 > 0) {
                window.resizeTo(0, 0);
            } else {
                if (1 > 0) {
                    window.resizeTo(eTable.offsetWidth+2, eTable.offsetHeight+2);
                }
            }
        } catch (exceptionObj) {
            writeDebug1("Error resizing");
        }
    } 
}

function resizeIFrame1() {

    writeDebug21("resizeIframe");

    var eFrame = document.getElementById("widgetFrame1");

    if (eFrame) {
            if (eFrame.contentWindow == null) return;
        // find the height of the internal page
        var h = eFrame.contentWindow.document.body.scrollHeight + 2;    

        if (h > 5) {
            // change the height of the iframe
            eFrame.height = h;        
        } else {
            // in case the onload occurred too soon, try again every 0.2s until it's OK
            window.clearTimeout(timer1);
            timer1 = setTimeout("resizeIFrame1();", 200);
        }
    }
}

function setHourlassMousePointer1() { 
    for (var i=0;i < document.all.length; i++) {
        document.all(i).style.cursor = 'wait'; 
    } 
}

function setDefaultMousePointer1() { 
    for (var i=0;i < document.all.length; i++) {
        document.all(i).style.cursor = 'default'; 
    }
}

timer1 = setTimeout("animateAuto1(0, 'autoMove1()', pendingAutoID1);", 20000);
preloadImages1();

/* External flash loading */

function loadFlash ( filename ) {
    var divFlash = document.getElementById("enhanced_flash");
    var object = "<object height=\"400\" width=\"600\" classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" codebase=\"http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0\" id=\"bignewsstory\" height=\"400\" width=\"630\"><param name=\"movie\" value=\""+ filename +"\"></param> <param name=\"quality\" value=\"high\"></param><param name=\"bgcolor\" value=\"#FFFFFF\"></param><param name=\"wmode\" value=\"opaque\"></param><embed src=\""+filename+"\" quality=\"high\" bgcolor=\"#FFFFFF\" name=\"myMovieName\" type=\"application/x-shockwave-flash\" pluginspage=\"http://www.macromedia.com/go/getflashplayer\" align=\"\" height=\"400\" width=\"600\" wmode=\"opaque\"></embed></object>";
    if (divFlash) {
            divFlash.innerHTML = object; 
        }
}

/* Video Loading */

function playMovie( filename) {
    var content = filename;
    FUGU.PlayVideoLarge( content, [ "", " ", ""],  "grey");
    FUGU.autoplay="true";
    try {
    if (document.parent.startUpdates) {
        document.parent.FUGUHandle = FUGU;
        document.parent.startUpdates();
    } else {
        top.FUGUHandle = FUGU;
        top.startUpdates();
    }
    } catch (err) {}
}

function stopMovie( ) {
    FUGU.PlayVideoLarge( "" , [ "", "", ""],  "grey");
}

function startGall() {
    var paused1 = false;
}

