var top_nav_state = window.location.hash;
var scroll_position = 0;
var flipDone = 1;
function init(){
    resizer();
    window.onresize = (resizer);
    document.getElementById("nav_1").onmouseover = (morph_link_1);
    document.getElementById("nav_2").onmouseover = (morph_link_2);
    document.getElementById("nav_3").onmouseover = (morph_link_3);
    document.getElementById("nav_4").onmouseover = (morph_link_4);
    document.getElementById("nav_5").onmouseover = (morph_link_5);
    document.getElementById("nav_1").onmouseout = (back_morph_link_1);
    document.getElementById("nav_2").onmouseout = (back_morph_link_2);
    document.getElementById("nav_3").onmouseout = (back_morph_link_3);
    document.getElementById("nav_4").onmouseout = (back_morph_link_4);
    document.getElementById("nav_5").onmouseout = (back_morph_link_5);
    document.getElementById("nav_1").onmousedown = (puff_link_1);
    document.getElementById("nav_2").onmousedown = (puff_link_2);
    document.getElementById("nav_3").onmousedown = (puff_link_3);
    document.getElementById("nav_4").onmousedown = (puff_link_4);
    document.getElementById("nav_5").onmousedown = (puff_link_5);
    document.getElementById("contact_link").onmousedown = (puff_link_5);
    switch (top_nav_state) {
        case '':
            init_home();
            break;
        case '#home':
            init_homeInt();
            break;
        case '#cases':
            init_cases();
            break;
        case '#services':
            init_services();
            break;
        case '#about':
            init_about();
            break;
        case '#contact':
            init_contact();
            break;
        case '#other':
            init_other();
            break;
    }
}

function resizer(){
    if ((document.body.offsetWidth) < 925) {
        document.getElementById("bg_wrapper").style.width = "925px";
    }
    else {
        document.getElementById("bg_wrapper").style.width = "100%";
    };
    }

function init_home(){
    flipDone = 0;
    setTimeout("stripes()", 1000);
    setTimeout("name()", 1400);
    setTimeout("content_box_flip()", 2500);
    document.getElementById("content_mid").style.width = "699px";
    document.getElementById("content_mid").style.height = "239px";
    document.getElementById("content_spacer1").style.width = "704px";
    document.getElementById("content_spacer2").style.width = "704px";
    setTimeout("content_fadein()", 3100);
    Effect.Appear('bg_wrapper', {
        duration: 1
    });
}

function init_homeInt(){
    document.getElementById("name_wrapper").style.left = "-10px";
    document.getElementById("content_box_wrapper").style.left = "20px";
    document.getElementById("right_col").style.color = "#6ba2b2";
    document.getElementById("left_col").style.color = "#6ba2b2";
    document.getElementById("center_col").style.width = "29%";
    document.getElementById("center_col").style.borderRightColor = "#ddd";
    document.getElementById("center_col").style.marginRight = "3%";
    document.getElementById("center_col").style.paddingRight = "3%";
    document.getElementById("center_col").style.paddingLeft = "3%"
    document.getElementById("center_col").style.textAlign = "left";
    document.getElementById("left_col").style.width = "29%";
    document.getElementById("right_col").style.width = "29%";
    content_box(740, 275, 0.01);
    Effect.Appear('bg_wrapper', {
        duration: 1
    });
    content_fadein();
}

function init_cases(){
    document.getElementById("right_col").innerHTML = "";
    document.getElementById("center_col").innerHTML = "";
    document.getElementById("left_col").innerHTML = "";
    new Ajax.Updater("right_col", "libraries\/cases_right.htm?" + Math.random());
    new Ajax.Updater("center_col", "libraries\/cases_center.htm?" + Math.random());
    new Ajax.Updater("left_col", "libraries\/cases_left0.htm?" + Math.random());
    document.getElementById("name_wrapper").style.left = "-10px";
    document.getElementById("content_box_wrapper").style.left = "20px";
    document.getElementById("right_col").style.color = "#666";
    document.getElementById("left_col").style.color = "#666";
    document.getElementById("center_col").style.width = "11%";
    document.getElementById("center_col").style.borderRightColor = "#fff";
    document.getElementById("center_col").style.marginRight = "2%";
    document.getElementById("center_col").style.paddingRight = "1%";
    document.getElementById("center_col").style.paddingLeft = "1%"
    document.getElementById("center_col").style.textAlign = "right";
    document.getElementById("left_col").style.width = "44%";
    document.getElementById("right_col").style.width = "37%";
    content_box(625, 400, 0.01);
    Effect.Appear('bg_wrapper', {
        duration: 1
    });
    content_fadein();
}

function init_services(){
    document.getElementById("right_col").innerHTML = "";
    document.getElementById("center_col").innerHTML = "";
    document.getElementById("left_col").innerHTML = "";
    new Ajax.Updater("right_col", "libraries\/services_right.htm?" + Math.random());
    new Ajax.Updater("center_col", "libraries\/services_center.htm?" + Math.random());
    new Ajax.Updater("left_col", "libraries\/services_left0.htm?" + Math.random());
    document.getElementById("name_wrapper").style.left = "-10px";
    document.getElementById("content_box_wrapper").style.left = "20px";
    document.getElementById("right_col").style.color = "#666";
    document.getElementById("left_col").style.color = "#666";
    document.getElementById("center_col").style.borderRightColor = "#fff";
    document.getElementById("center_col").style.marginRight = "2%";
    document.getElementById("center_col").style.paddingRight = "1%";
    document.getElementById("left_col").style.width = "32%";
    content_box(800, 375, 0.01);
    Effect.Appear('bg_wrapper', {
        duration: 1
    });
    content_fadein();
}

function init_about(){
    document.getElementById("right_col").innerHTML = "";
    document.getElementById("center_col").innerHTML = "";
    document.getElementById("left_col").innerHTML = "";
    new Ajax.Updater("right_col", "libraries\/about_right.htm?" + Math.random());
    new Ajax.Updater("center_col", "libraries\/about_center.htm?" + Math.random());
    document.getElementById("name_wrapper").style.left = "-10px";
    document.getElementById("content_box_wrapper").style.left = "20px";
    document.getElementById("right_col").style.color = "#666";
    document.getElementById("left_col").style.color = "#666";
    document.getElementById("center_col").style.borderRightColor = "#fff";
    document.getElementById("right_col").style.width = "29%";
    document.getElementById("center_col").style.width = "18%";
    document.getElementById("left_col").style.width = "45%";
    document.getElementById("center_col").style.marginRight = "1%";
    document.getElementById("center_col").style.paddingRight = "0";
    content_box(700, 350, 0.01);
    Effect.Appear('bg_wrapper', {
        duration: 1
    });
    content_fadein();
}

function init_contact(){
    document.getElementById("right_col").innerHTML = "";
    document.getElementById("center_col").innerHTML = "";
    document.getElementById("left_col").innerHTML = "";
    new Ajax.Updater("left_col", "libraries\/contact_left.htm?" + Math.random());
    new Ajax.Updater("center_col", "libraries\/contact_center.htm?" + Math.random());
    document.getElementById("name_wrapper").style.left = "-10px";
    document.getElementById("content_box_wrapper").style.left = "20px";
    document.getElementById("right_col").style.color = "#666";
    document.getElementById("left_col").style.color = "#666";
    document.getElementById("center_col").style.width = "41%";
    document.getElementById("center_col").style.borderRightColor = "#fff";
    document.getElementById("center_col").style.textAlign = "left";
    document.getElementById("center_col").style.marginRight = "0";
    document.getElementById("center_col").style.paddingRight = "0";
    document.getElementById("center_col").style.paddingLeft = "7%";
    document.getElementById("left_col").style.width = "42%";
    document.getElementById("left_col").style.paddingLeft = "5%";
    document.getElementById("right_col").style.width = "0";
    content_box(650, 450, 0.01);
    Effect.Appear('bg_wrapper', {
        duration: 1
    });
    content_fadein();
}

function init_other(){
    document.getElementById("name_wrapper").style.left = "-10px";
    document.getElementById("content_box_wrapper").style.left = "20px";
    document.getElementById("right_col").style.color = "#6ba2b2";
    document.getElementById("left_col").style.color = "#6ba2b2";
    document.getElementById("center_col").style.width = "29%";
    document.getElementById("center_col").style.borderRightColor = "#ddd";
    document.getElementById("center_col").style.marginRight = "3%";
    document.getElementById("center_col").style.paddingRight = "3%";
    document.getElementById("center_col").style.paddingLeft = "3%"
    document.getElementById("center_col").style.textAlign = "left";
    document.getElementById("left_col").style.width = "29%";
    document.getElementById("right_col").style.width = "29%";
    content_box(740, 275, 0.01);
    Effect.Appear('bg_wrapper', {
        duration: 1
    });
    content_fadein();
}

function stripes(){
    new Effect.Move("stripes_wrapper", {
        y: 500,
        duration: 1,
        fps: 60,
        transition: Effect.Transitions.spring
    });
}

function name(){
    new Effect.Move("name_wrapper", {
        x: 1390,
        duration: 0.5,
        fps: 60,
        queue: {
            scope: 'name'
        }
    });
    new Effect.Move("name_wrapper", {
        x: 100,
        duration: 1,
        fps: 60,
        transition: Effect.Transitions.spring,
        queue: {
            position: 'end',
            scope: 'name'
        }
    });
}

function content_box_flip(){
    new Effect.Move("content_box_wrapper", {
        x: 600,
        duration: 0.1,
        queue: {
            scope: 'content'
        }
    
    });
    new Effect.Move("content_box_wrapper", {
        x: 250,
        duration: 1,
        transition: Effect.Transitions.spring,
        queue: {
            position: 'end',
            scope: 'content'
        }
    });
    setTimeout("flipTester()", 1100);
}

function flipTester(){
    flipDone = 1;
}

function content_box(x, y, speed){
    midHeight = y - 36;
    midWidth = x - 41.6;
    spacerWidth = x - 36;
    stripesPosition = (y * 0.35);
    lateral = ((-0.429 * x) + 338);
    new Effect.Parallel([new Effect.Morph('content_mid', {
        sync: true,
        transition: Effect.Transitions.sinoidal,
        style: 'width: ' + midWidth + 'px; height: ' + midHeight + 'px;'
    }), new Effect.Morph('content_spacer1', {
        sync: true,
        transition: Effect.Transitions.sinoidal,
        style: 'width: ' + spacerWidth + 'px;'
    }), new Effect.Morph('content_spacer2', {
        sync: true,
        transition: Effect.Transitions.sinoidal,
        style: 'width: ' + spacerWidth + 'px;'
    }), new Effect.Morph('stripes_wrapper', {
        sync: true,
        transition: Effect.Transitions.sinoidal,
        style: 'top: ' + stripesPosition + 'px;'
    }), new Effect.Morph('content_box_wrapper', {
        sync: true,
        transition: Effect.Transitions.sinoidal,
        style: 'left: ' + lateral + 'px;'
    })], {
        duration: speed,
        fps: 60,
        scope: 'content'
    });
}

function content_fadein(){
    new Effect.Parallel([new Effect.Appear('center_col'), new Effect.Appear('left_col'), new Effect.Appear('right_col')], {
        duration: 0.5
    });
}

function content_fadeout(){
    new Effect.Parallel([new Effect.Fade('center_col'), new Effect.Fade('left_col'), new Effect.Fade('right_col')], {
        duration: 0.5
    });
}

function morph_link_1(){
    new Effect.Morph('nav_1', {
        style: 'color: #74B0C2;',
        duration: 0.01,
        queue: {
            scope: 'links'
        }
    });
}

function morph_link_2(){
    new Effect.Morph('nav_2', {
        style: 'color: #6ba2b2;',
        duration: 0.01,
        queue: {
            scope: 'links'
        }
    });
}

function morph_link_3(){
    new Effect.Morph('nav_3', {
        style: 'color: #6ba2b2;',
        duration: 0.01,
        queue: {
            scope: 'links'
        }
    });
}

function morph_link_4(){
    new Effect.Morph('nav_4', {
        style: 'color: #6ba2b2;',
        duration: 0.01,
        queue: {
            scope: 'links'
        }
    });
}

function morph_link_5(){
    new Effect.Morph('nav_5', {
        style: 'color: #6ba2b2;',
        duration: 0.01,
        queue: {
            scope: 'links'
        }
    });
}

function back_morph_link_1(){
    new Effect.Morph('nav_1', {
        style: 'color: #f9ac89;',
        duration: 1,
        queue: {
            scope: 'links'
        }
    });
}

function back_morph_link_2(){
    new Effect.Morph('nav_2', {
        style: 'color: #f9ac89;',
        duration: 1,
        queue: {
            scope: 'links'
        }
    });
}

function back_morph_link_3(){
    new Effect.Morph('nav_3', {
        style: 'color: #f9ac89;',
        duration: 1,
        queue: {
            scope: 'links'
        }
    });
}

function back_morph_link_4(){
    new Effect.Morph('nav_4', {
        style: 'color: #f9ac89;',
        duration: 1,
        queue: {
            scope: 'links'
        }
    });
}

function back_morph_link_5(){
    new Effect.Morph('nav_5', {
        style: 'color: #f9ac89;',
        duration: 1,
        queue: {
            scope: 'links'
        }
    });
}

function puff_link_1(){
    if (flipDone == 1) {
        setTimeout("home_content()", 450);
        content_fadeout();
    };
    }

function puff_link_2(){
    if (flipDone == 1) {
        setTimeout("cases_content()", 450);
        content_fadeout();
    };
    }

function puff_link_3(){
    if (flipDone == 1) {
        setTimeout("services_content()", 450);
        content_fadeout();
    };
    }

function puff_link_4(){
    if (flipDone == 1) {
        setTimeout("about_content()", 450);
        content_fadeout();
    };
    }

function puff_link_5(){
    if (flipDone == 1) {
        setTimeout("contact_content()", 450);
        content_fadeout();
    };
    }

function home_content(){
    document.getElementById("right_col").innerHTML = "";
    new Ajax.Updater("right_col", "libraries\/home_right.htm?" + Math.random());
    document.getElementById("center_col").innerHTML = "";
    new Ajax.Updater("center_col", "libraries\/home_center.htm?" + Math.random());
    document.getElementById("left_col").innerHTML = "";
    new Ajax.Updater("left_col", "libraries\/home_left.htm?" + Math.random());
    content_box(740, 275, 1);
    document.getElementById("right_col").style.color = "#6ba2b2";
    document.getElementById("center_col").style.borderRightColor = "#ddd";
    document.getElementById("center_col").style.textAlign = "left";
    document.getElementById("center_col").style.width = "29%";
    document.getElementById("center_col").style.marginRight = "3%";
    document.getElementById("center_col").style.paddingRight = "3%";
    document.getElementById("center_col").style.paddingLeft = "3%";
    document.getElementById("left_col").style.paddingLeft = "0";
    document.getElementById("left_col").style.width = "29%";
    document.getElementById("right_col").style.width = "29%";
    setTimeout("content_fadein()", 500);
}

function cases_content(){
    document.getElementById("right_col").innerHTML = "";
    new Ajax.Updater("right_col", "libraries\/cases_right.htm?" + Math.random());
    document.getElementById("center_col").innerHTML = "";
    new Ajax.Updater("center_col", "libraries\/cases_center.htm?" + Math.random());
    document.getElementById("left_col").innerHTML = "";
    new Ajax.Updater("left_col", "libraries\/cases_left0.htm?" + Math.random());
    document.getElementById("right_col").style.color = "#666";
    document.getElementById("center_col").style.borderRightColor = "#fff";
    document.getElementById("center_col").style.textAlign = "right";
    document.getElementById("center_col").style.width = "11%";
    document.getElementById("center_col").style.marginRight = "2%";
    document.getElementById("center_col").style.paddingRight = "1%";
    document.getElementById("center_col").style.paddingLeft = "1%";
    document.getElementById("left_col").style.paddingLeft = "0";
    document.getElementById("left_col").style.width = "44%";
    document.getElementById("right_col").style.width = "37%";
    content_box(625, 400, 1);
    setTimeout("content_fadein()", 500);
}

function services_content(){
    document.getElementById("right_col").innerHTML = "";
    new Ajax.Updater("right_col", "libraries\/services_right.htm?" + Math.random());
    document.getElementById("center_col").innerHTML = "";
    new Ajax.Updater("center_col", "libraries\/services_center.htm?" + Math.random());
    document.getElementById("left_col").innerHTML = "";
    new Ajax.Updater("left_col", "libraries\/services_left0.htm?" + Math.random());
    document.getElementById("right_col").style.color = "#666";
    document.getElementById("center_col").style.borderRightColor = "#fff";
    document.getElementById("center_col").style.textAlign = "left";
    document.getElementById("center_col").style.width = "29%";
    document.getElementById("center_col").style.marginRight = "2%";
    document.getElementById("center_col").style.paddingRight = "1%";
    document.getElementById("center_col").style.paddingLeft = "3%";
    document.getElementById("left_col").style.paddingLeft = "0";
    document.getElementById("left_col").style.width = "32%";
    document.getElementById("right_col").style.width = "29%";
    content_box(800, 375, 1);
    setTimeout("content_fadein()", 500);
}

function about_content(){
    document.getElementById("right_col").innerHTML = "";
    new Ajax.Updater("right_col", "libraries\/about_right.htm?" + Math.random());
    document.getElementById("center_col").innerHTML = "";
    new Ajax.Updater("center_col", "libraries\/about_center.htm?" + Math.random());
    document.getElementById("left_col").innerHTML = "";
    document.getElementById("right_col").style.color = "#666";
    document.getElementById("center_col").style.borderRightColor = "#fff";
    document.getElementById("center_col").style.textAlign = "left";
    document.getElementById("center_col").style.width = "18%";
    document.getElementById("center_col").style.marginRight = "1%";
    document.getElementById("center_col").style.paddingRight = "0%";
    document.getElementById("center_col").style.paddingLeft = "3%";
    document.getElementById("left_col").style.paddingLeft = "0";
    document.getElementById("left_col").style.width = "45%";
    document.getElementById("right_col").style.width = "29%";
    content_box(700, 350, 1);
    setTimeout("content_fadein()", 500);
}

function contact_content(){
    document.getElementById("left_col").innerHTML = "";
    new Ajax.Updater("left_col", "libraries\/contact_left.htm?" + Math.random());
    document.getElementById("center_col").innerHTML = "";
    new Ajax.Updater("center_col", "libraries\/contact_center.htm?" + Math.random());
    document.getElementById("right_col").innerHTML = "";
    document.getElementById("right_col").style.color = "#666";
    document.getElementById("center_col").style.borderRightColor = "#fff";
    document.getElementById("center_col").style.textAlign = "left";
    document.getElementById("center_col").style.width = "41%";
    document.getElementById("center_col").style.marginRight = "0";
    document.getElementById("center_col").style.paddingRight = "0";
    document.getElementById("center_col").style.paddingLeft = "7%";
    document.getElementById("left_col").style.paddingLeft = "3%";
    document.getElementById("left_col").style.width = "42%";
    document.getElementById("right_col").style.width = "0";
    content_box(650, 450, 1);
    setTimeout("content_fadein()", 500);
}

function popper_1(){
    document.getElementById("left_col").style.display = "none";
    document.getElementById("left_col").innerHTML = "";
    scroll_position = 0;
    filename = "libraries\/" + unescape(location.hash.substring(1, location.hash.length)) + "_left1.htm?" + Math.random();
    new Ajax.Updater("left_col", filename);
    setTimeout("left_appear()", 500);
}

function popper_2(){
    document.getElementById("left_col").style.display = "none";
    document.getElementById("left_col").innerHTML = "";
    scroll_position = 0;
    filename = "libraries\/" + unescape(location.hash.substring(1, location.hash.length)) + "_left2.htm?" + Math.random();
    new Ajax.Updater("left_col", filename);
    setTimeout("left_appear()", 500);
}

function popper_3(){
    document.getElementById("left_col").style.display = "none";
    document.getElementById("left_col").innerHTML = "";
    scroll_position = 0;
    filename = "libraries\/" + unescape(location.hash.substring(1, location.hash.length)) + "_left3.htm?" + Math.random();
    new Ajax.Updater("left_col", filename);
    setTimeout("left_appear()", 500);
}

function left_appear(){
    new Effect.Appear("left_col");
}

function start_up(){
    upIntervalId = setInterval("move_up()", 10);
}

function start_down(){
    downIntervalId = setInterval("move_down()", 10);
}

function move_up(){
    scroll_position = (scroll_position + 3);
    if (scroll_position < 0) {
        document.getElementById("scroll-box").style.top = (scroll_position + "px");
    }
    else {
        stop_up();
        scroll_position = 0;
    };
    ;
    }

function move_down(){
    scroll_position = (scroll_position - 2);
    var divh = (((document.getElementById('scroll-box').offsetHeight) * -1) + 175);
    if (scroll_position > divh) {
        document.getElementById("scroll-box").style.top = (scroll_position + "px");
    }
    else {
        stop_down();
        scroll_position = divh;
    };
    ;
    }

function stop_up(){
    clearInterval(upIntervalId);
    document.getElementById("up").src = ('img/up.png');
}

function stop_down(){
    clearInterval(downIntervalId);
    document.getElementById("down").src = ('img/down.png');
}
