$q = jQuery.noConflict();

$q(function() {

	sv = (document.referrer == window.location.protocol + '//' + window.location.host + '/') ? 1 : 0;

	$q('#main_flash').flash ({ swf: '/files/flash/main_002.swf', height: '100%', width: '100%', wmode: 'transparent', flashvars: { showvideo: sv } });
	$q('#flash_message').flash ({ swf: '/files/flash/player.swf', width: '100%', height: '100%', wmode: 'transparent', params: { base:'/files/flash/' }, flashvars: { skin: '/files/flash/zero_skin.swf', file:'/files/flash/intro.flv', image: '/files/images/video_preview.jpg', volume: 100, bufferlength: 15 }});
	$q('#flash_index').flash ({ swf: '/files/flash/player.swf', width: '100%', height: '100%', wmode: 'transparent', params: { base:'/files/flash/' }, flashvars: { skin: '/files/flash/zero_skin.swf', file:'/files/flash/otch09.flv', image: '/files/images/video_index_preview.jpg', volume: 100, bufferlength: 15 }});

	$q(".chart").each(function()
	{
		var oClass = $q(this).attr('class').split(' ');
		var aFlash = { column:"Column3D.swf", mscolumn:"MSColumn3D.swf", pie:"Pie3D.swf"} ;
		var swf = eval('aFlash.' + oClass[1]);

		if (oClass[1] != 'pie') {
			$q(this).append('<p class="switch"><a href="#" rel="chart">Диаграмма</a><a href="#" rel="graph">График</a><a href="#" rel="table_fuck">Таблица</a><a href="#" rel="save">Сохранить</a></p>');
			$q(this).append('<div class="graph"></div>');
			$q(this).append('<div class="table_fuck"></div>');
			$q(this).append('<div class="msgraph"></div>');
			$q(this).append('<div class="mstable"></div>');
		}

		$q(this).append('<div class="chart"></div>');

		if (oClass[1] == 'pie')
		{
			$q(this).append('<div class="legend_l"></div>');
			$q(this).append('<div class="legend_r"></div>');
			$q(this).append('<div class="clear"></div>');
			$q(this).find('.legend_l').flash ({ swf: '/files/flash/SSGrid.swf', width: '100%', height: '100%', flashvars: {dataURL: "/files/xml/" + oClass[2] + '_legend_left.xml'}, wmode: 'transparent' });
            if (oClass[2] != '5.5_1' && oClass[2] != '5.5_2') $q(this).find('.legend_r').flash ({ swf: '/files/flash/SSGrid.swf', width: '100%', height: '100%', flashvars: {dataURL: "/files/xml/" + oClass[2] + '_legend_right.xml'}, wmode: 'transparent' });
		}

		$q(this).find('.chart').flash ({ swf: '/files/flash/' + swf, width: '100%', height: '100%', flashvars: {dataURL: "/files/xml/" + oClass[2] + '.xml'}, wmode: 'transparent' });
		$q(this).find('.graph').flash ({ swf: '/files/flash/Line.swf', width: '100%', height: '100%', flashvars: {dataURL: "/files/xml/" + oClass[2] + '.xml'}, wmode: 'transparent' });
		$q(this).find('.table_fuck').flash ({ swf: '/files/flash/Grid.swf', width: '100%', height: '100%', flashvars: {dataURL: "/files/xml/" + oClass[2] + '.xml'}, wmode: 'transparent' });
		$q(this).find('.msgraph').flash ({ swf: '/files/flash/MSLine.swf', width: '100%', height: '100%', flashvars: {dataURL: "/files/xml/" + oClass[2] + '.xml'}, wmode: 'transparent' });
		$q(this).find('.mstable').flash ({ swf: '/files/flash/MSGrid.swf', width: '100%', height: '100%', flashvars: {dataURL: "/files/xml/" + oClass[2] + '.xml'}, wmode: 'transparent' });
	});

	$q(".chart a, .graph a, .table_fuck a, .save a").livequery('click', function(event) {

		if ($q(this).attr('rel') == 'save') return false;

		$q(this).parent().parent().removeClass ('chart');
		$q(this).parent().parent().removeClass ('graph');
		$q(this).parent().parent().removeClass ('table_fuck');
		$q(this).parent().parent().removeClass ('save');
		$q(this).parent().parent().addClass ($q(this).attr('rel'));
		return false;
    });


    $q(document).keypress(function (e) {
//	  if (e.keyCode == 39 && $q('.page_controls a.right').length) window.location.href = $q('.page_controls a.right').attr('href');
//	  if (e.keyCode == 37 && $q('.page_controls a:first').length) window.location.href = $q('.page_controls a:first').attr('href');
    });

	$q('#feedback').click(function(event) {
        event.preventDefault();
        $q('div.feedback_form').modal({containerId: 'form'});
	});

	$q('h4.black[id]').css('cursor', 'pointer');
	$q('h4.black[id]').wrapInner('<span></span>')
	$q('h4.black[id]').click(function() {
		$q("." + $q(this).attr('id')).slideToggle("slow");
	});


	if ($q(window).width() <= 1050) $q('.page_controls a img').each( function(index) { $q(this).attr('src', $q(this).attr('src').replace(".png", "_small.png")); } );
	$q(window).resize(function() {
		if ($q('.page_controls').length == 0) return false;
		if ($q(window).width() <= 1050 && $q('.page_controls a img').attr('src').indexOf('small') < 0)
		{
			$q('.page_controls a img').each( function(index) { $q(this).attr('src', $q(this).attr('src').replace(".png", "_small.png")); } );
		}
		else
		{
			if ($q(window).width() > 1050 && $q('.page_controls a img').attr('src').indexOf('_small') > 0)
			{
				$q('.page_controls a img').each( function(index) { $q(this).attr('src', $q(this).attr('src').replace("_small.png", ".png")); } );
			}
		}
	});

	$q(".zero").hover(
		function() {
			$q('.zero span').fadeIn(100);
			$q('.zero img').attr('src', '/files/images/zero_rollover.png')
		},
    	function () {
			$q('.zero span').fadeOut(100);
			$q('.zero img').attr('src', '/files/images/zero.png')
    	}
	);

	function toggle_check_all (st)
	{
		$q("a#select_all").attr('rel', st ? 'true' : 'false');
		$q("a#select_all").html(st ? 'Отметить все' : 'Очистить все');
	}
	$q(".create_report input[type='checkbox']").click(function() {
		toggle_check_all($q(".create_report input[type='checkbox']:checked").length <= Math.floor($q(".create_report input[type='checkbox']").length / 2) );
//		console.log (Math.floor($q(".create_report input[type='checkbox']").length / 2));
	});

	$q("a#select_all").click(function() {
        $q(".create_report input[type='checkbox']").attr('checked', eval($q("a#select_all").attr('rel')));
		toggle_check_all(!eval($q("a#select_all").attr('rel')));
		return false;
	});

	$q('a.back_to_map').pngFix();
	$q('div.page_controls').pngFix();
	$q('div.section_picture').pngFix();
	$q('a.splash').pngFix();
	$q('h1').pngFix();
	$q('h3').pngFix();


    function navigation() {
        var navBlock = $q('.menu');
        var firstLevel = navBlock.find('div.roof');
        var firstLevelLinks = navBlock.find('.roof li');
        var secondLevel = navBlock.find('div.floor');
        var secondLevelLinks = secondLevel.find('div.group li a');
		var thirdLevel = navBlock.find('div.basement');
        var thirdLevelLinks = thirdLevel.find('ul a');
        var tglNav = navBlock.find('.tgl');
        var hoverTimer = null;
        var corner = $q('.back_to_map');
        
        function closeNav () {
            tglNav.removeClass('close');
            thirdLevel.find('ul').slideUp();
            secondLevelLinks.parent().removeClass('active');
            secondLevel.find('div.group').slideUp();
            firstLevelLinks.removeClass('active');
            firstLevel.slideUp('normal', function() {
				snapCorner();
			});

        }

        function snapCorner () {
        	corner.css('z-index', corner.css('z-index') < 2 ? 2 : 1);
        }
        
		tglNav.click(function() {
			if (tglNav.hasClass('close')) {
                closeNav();
			} else {
				snapCorner();
    			firstLevel.slideDown();
    			tglNav.addClass('close');
			}
        });
		
        navBlock.hover(
            function(event) {
                event.preventDefault();
                event.stopPropagation();
                clearTimeout(hoverTimer);
            },
            function(event) {
                if (!tglNav.hasClass('close'))
                    return true;

                event.preventDefault();
                event.stopPropagation();

                hoverTimer = setTimeout(
                    function() {
                        closeNav();
                    }, 800
                );
            }
        );

        firstLevelLinks.hover(function(event) {
            event.preventDefault();
            event.stopPropagation();
            $q(this).toggleClass('hover');

        });

        firstLevelLinks.click(function(event) {
            var navActive = $q(this);
            if(navActive.find('a').size()) {
            	window.location = navActive.find('a').attr('href');
            	return true;
            }

            if(navActive.hasClass('active'))
                return false;

            firstLevelLinks.removeClass('active');
            thirdLevel.find('ul').slideUp('fast');
            secondLevelLinks.parent().removeClass('active');
            secondLevel.find('div.group').slideUp('fast').delay(200);

            secondLevel.find('div.'+navActive.attr('class').split(" ")[0]).slideDown();
            navActive.addClass('active');
        });

        secondLevelLinks.click(function(event) {
            var navActive = $q(this);

            if(thirdLevel.find('ul.'+navActive.parent().attr('class').split(" ")[0]).size()==0)
                return true;
            event.preventDefault();
            event.stopPropagation();

            if(navActive.parent().hasClass('active'))
                return false;

            secondLevelLinks.parent().removeClass('active');
            thirdLevel.find('ul').slideUp('fast').delay(200);

            thirdLevel.find('ul.'+navActive.parent().attr('class').split(" ")[0]).slideDown();
            navActive.parent().addClass('active');

        });


        secondLevelLinks.hover(function() {
            $q(this).parent().toggleClass('hover');
        });

        thirdLevelLinks.hover(function() {
            $q(this).parent().toggleClass('hover');
        });

    };

    navigation();

    $q('div.team_execute li').click(function(event){
        event.preventDefault();
        $q(this).find('div.details').modal();
    });

});

handlers['feedback_success']=function(text) {
	$q('#form_message').html(text);
}
handlers['feedback_error']=function(text) {
	$q('#form_message').html(text);
}
