var blockLoading = false;

$(document).ready(function() {
	if($('.conference_text').length) bindAutoresize($('.conference_text'));
	
	$('.conference_search_form_options div:eq(1) a[class!=active]').live('click', function() {
		$('.conference_search_form_options div:eq(1) a').removeClass('active').attr('href', '');
		$(this).addClass('active').removeAttr('href');
		return false;
	});
	
	$('.conference_search_form div:eq(0) a').live('click', function() {
		obj = $(this);
		obj.hide();
		$('.conference_search_form img').removeClass('hidden');
		
		word = $('.conference_search_form input').val();
		
		$.post("/conference/search", { 'word': word, 'sort': $('.conference_search_form a[class=active]').attr('val') }, function(data) {
			if(data) {
				$('.conference_topics_list').remove();
				$('.conference_search_form').after(data);
				
				words = word.split(" ");
				
				$('.conference_topics_list .td_wrapper > div > p, .conference_topics_list .td_wrapper > div > a').each(function() {
					for(i=0; i<words.length; i++) {
						var re = new RegExp('(' + words[i] + ')', 'ig');
						$(this).html( $(this).text().replace(re, "<span>$1</span>") );
					}
				});
			}
			obj.show();
			$('.conference_search_form img').addClass('hidden');
		});
		
		return false;
	});
	
	$('#conf_search').live('keypress', function(e) {
		if(e.keyCode == 13) $('.conference_search_form div:eq(0) a').click();
	});
	
	$('.showallcomments a').live('click', function() {
		if(blockLoading) return false;
		blockLoading = true;
	
		obj = $(this);
		$('.showallcomments img').removeClass('hidden');
		resultsOnPage = $('.conference_topics_list .td_text').length;
		
		$.post("/conference/search", { 'word': obj.attr('word'), 'sort': obj.attr('sort'), start: resultsOnPage }, function(data) {
			obj.parents('tr:eq(0)').remove();
			$('.conference_topics_list tr:last').after(data);
			
			words = obj.attr('word').split(" ");
			
			$('.conference_topics_list:last .td_wrapper > div > p, .conference_topics_list:last .td_wrapper > div > a').each(function() {
				for(i=0; i<words.length; i++) {
					var re = new RegExp('(' + words[i] + ')', 'ig');
					$(this).html( $(this).text().replace(re, "<span>$1</span>") );
				}
			});
			
			blockLoading = false;
		});
		return false;
	});
	
	bindExpertsBlock();
	bindQuestionBlock();
});

function bindQuestionBlock() {
	if(!$('.button_question img').length) return false;
	
	var anchor = location.href.replace(/[^#]+#(\w+)$/i, "$1");
	if(anchor == 'question')
		$('.button_question img').parent().prev().prev().slideDown();
	
	$('.button_question img').live('click', function() {
		obj = $(this).parent().prev().prev();
		obj.next('.qerror').slideUp();
		
		if(obj.is(":visible")) {
			txtObj = obj.find('textarea');
			
			if(txtObj.val()) {
				
				var query = {
							expert: obj.find('input[name=expert]').val(),
							text: obj.find('textarea[name=text]').val()
							};
				
				$.post("/experts/ask", query, function(data) {
					obj.slideUp(250);
					obj.next('.qerror').slideDown(300);
				});
			}
			
			txtObj.val('');
		} else
			obj.slideDown();
	});
}

var beltExpertsWidth;

function bindExpertsBlock() {
	clickExpertsStep = 224;
	
	beltExpertsWidth = $('#experty_lenta .experty_item').length*clickExpertsStep;
	$('#experty_lenta').css('width', beltExpertsWidth + 'px');
	
	if(beltExpertsWidth > 672) $('#experty #eitem_right, #experty #eitem_left').show();
	
	$('#experty #eitem_right').live('click', function() {
		if($(this).hasClass('arrow_dis')) return false;
		moveExpertsBelt(-1, clickExpertsStep);
		return false;
	});
	$('#experty #eitem_left').live('click', function() {
		if($(this).hasClass('arrow_dis')) return false;
		moveExpertsBelt(1, clickExpertsStep);
		return false;
	});
}

function moveExpertsBelt( param, step ) {
	to = parseInt($('#experty_lenta').css('left'))+ param*step;
	
	if(to <= (beltExpertsWidth-685)*-1) { 
		$('#experty_lenta').animate({ 'left': ((beltExpertsWidth-685)*-1) + 'px' }, 500, function() {
			$('#experty #eitem_left').removeClass('arrow_dis');
			$('#experty #eitem_right').addClass('arrow_dis');
		});
		
		return false;
	}
	if(to >= 0) { 
		$('#experty_lenta').animate({ 'left': '13px' }, 500, function() {
			$('#experty #eitem_right').removeClass('arrow_dis');
			$('#experty #eitem_left').addClass('arrow_dis');
		});
		
		return false;
	}
	
	$('#experty_lenta').animate({ 'left': to + 'px'}, 500, function() {
		$('#experty #eitem_right').removeClass('arrow_dis');
		$('#experty #eitem_left').removeClass('arrow_dis');
		if(to == (beltExpertsWidth-685)*-1) $('#experty #eitem_right').addClass('arrow_dis');
		if(!to) $('#experty #eitem_left').addClass('arrow_dis');
	});
	
	return false;
}
