if (xInclude('js/x_core.js', 'js/x_event.js', 'js/x_slide.js', 'css/projects.css')) {
    window.onload = winOnLoad;
}
var start_x = 0;
var current_z = 10;
function winOnLoad()
{
    var day_unit = 3;
    var min_box_width = 320;
    var start_date, end_date, end_x, first_date, first_x;
    for (i = 0; i < timeline.length; i++) {
        first_date = new Date(first[2],first[1],first[0]);
        first_x = (first_date.getTime()/(1000*60*60*24));
        start_date = new Date(timeline[i][1][2],timeline[i][1][1],timeline[i][1][0]);
        timeline[i][4] = Math.floor((((start_date.getTime()/(1000*60*60*24)) - first_x) * day_unit) + 20);
        end_date = new Date(timeline[i][2][2],timeline[i][2][1],timeline[i][2][0]);
        end_x = Math.floor((((end_date.getTime()/(1000*60*60*24)) - first_x) * day_unit) + 20);
        if ((end_x - timeline[i][4]) <= min_box_width) {
            timeline[i][5] = min_box_width;
        } else {
            timeline[i][5] = end_x - timeline[i][4];
        }
    }
    //position years
    for (i = 0; i < years.length; i++) {
        mid = new Date(years[i],7,1);
        mid_x = Math.floor(((mid.getTime()/(1000*60*60*24)) - first_x) * day_unit);
        xMoveTo('y'+years[i], mid_x - (xWidth('y'+years[i]) /2), 100);
        xShow('y'+years[i]);
    }
    timeline.sort(x_order);
    for (i = 0; i < timeline.length; i++) {
        xWidth(timeline[i][0], timeline[i][5]);
        xMoveTo(timeline[i][0],timeline[i][4], timeline[i][3]);
        xZIndex(timeline[i][0], current_z++);
        xShow(timeline[i][0]);
    }
    var today = new Date();
    start_x = Math.round(((((today.getTime()/(1000*60*60*24)) - first_x) * day_unit) + 20) - (xClientWidth() / 2));
	xMoveTo('key', start_x + 15, 15);
    xShow('key');
    xZIndex('key',1000);
    window.scrollTo(start_x, 0);
    xAddEventListener(document, 'click', mouseclicklistener, false);
    xAddEventListener(window, 'scroll', scrolllistener, false);
};
function x_order(a, b) { return a[4] - b[4]; };
var recurse;
function mouseclicklistener(evt)
{
	var e = new xEvent(evt);
    var layersUnderClick = new Array();
    var count = 0;
    for (var i = 0; i < timeline.length; i++) {
        if (e.pageX >= timeline[i][4] && e.pageX <= (timeline[i][4] + timeline[i][5]) && e.pageY >= timeline[i][3] && e.pageY <= (timeline[i][3] + xHeight(timeline[i][0]))) {
            layersUnderClick[count++] = timeline[i][0];
        }
    }
    if (layersUnderClick.length > 0) {
        layersUnderClick.sort(byZ);
        xZIndex(layersUnderClick[0],current_z++);
    }
}
function byZ(a, b) {
    return (xZIndex(b) - xZIndex(a));
}
function mousemovelistener(evt)
{
    var e = new xEvent(evt);
}
function scrolllistener() {
    xSlideTo('key', xScrollLeft() + 15, xScrollTop() + 15, 1500);
}

