﻿var ppPics = [];
var ppLoaded = 0;
var ppWidth = 0;
var ppDir = 0;
var ppMarginRight = 15;

document.observe("dom:loaded",function() {
    $('pic_pic').observe('load',function(event) {
        $('pic_pic').setStyle({'display':'block'});
        $('download').setStyle({'display':'block'});
        $('down_text').setStyle({'display':'block'});
    });
    $('left').observe('mouseover',function(event) {
        ppDir = 3;
        new PeriodicalExecuter(lx_scroll, 0);
    });
    $('right').observe('mouseover',function(event) {
        ppDir =-3;
        new PeriodicalExecuter(lx_scroll, 0);
    });
    $('left').observe('mouseout',function(event) {
        ppDir = 0;
    });
    $('right').observe('mouseout',function(event) {
        ppDir = 0;
    });
    load_pics();
});

function load_pics() {
    new Ajax.Request("pics.xml?uni="+new Date().getTime(),{
        method:'get',
        onSuccess : function (response) {
            if (window.ActiveXObject)  {            
                var pics = response.responseXML.firstChild.nextSibling;
                for (i=0;i<pics.childNodes.length;i++) {
                    var arr = new Object();
                    arr.path = pics.childNodes[i].getAttribute("path");
                    arr.src_main = pics.childNodes[i].getAttribute("src_main");
                    arr.src_big = pics.childNodes[i].getAttribute("src_big");
                    arr.src_thumb = pics.childNodes[i].getAttribute("src_thumb");
                    arr.nbr = pics.childNodes[i].getAttribute("nbr");
                    arr.type = pics.childNodes[i].getAttribute("type");
                    arr.left = 0;
                    ppPics.push(arr);
                }
            } else if (document.implementation && document.implementation.createDocument) {
                var pics = response.responseXML.firstChild;
                for (i=1;i<pics.childNodes.length;i+=2) {
                    var arr = new Object();
                    arr.path = pics.childNodes[i].getAttribute("path");
                    arr.src_main = pics.childNodes[i].getAttribute("src_main");
                    arr.src_big = pics.childNodes[i].getAttribute("src_big");
                    arr.src_thumb = pics.childNodes[i].getAttribute("src_thumb");
                    arr.nbr = pics.childNodes[i].getAttribute("nbr");
                    arr.type = pics.childNodes[i].getAttribute("type");
                    arr.left = 0;
                    ppPics.push(arr);
                }
    		}else{
                alert('Your browser cannot handle this script');
            }
            lx_show();
        }
    });
}

function lx_show() {
    ppLoaded = 0;
    ppWidth = 0;
    var runner = $('runner');
    ppPics.each(function(pic,index) {
        var a = new Element('img',{
            'src' : pic.path + '/' + pic.src_thumb,
            'id' : 'img'+index
        });
        ppPics[index].img = a;
        a.setStyle({'top':'0px','position':'absolute','left':(index*60)+'px','display':'none'});
        runner.insert(a,'after');
        a.observe('click',function(event) {
            lx_showSingle(index);
        });
        if (a.complete) {
            lx_loaded(a);
        } else {
            a.observe('load',function(event) {
                lx_loaded(event.element());
            });
        }
    });
}

function lx_loaded(elm) {
    ppLoaded++;
    if (ppLoaded == ppPics.length) {
        ppWidth = 0;
        ppPics.each(function(item,index) {
            item.img.setStyle({'left':ppWidth+'px','display':'block'});
            ppWidth += item.img.getWidth() + ppMarginRight;
            if (index == 0) {
                lx_showSingle(0);
            }
        });
        $('lx_loading').setStyle({'display':'none'});
        $('runner').setStyle({'width':ppWidth+'px'});
    }
}

function lx_showSingle(nbr) {
    var pic = $('pic_pic');
    var picC = $('pic');
    pic.setStyle({'display':'none'});
    $('download').setStyle({'display':'none'});
    $('down_text').setStyle({'display':'none'});
    pic.src = ppPics[nbr].path + '/' + ppPics[nbr].src_big;
    $('down_a').href = ppPics[nbr].path + '/' + ppPics[nbr].src_main;
    if (ppPics[nbr].type == 'hori') {
        picC.setStyle({'top':'110px','left':'290px'});
        $('download').setStyle({'width':'420px'});
    } else {
        picC.setStyle({'top':'40px','left':'360px'});
        $('download').setStyle({'width':'280px'});
    }
}

function lx_scroll(pe) {
    pe.stop();
    var left = parseInt($('runner').getStyle('left'));
    var max = parseInt($('runnerC').getStyle('width'));
    if (left + ppWidth - 15 < max && ppDir<0)
        return;
    if (left > 0 && ppDir>0)
        return;
    left += ppDir;
    $('runner').setStyle({'left':left+'px'});
    if (ppDir != 0)
        new PeriodicalExecuter(lx_scroll, 0.01);
}