/**
 * @author Citta Computing
 * v. 1.11
 */


// config params

// var rot3dDir = 1;
var viimrg   = 20;
var vmaxmskip =  2;


vbmskip = false;
vbenteranim = false;

var vologo = null;

var volgetl = null;
var volgetr = null;
var volgebl = null;
var volgebr = null;
var volgctl = null;
var volgctr = null;
var volgcbl = null;
var volgcbr = null;

var voiietl = null;
var voiietr = null;
var voiiebl = null;
var voiiebr = null;
var voiictl = null;
var voiictr = null;
var voiicbl = null;
var voiicbr = null;

var vjgdbg = null;
var vjinfoItemBg = null;

var vjselInfoItem = null;
var vjselFlteItem = null;

var vselbaseX = 0;
var vselbaseY = 0;

var vbwdx = 0;
var vbwdy = 0;
var vmdx = 0;
var vmdy = 0;
var vlastmdx = 0;
var vlastmdy = 0;


$(function()
{

    $(window).resize(function() {

        var bgwpos = $('#contBg').position();
        vbwdx = bgwpos.left;

     // $('#dbgtxt').html("resized: bgLeft = " + vbwdx);
    });


    $('#contBg')
        .mousemove(function(event) {

            if (vbmskip)
                return;

            var pixmdx = (event.pageX - 500 - vbwdx);  // * -1;    // rot3dDir
            var pixmdy = (event.pageY - 500 - vbwdy);  // * -1;    // rot3dDir

         // vmdx = (event.pageX - 500 - vbwdx) / 25 * rot3dDir;
         // vmdy = (event.pageY - 500 - vbwdx) / 25 * rot3dDir;

            var bmdx = pixmdx / 25;
            var bmdy = pixmdy / 25;

            vmdx = pixmdx / 36;
            vmdy = pixmdy / 36;

            var blongskip = ((Math.abs(vmdx - vlastmdx) > vmaxmskip) ||
                             (Math.abs(vmdy - vlastmdy) > vmaxmskip));
            vlastmdx = vmdx;
            vlastmdy = vmdy;

            // dbg
         // $('#dbgtxt').html("pageX = " + event.pageX + " pageY = " + event.pageY + "dx = " + bmdx + " dy = " + bmdy);

            var nxbg = (-30 + (bmdx * -1));
            var nybg = (-30 + (bmdy * -1));

            var nxlogo = (20 + vmdx);
            var nylogo = (20 + vmdy);

            if (vbenteranim && blongskip)
            {
                vbmskip = true;
             // alert("skipping");

                vjgdbg.stop().animate({'left': nxbg, 'top': nybg}, 200, function() {});

                hideLogoRohs();
                vologo.stop().animate({'left': nxlogo, 'top': nylogo}, 200, function() {

                    showLogoRohs();

                    vbmskip = false;
                    vbenteranim = false;
                });

                if (vjselFlteItem)
                {
                    var nxsel = (vselbaseX + vmdx);
                    var nysel = (vselbaseY + vmdy);
                    hideInfoRohs();
                    vjselFlteItem.stop().animate({'left': nxsel, 'top': nysel}, 200, function() {

                        showInfoRohs();
                    });
                }
            }
            else
            {
                vbenteranim = false;

                vjgdbg.css({'left': nxbg + "px"});
                vjgdbg.css({'top':  nybg + "px"});

                vologo.css({'left': nxlogo + "px"});
                vologo.css({'top' : nylogo + "px"});
                showLogoRohs();

                if (vjselFlteItem)
                {
                    var nxsel = (vselbaseX + vmdx);
                    var nysel = (vselbaseY + vmdy);
                    vjselFlteItem.css({'left': nxsel + "px"});
                    vjselFlteItem.css({'top':  nysel + "px"});
                    showInfoRohs();
                }
            }

        })
        .mouseenter(function(event) {

            vbenteranim = true;
        });

    $('.infoHead')
        .mouseover(function() {
         // $(this).css({'color': '#a4c8f0'});
         // $(this).css({'color': '#d2dcf0'});
            $(this).css({'color': '#b4d4f0'});
        })
        .mouseout(function() {
            $(this).css({'color': '#ffffff'});
        })
        .click(function() {
            $(this).css({'color': '#ffffff'});

            var jclkitem = $(this).parent();
            var jnewselii = null;
            var jnewselfi = null;

            if (jclkitem.get(0).className == "infoItem")
            {
                jnewselii = jclkitem;
                jnewselfi = jclkitem.next('.flteItem');
            }
            else if (jclkitem.get(0).className == "flteItem")
            {
                jnewselii = jclkitem.prev('.infoItem');
                jnewselfi = jclkitem;
            }
            else
            {
                return;
            }


            if (vjselInfoItem)
            {
                var bnewitem = true;
                if (jnewselii.get(0) == vjselInfoItem.get(0))
                    bnewitem = false;

                // colapse and flatten the current selitem

                $('.iice').css({'visibility': 'hidden' });

             // vjselFlteItem.stop().animate(...
                vjselFlteItem.animate({'top':  vselbaseY, 'left': vselbaseX}, 200, function() {

                    vjselInfoItem.css({'visibility':  'visible' });
                    vjinfoItemBg.css({'visibility':  'hidden' });
                    vjselFlteItem.css({'visibility':  'hidden' });

                    vjselInfoItem.children('.infoBody').animate({'height': 0}, 400, function() {

                        if (bnewitem)
                        {
                            // new sel item
                            vjselInfoItem = jnewselii;
                            vjselFlteItem = jnewselfi;

                            // expand and raise the new item
                            showSelItem();
                        }
                        else
                        {
                            // no sel from now
                            vjselInfoItem = null;
                            vjselFlteItem = null;
                        }

                    });
                });
            }
            else
            {
                // just select the clicked info item

                vjselInfoItem = jnewselii;
                vjselFlteItem = jnewselfi;

                // expand and raise the new item
                showSelItem();

            }
        });

});



function hideLogoRohs()
{
    volgetl.css({'visibility': 'hidden' });
    volgetr.css({'visibility': 'hidden' });
    volgebl.css({'visibility': 'hidden' });
    volgebr.css({'visibility': 'hidden' });
    volgctl.css({'visibility': 'hidden' });
    volgctr.css({'visibility': 'hidden' });
    volgcbr.css({'visibility': 'hidden' });

};



function showLogoRohs()
{
    var lgsx = 130;
    var lgsy = 149;

    if (vmdx == 0 || vmdy == 0)
    {
        volgetl.css({'visibility':  'hidden' });
        volgetr.css({'visibility':  'hidden' });
        volgebl.css({'visibility':  'hidden' });
        volgebr.css({'visibility':  'hidden' });
        volgctl.css({'visibility':  'hidden' });
        volgctr.css({'visibility':  'hidden' });
        volgcbr.css({'visibility':  'hidden' });
    }
    else if (vmdx < 0 && vmdy < 0)
    {
        volgetl.css({'visibility':  'hidden' });

        volgetr.css({'left'  : (vmdx+lgsx) + "px"});
        volgetr.css({'top'   :  vmdy + "px"});
        volgetr.css({'width' : -vmdx + "px"});
        volgetr.css({'height': -vmdy + "px"});
        volgetr.css({'visibility':  'visible' });

        volgebl.css({'left'  :  vmdx + "px"});
        volgebl.css({'top'   : (vmdy+lgsy) + "px"});
        volgebl.css({'width' : -vmdx + "px"});
        volgebl.css({'height': -vmdy + "px"});
        volgebl.css({'visibility':  'visible' });

        volgebr.css({'visibility':  'hidden' });

        volgctl.css({'visibility':  'hidden' });
        volgctr.css({'visibility':  'hidden' });

        volgcbr.css({'left'  : (vmdx+lgsx) + "px"});
        volgcbr.css({'top'   : (vmdy+lgsy) + "px"});
        volgcbr.css({'width' : -vmdx + "px"});
        volgcbr.css({'height': -vmdy + "px"});
        volgcbr.css({'visibility':  'visible' });
    }
    else if (vmdx > 0 && vmdy > 0)
    {
        volgetl.css({'visibility':  'hidden' });

        volgetr.css({'left'  :   lgsx + "px"});
        volgetr.css({'top'   :      0 + "px"});
        volgetr.css({'width' :  vmdx + "px"});
        volgetr.css({'height':  vmdy + "px"});
        volgetr.css({'visibility':  'visible' });

        volgebl.css({'left'  :      0 + "px"});
        volgebl.css({'top'   :   lgsy + "px"});
        volgebl.css({'width' :  vmdx + "px"});
        volgebl.css({'height':  vmdy + "px"});
        volgebl.css({'visibility':  'visible' });

        volgebr.css({'visibility':  'hidden' });

        volgctl.css({'left'  :      0 + "px"});
        volgctl.css({'top'   :      0 + "px"});
        volgctl.css({'width' :  vmdx + "px"});
        volgctl.css({'height':  vmdy + "px"});
        volgctl.css({'visibility':  'visible' });

        volgctr.css({'visibility':  'hidden' });
        volgcbr.css({'visibility':  'hidden' });
    }
    else if (vmdx < 0 && vmdy > 0)
    {
        volgetl.css({'left'  :  vmdx + "px"});
        volgetl.css({'top'   :      0 + "px"});
        volgetl.css({'width' : -vmdx + "px"});
        volgetl.css({'height':  vmdy + "px"});
        volgetl.css({'visibility':  'visible' });

        volgetr.css({'visibility':  'hidden' });

        volgebl.css({'visibility':  'hidden' });

        volgebr.css({'left'  : (vmdx+lgsx) + "px"});
        volgebr.css({'top'   :   lgsy + "px"});
        volgebr.css({'width' : -vmdx + "px"});
        volgebr.css({'height':  vmdy + "px"});
        volgebr.css({'visibility':  'visible' });

        volgctl.css({'visibility':  'hidden' });

        volgctr.css({'left'  : (vmdx+lgsx) + "px"});
        volgctr.css({'top'   :      0 + "px"});
        volgctr.css({'width' : -vmdx + "px"});
        volgctr.css({'height':  vmdy + "px"});
        volgctr.css({'visibility':  'visible' });

        volgcbr.css({'visibility':  'hidden' });
    }
    else if (vmdx > 0 && vmdy < 0)
    {
        volgetl.css({'left'  :      0 + "px"});
        volgetl.css({'top'   :  vmdy + "px"});
        volgetl.css({'width' :  vmdx + "px"});
        volgetl.css({'height': -vmdy + "px"});
        volgetl.css({'visibility':  'visible' });

        volgetr.css({'visibility':  'hidden' });

        volgebl.css({'visibility':  'hidden' });

        volgebr.css({'left'  :   lgsx + "px"});
        volgebr.css({'top'   : (vmdy+lgsy) + "px"});
        volgebr.css({'width' :  vmdx + "px"});
        volgebr.css({'height': -vmdy + "px"});
        volgebr.css({'visibility':  'visible' });

        volgctl.css({'visibility':  'hidden' });

        volgctr.css({'left'  :      0 + "px"});
        volgctr.css({'top'   : (vmdy+lgsy) + "px"});
        volgctr.css({'width' :  vmdx + "px"});
        volgctr.css({'height': -vmdy + "px"});
        volgctr.css({'visibility':  'visible' });

        volgcbr.css({'visibility':  'hidden' });
    }

};


function hideInfoRohs()
{
    voiietl.css({'visibility':  'hidden' });
    voiietr.css({'visibility':  'hidden' });
    voiiebl.css({'visibility':  'hidden' });
    voiiebr.css({'visibility':  'hidden' });
    voiictl.css({'visibility':  'hidden' });
    voiictr.css({'visibility':  'hidden' });
    voiicbr.css({'visibility':  'hidden' });
};


function showInfoRohs()
{
    var iisx = vjselFlteItem.width();
    var iisy = vjselFlteItem.height();

    if (vmdx == 0 || vmdy == 0)
    {
        voiietl.css({'visibility':  'hidden' });
        voiietr.css({'visibility':  'hidden' });
        voiiebl.css({'visibility':  'hidden' });
        voiiebr.css({'visibility':  'hidden' });
        voiictl.css({'visibility':  'hidden' });
        voiictr.css({'visibility':  'hidden' });
        voiicbr.css({'visibility':  'hidden' });
    }
    else if (vmdx < 0 && vmdy < 0)
    {
        voiietl.css({'visibility':  'hidden' });

        voiietr.css({'left'  : (vmdx+iisx) + "px"});
        voiietr.css({'top'   :  vmdy + "px"});
        voiietr.css({'width' : -vmdx + "px"});
        voiietr.css({'height': -vmdy + "px"});
        voiietr.css({'visibility':  'visible' });

        voiiebl.css({'left'  :  vmdx + "px"});
        voiiebl.css({'top'   : (vmdy+iisy) + "px"});
        voiiebl.css({'width' : -vmdx + "px"});
        voiiebl.css({'height': -vmdy + "px"});
        voiiebl.css({'visibility':  'visible' });

        voiiebr.css({'visibility':  'hidden' });

        voiictl.css({'visibility':  'hidden' });
        voiictr.css({'visibility':  'hidden' });

        voiicbr.css({'left'  : (vmdx+iisx) + "px"});
        voiicbr.css({'top'   : (vmdy+iisy) + "px"});
        voiicbr.css({'width' : -vmdx + "px"});
        voiicbr.css({'height': -vmdy + "px"});
        voiicbr.css({'visibility':  'visible' });
    }
    else if (vmdx > 0 && vmdy > 0)
    {
        voiietl.css({'visibility':  'hidden' });

        voiietr.css({'left'  :   iisx + "px"});
        voiietr.css({'top'   :      0 + "px"});
        voiietr.css({'width' :  vmdx + "px"});
        voiietr.css({'height':  vmdy + "px"});
        voiietr.css({'visibility':  'visible' });

        voiiebl.css({'left'  :      0 + "px"});
        voiiebl.css({'top'   :   iisy + "px"});
        voiiebl.css({'width' :  vmdx + "px"});
        voiiebl.css({'height':  vmdy + "px"});
        voiiebl.css({'visibility':  'visible' });

        voiiebr.css({'visibility':  'hidden' });

        voiictl.css({'left'  :      0 + "px"});
        voiictl.css({'top'   :      0 + "px"});
        voiictl.css({'width' :  vmdx + "px"});
        voiictl.css({'height':  vmdy + "px"});
        voiictl.css({'visibility':  'visible' });

        voiictr.css({'visibility':  'hidden' });
        voiicbr.css({'visibility':  'hidden' });
    }
    else if (vmdx < 0 && vmdy > 0)
    {
        voiietl.css({'left'  :  vmdx + "px"});
        voiietl.css({'top'   :      0 + "px"});
        voiietl.css({'width' : -vmdx + "px"});
        voiietl.css({'height':  vmdy + "px"});
        voiietl.css({'visibility':  'visible' });

        voiietr.css({'visibility':  'hidden' });

        voiiebl.css({'visibility':  'hidden' });

        voiiebr.css({'left'  : (vmdx+iisx) + "px"});
        voiiebr.css({'top'   :   iisy + "px"});
        voiiebr.css({'width' : -vmdx + "px"});
        voiiebr.css({'height':  vmdy + "px"});
        voiiebr.css({'visibility':  'visible' });

        voiictl.css({'visibility':  'hidden' });

        voiictr.css({'left'  : (vmdx+iisx) + "px"});
        voiictr.css({'top'   :      0 + "px"});
        voiictr.css({'width' : -vmdx + "px"});
        voiictr.css({'height':  vmdy + "px"});
        voiictr.css({'visibility':  'visible' });

        voiicbr.css({'visibility':  'hidden' });
    }
    else if (vmdx > 0 && vmdy < 0)
    {
        voiietl.css({'left'  :      0 + "px"});
        voiietl.css({'top'   :  vmdy + "px"});
        voiietl.css({'width' :  vmdx + "px"});
        voiietl.css({'height': -vmdy + "px"});
        voiietl.css({'visibility':  'visible' });

        voiietr.css({'visibility':  'hidden' });

        voiiebl.css({'visibility':  'hidden' });

        voiiebr.css({'left'  :   iisx + "px"});
        voiiebr.css({'top'   : (vmdy+iisy) + "px"});
        voiiebr.css({'width' :  vmdx + "px"});
        voiiebr.css({'height': -vmdy + "px"});
        voiiebr.css({'visibility':  'visible' });

        voiictl.css({'visibility':  'hidden' });

        voiictr.css({'left'  :      0 + "px"});
        voiictr.css({'top'   : (vmdy+iisy) + "px"});
        voiictr.css({'width' :  vmdx + "px"});
        voiictr.css({'height': -vmdy + "px"});
        voiictr.css({'visibility':  'visible' });

        voiicbr.css({'visibility':  'hidden' });
    }

};



function showSelItem()
{

    if (!vjselInfoItem)
        return;

    // expand and raise the new item

    var newH = vjselInfoItem.children('.infoBody').children('.infoText').height();
    var iipos = vjselInfoItem.position();
    vselbaseX = iipos.left;
    vselbaseY = iipos.top;

    vjselFlteItem.css({'left': vselbaseX + "px"});
    vjselFlteItem.css({'top' : vselbaseY + "px"});

    vjselInfoItem.children('.infoBody').stop().animate({'height': newH}, 800, function() {

        vjinfoItemBg.css({'left': (vselbaseX+viimrg) + "px"});
        vjinfoItemBg.css({'top' : (vselbaseY+viimrg) + "px"});
        vjinfoItemBg.css({'width':  vjselInfoItem.width() + "px"});
        vjinfoItemBg.css({'height': vjselInfoItem.height() + "px"});

        vjselFlteItem.children('.infoBody').css({'height': newH});

        vjselFlteItem.css({'visibility':  'visible' });
        vjinfoItemBg.css({'visibility':  'visible' });


        var nxsel = (vselbaseX + vmdx);
        var nysel = (vselbaseY + vmdy);

        vjselFlteItem.animate({'top': (vselbaseY + vmdy), 'left': (vselbaseX + vmdx)}, 400, function() {

            showInfoRohs();
        });

    });

};



function init()
{

    vologo = $('#logo130');

    volgetl = $('#lgcetl');
    volgetr = $('#lgcetr');
    volgebl = $('#lgcebl');
    volgebr = $('#lgcebr');
    volgctl = $('#lgcctl');
    volgctr = $('#lgcctr');
    volgcbl = $('#lgccbl');
    volgcbr = $('#lgccbr');

    voiietl = $('#iicetl');
    voiietr = $('#iicetr');
    voiiebl = $('#iicebl');
    voiiebr = $('#iicebr');
    voiictl = $('#iicctl');
    voiictr = $('#iicctr');
    voiicbl = $('#iiccbl');
    voiicbr = $('#iiccbr');


    vjgdbg       = $('#gdbg');
    vjinfoItemBg = $('#infoItemBg');

    var bgwpos = $('#contBg').position();
    vbwdx = bgwpos.left;

    $('.flteItem').children('.infoHead').children('.infoHeadImg').attr('src','img/aricon_exp.jpg');

    $('#flteItem1').children('.infoHead').html($('#infoItem1').children('.infoHead').html());
    $('#flteItem1').children('.infoBody').html($('#infoItem1').children('.infoBody').html());
    $('#flteItem2').children('.infoHead').html($('#infoItem2').children('.infoHead').html());
    $('#flteItem2').children('.infoBody').html($('#infoItem2').children('.infoBody').html());
    $('#flteItem3').children('.infoHead').html($('#infoItem3').children('.infoHead').html());
    $('#flteItem3').children('.infoBody').html($('#infoItem3').children('.infoBody').html());
    $('#flteItem4').children('.infoHead').html($('#infoItem4').children('.infoHead').html());
    $('#flteItem4').children('.infoBody').html($('#infoItem4').children('.infoBody').html());


    $('.anilink a')
        .bind('mouseover', function()
        {
            var udspX = parseFloat($(this).css('backgroundPosition'), 10);
            var udspY = 39 - parseFloat($(this).css('font-size'), 10);
            var udspIni = udspX + "px -" + udspY + "px";
            $(this).css({backgroundPosition: udspIni});
            var udspOn = "(250px -" + udspY + "px)";
            $(this).stop().animate({backgroundPosition:udspOn}, {duration:1000});
        })
        .bind('mouseout', function()
        {
            var udspY = 39 - parseFloat($(this).css('font-size'), 10);
            var udspOff = "(0 -" + udspY + "px)";
            $(this).stop().animate({backgroundPosition:udspOff}, {duration:500});
        });

};

window.onload = init;



