$(document).ready(function(){
	var old_margin = parseInt($('.main-navigation').css('marginBottom'));
	var first_level_nav = $('.navigation_list').not('.sub').children('.navigation_item').children('.pseudo-link');
	var faq = {};
		faq.container = $('table.faq');
	    faq.questions = faq.container.find('td.question_list');
	    //faq.question = $(faq.questions).find('span.pseudo-link');
	    faq.answers = faq.container.find('td.question_answers');
//	var first_time = 1;
    
    attachEvents( first_level_nav );
	function attachEvents( where ){
	where.click(function(evt){
	 	faq.questions.find('.selected').removeClass('selected');
		    var nav_container = $(this).parent();
		    var fade_only_answers = 0;
//			if( evt.button != 0 ){ fade_only_answers = 1 }
//			if( first_time == 1 ){ fade_only_answers = 0 }
//          first_time = 0;
			if(!nav_container.hasClass('selected')){
				if(nav_container.find('.sub').length > 0){
					if($('.selectedSub').length > 0){
      					$('.selectedSub').children().removeClass('.selected');
						deAttachEvents( $('.selectedSub').children('.navigation_item').children('.pseudo-link') );
						$('.selectedSub').removeClass('selectedSub').animate({top:'45%'}, 100, function(){
							$(this).hide();
							nav_container.children('.sub').show().animate({top:'105%'}, 100, function(){
								// there are subgroups --> show first one and hide others
       							var leave_just_this_sub = nav_container.children('.sub .navigation_item:first-child a.pseudo-link').click().attr('id');
								$('.question_list ul').not('.'+leave_just_this_sub).hide();
							}).addClass('selectedSub');
							attachEvents($('.selectedSub').children('.navigation_item').children('.pseudo-link'));
							$('.main-navigation').animate({marginBottom: (old_margin + $('.selectedSub').outerHeight() + 10) +'px'}, 100);
					    	$(window).unbind('resize').bind('resize', function(){
								$('.main-navigation').css({marginBottom: (old_margin + $('.selectedSub').outerHeight() + 10) +'px' });
							});
						})
					}else{
						nav_container.children('.sub').show().animate({top:'105%'}, 100, function(){
							// there are subgroups --> show first one and hide others
       						var leave_just_this_sub = nav_container.children('.sub .navigation_item:first a.pseudo-link').click().attr('id');
       						$('.question_list ul').not('.'+leave_just_this_sub).hide();
						}).addClass('selectedSub');
						attachEvents($('.selectedSub').children('.navigation_item').children('.pseudo-link'));
						var temp_outer = ($.browser.msie && $.browser.version < 8) ? 33 : $('.selectedSub').outerHeight();   /* ie7 fix */
						$('.main-navigation').animate({marginBottom: (old_margin + temp_outer + 10) +'px'}, 100);

					    $(window).unbind('resize').bind('resize', function(){
							$('.main-navigation').css({marginBottom: (old_margin + $('.selectedSub').outerHeight() + 10) +'px' });
						});
					}
				}else{
				    workWithFAQData($(this).attr('id'), fade_only_answers);
					if($('.selectedSub').length > 0  && !$(this).parent().parent().hasClass('sub')){
						$('.selectedSub').children('.selected').removeClass('selected');
						deAttachEvents( $('.selectedSub').children('.navigation_item').children('.pseudo-link') );
						$('.selectedSub').removeClass('selectedSub').animate({ top: '45%' }, 100, function(){
							$(this).hide();
						});
						$('.main-navigation').animate({marginBottom: old_margin +'px'}, 100);
						$(window).unbind('resize');
					}
				}
				nav_container.siblings().removeClass('selected');
				nav_container.addClass('selected');
			}
			/*
			else{

				if(nav_container.find('.sub').length > 0 && $('.sub .selected').length > 0){
				    workWithFAQData($(this).attr('id'), fade_only_answers);
                    $('.sub .selected').removeClass('selected');
				}else{
					if(  nav_container.parent().hasClass('sub') ){
						$(this).removeClass('selected');
						nav_container.parent().siblings('.pseudo-link').click();
						workWithFAQData(nav_container.parent().siblings('.pseudo-link').attr('id'), fade_only_answers);
					}else{
                        workWithFAQData($(this).attr('id'), fade_only_answers);
					}
				}
			} */
		});
	};

    function deAttachEvents( where ){
        where.unbind('click');
    };
    


    
/*
    faq.question.click(function(evt){
        if( !$(this).hasClass('selected') ){
            faq.question.removeClass('selected');
			$(this).addClass('selected');
			var quest = $(this).attr('id');
			var answr = quest.replace('question_', 'faq');

		//	faq.answers.children('div').hide();
		//	faq.answers.find('div#'+answr).show();
            faq.answers.fadeOut(100 ,function(){
		        faq.answers.children('div').hide();
		        faq.answers.find('div#'+answr).show();
		        faq.answers.fadeIn(100);
		        var minTop = $('.main-navigation')[0].offsetTop;

		        if( $('html').scrollTop() > minTop || $('body').scrollTop() > minTop ){
					$('html,body').animate({scrollTop: minTop},100);
				}
			});
		}else{
        	faq.question.removeClass('selected');
			if( $('.selectedSub').length > 0 && $('.selectedSub .selected').length > 0 ){
   				workWithFAQData($('.selectedSub .selected .pseudo-link').attr('id'), 1);
			}else{
				if( $('.navigation_list .selected').length > 0 ){
				    $('.navigation_list .selected .pseudo-link:first').click();
				}
			}
		}
		evt.stopPropagation();
	})
*/
    
    


    function workWithFAQData(id, fade_only_answers){
      //  	faq.answers.children('div').add(faq.questions.children('ul')).hide();
       // 	faq.questions.find('ul.'+id).add(faq.answers.find('div.'+id)).show();

		if( fade_only_answers ){
	    	faq.answers.fadeOut(100,function(){
	    	    faq.answers.children('div').hide();
             	faq.answers.find('div.'+id).show();
	            faq.answers.fadeIn(100);
			});
		}else{
	    	faq.answers.add(faq.questions).fadeOut(100,function(){
	    	    faq.answers.children('div').add(faq.questions.children('ul')).hide();
	            faq.questions.find('ul.'+id).add(faq.answers.find('div.'+id)).show();
	            faq.answers.add(faq.questions).fadeIn(100);
			});
		}
	}
    
	(function(){   // shows element linked through anchor: /#faq113
	    var selectedItem = window.location.hash;
		if( selectedItem != '' ){
			if( selectedItem.indexOf('-group') > 0 ){
				//this is group
				var selectedGroup = selectedItem.replace('faq-group', 'group_').replace('#', '');
			}
			if( selectedItem.indexOf('-subgroup') > 0 ){
			     //this is sub group
				var selectedSubGroup = selectedItem.replace('faq-subgroup', 'sub_group_').replace('#', '');
				var selectedGroup = $('#'+selectedSubGroup).parent().parent().siblings('a').attr('id');
			}

			if( selectedItem.indexOf('-') < 0 ){
			    //this is answer
				var classes = $(selectedItem).attr('class');
				if( classes.indexOf(' ') > 0 ){
	                classes = classes.split(' ');
					for(var i=0; i < classes.length; i++){
						if( classes[i].indexOf('sub') < 0 ){
							var selectedGroup = classes[i];
						}else{
							var selectedSubGroup = classes[i];
						}
					}
				}else{
				    if( classes.indexOf('sub') < 0 ){
						var selectedGroup = classes;
					}
				}
			}
			
			if( selectedGroup != null ){
				$('.main-navigation #'+selectedGroup).click();
				if( selectedSubGroup != null ){
    				setTimeout(function() {
						$('.main-navigation #'+selectedSubGroup).click();
					}, 400);
				}
				if( classes != null ){
					setTimeout(function() {
						window.location.href = window.location.href;
					},900)
				}
			}
		}else{
			$(first_level_nav[0]).click();
		}
	})();

})


