IE='v'=='\v';


var he = 0;
var D = 0;

var loader = $('<span class="loadr"></span>');



function htmlAnimate(leftP){

	if(!leftP) he.stop();

	leftP = parseInt(he.attr('pos')) + leftP;



	he.animate({backgroundPosition: '('+leftP+'px 0px)'},3000,'linear',function(){

			he.attr('pos',leftP);
			htmlAnimate(100);	
				
			});

}

function showlogin(cmd){

	var layer = $('#overlayer');
	var box = $('#overblock');
	
	if(cmd){
	
		D.add(he).css('overflow','hidden');
		
		var e = {};	
		var c = cmd.offset();
			
			e.left = c.left - 217;//cmd.width();
			e.top  = c.top - 4;
			
			box.css(e);
		
		
		if(IE){
			box.fadeIn();
			layer.show().fadeTo(40);
		} else {
			layer.add(box).fadeIn();
		}
		
		
	} else {
		D.add(he).add(box).add(layer).removeAttr('style');
	}
}


$.fn.getLiveComments = function(){ return $(this).parent().next('.livecomments'); }

__TEXTAREA = '.comment-textarea';
__ADD = 'a.addcmt';
___COMMENTCLASS = 'cn';
___COMMENTSHOW = 'db';
___CONTENTCLASS = 'tc';

$(document).ready(function(){





	var time = 1000;
		he = $('html');
		D = $('body',he);
	
	
	//htmlAnimate(100);	
	
	$('.fo',D).bind('focus blur',function(e){

		
		
		//e.type;
		
		//$(e.target).toggleClass('')
		
		
	});

	authl = $('#auth a.login',D);
	authl.add('.showlogin',D).click(function(e){

			showlogin($(this));
			return false;
		
		});
	
	$(__ADD,D).live('click',function(){
		
		$(this).slideToggle(time/2).next('form.aq').fadeIn(time).find(__TEXTAREA).focus();
		return false;
	
	});
		
	$('#overlayer',D).add('#overblock a.login',D).click(function(){
	
			showlogin();
			return false;
	});
	
	
	//Ctrl + Enter = Form.Submit();
	//$(__TEXTAREA+', #qtitle',D).live('keydown',function(e){ if(e.ctrlKey && (e.keyCode == 0xA || e.keyCode == 0xD)){ $(this).parent('form').submit(); return false; } });
		
	
	
	
	_Faq = $('#faq',D);
	
	
	if(_Faq.size() > 0){
		
		
			
			//Add question ==============================================
			$("form.setquest",_Faq).live('submit',function(){
				
				//Add process animation....
				var t = $(this);
				var res1 = $('#qtitle',t);
				var res2 = $('#qtext',t);
				
				var ldr = loader.clone();
				var submit = t.find(':submit').attr('disabled','disabled').after(ldr);
				var action_command = t.attr('rel');
				var post_array = {title: res1.val(), content: res2.val(), action: action_command};

				
				//alert(post_array);
				
				$.post(window.location.href,	post_array,function(data){
							
							 res1.add(res2).val('');
							 
							 submit.removeAttr('disabled');
							 ldr.remove();		
							 
							 if(action_command == 'setquest') {
									t.find('.res').hide().html(data).slideToggle(time/2);
							 } else {
									$(data).prependTo('ol.cat').hide().slideToggle(time/2,function(){
									$(this).find('.expand').click();
									});
							 }
				});
					   
				return false;
				
			});

			
			//tags
			
				
			var active_tag = 'active-tag';
			var tag_list = $('div.tags > a');
			var header = $('h1:first',D);
						
			tag_list.click(function(e){

			
			
				var t = $(this);
				if(t.hasClass(active_tag)) return false;
				
				
				header.find('span').remove();
				tag_list.filter('.'+active_tag).removeClass(active_tag);
				
				var tagID = t.attr('class').split('tag-link-')[1];
					t.addClass(active_tag);
				
				var ldr = loader.clone().addClass('whiteloadr');
					header.append(ldr);
				
				var post_array = {tags: tagID, action: 'tag'}
					
					$.post(window.location.href,	post_array,function(d){
							$('ol.cat').empty().html(d);
							ldr.remove();
						});
					
				return false;			
			
			
			});
	
	}

   var ac = 'active';
   var hash_attr = 'rel'
  
	
	
	
var expand = $('a.expand',D);
var showcomments = $('li.sh > a',D);
	
	
	showcomments.live('click', function(){
		
		var t = $(this).parent().parent();
		
		t.find('li').slideToggle(time,function(){
			
			t.addClass(___COMMENTSHOW);
		
		});
		return false;
		
	});
	
   expand.live('click',function(){
   
	if($(this).hasClass(ac)) return;
   
	var cur = $('a.'+ac);
		cur.removeClass(ac).getLiveComments().slideToggle(time);
	
	if(cur.attr(hash_attr)) {
			cur.attr('name',cur.attr(hash_attr)).removeAttr(hash_attr);
	}
	//document.getElementById('com'+$(this).attr('name')).display='inline';
	$(this).toggleClass(ac).getLiveComments().slideToggle(time);
   
   
   var hash_link = $(this).attr('name');
   
   $(this).removeAttr('name').attr(hash_attr,hash_link);
   
   
	window.location.hash = hash_link;
		return false;
   
	});
	
	
	
	if(window.location.hash){
		
			var h = $('[name="'+window.location.hash.split('#')[1]+'"]',_Faq).click();
			
			if(expand.index(h) > 0){
				$('body').scrollTo(h.offset().top,800);
			}
	}
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	//Add commentary ==============================================
			
			
			
			$("form.setcomment").live('submit',function(){
				
				//Add process animation
				var t = $(this);
				var ldr = loader.clone();
				var submit = t.find(':submit').attr('disabled','disabled').after(ldr);
				var post_array = {};
				
				t.find('input, textarea').each(function(){
					var el = $(this);
					post_array[el.attr('name')] = el.val(); 
				
				});
			
				post_array.action = 'setcomment';

				
				
				$.ajax({type: "POST", url: t.attr('action'), dataType: "html", data: post_array,
					
					success:function(res){
						var tpar = t.parent(); //div#respond
						var cn = tpar.parent().find('.'+___COMMENTCLASS); //ul[Comments]
						var q = $(res).hide(); //li[comment]
						
						if(cn.size() == 0) { 
							cn = $('<ul class="'+___COMMENTCLASS+' '+___COMMENTSHOW+'"></ul>').prependTo(tpar.parent().find('.'+___CONTENTCLASS)); 
						}
														
							cn.append(q);
							
							$(__ADD,tpar).add(t).slideToggle(time/2,function(){
							
								$(__TEXTAREA,t).val('');
								$(this).removeAttr('style');
								q.css('background','#ffff00');
								
								if(IE){
									q.removeAttr('style');
								} else {
									q.animate({backgroundColor: "#ffffff"}, time*2, function(){ $(this).removeAttr('style');	});
								}
							
						});
					},
					
					error: function (request,error){
						alert('ОШИБКА! '+$(request.responseText).filter('p').text());
					},
					
					complete: function(){
						submit.removeAttr('disabled');
						ldr.remove();					
					}
				});
				
				return false;
		}); 
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
			  
   
}); 
