<!--
$(document).ready( function() {
	$("#main").usabillityInput();
	
	$("#post-comments")
		.find("a.comment-reply-link").reply().end()
		.find("#cancel_replay").cancelReply().end()
		.find("#commentform").commentajax();
});

(function($){
	$.fn.usabillityInput = function() {
		var s = function (self) {
			var p = self.parent();
			return p.find('label').add(p).filter("label[for='" + self.attr('id') + "']");
		}
		var check = function() {
			s($(this)).css("textIndent", (($(this).val($.trim($(this).val())).val() == '') ? "0px" : "-9999px"));
		}
		
		this.filter("input[type='text'], textarea").add(this.find("input[type='text'], textarea")).bind('focus', function() {
			s($(this)).css("textIndent", "-9999px");
		}).bind('blur',check).each(check);
		
		return this;
	}
})(jQuery);

(function($) {
	$.fn.reply = function() {
		return this.bind('click', function() {
			var parent = $(this).parents("li:eq(0)");
			
			if (!parent.data("parentId")) {
				parent.data("parentId", parseInt(parent.attr("id").substr(parent.attr("id").lastIndexOf("-") + 1)));
			}
			
			parent.after(
				$("#respond")
					.find("#comment_parent").val(parent.data("parentId"))
				.end()
					.find("#cancel_replay").parent().css('display', 'block').end()
				.end()
			);
			return false;
		});
	}
	
	$.fn.cancelReply = function() {
		return this.click(function(){
			$(this).parent().css('display', 'none');
			
			$("#post-comments").append(
				$("#respond")
					.find("#comment_parent").val(0)
				.end()
					.find(".b-comment_title").text('Добавить комментарий')
				.end()	
			);
			return false;
		});
	}
})(jQuery);

(function($){
	$.fn.commentajax = function() {
		this.find('form').add(this.filter('form')).bind('submit', function() {
			var respond = $("#respond");
			var submit = $(":submit", $(this)).attr("disabled", true);
			var preloader = $('<div class="b-add_comment-preloader">' +
				'<i class="b-add_comment-preloader-bg"></i><i class="b-add_comment-preloader-img"></i>'+
				'</div>').hide(0);
			
			$("#list-wr", respond).append(preloader.fadeIn(200));
			var send_data = $(":input", $(this)).serializeArray();
			var depth = $(this).parents("ul.children").length + 1;
			send_data.push({name:'egrik_ajaxcomments', value: 1});
			send_data.push({name:'egrik_ajaxcomments_depth', value: depth});
			
			$("<p></p>").load($(this).attr("action"), send_data, function(data, textStatus) {
				
				submit.attr("disabled", false);
				preloader.remove();
				
				if (textStatus == "error") {
					var err = /<p.*?>(.*?)<\/p>/gi.exec(data.replace(/[\n\r]/gi,""));
					err = $.trim(err[1]);
					alert ((err) ? err : 'Приносим свои извинения, произошла серверная ошибка. Попробуйте позже.');
				} else if (textStatus == "success") {
					respond.find("textarea").val('').triggerHandler('blur');
					
					var children;
					if (depth == 1) {
						var tl = respond.prev();
						if (tl.hasClass("b-post-comments-list")) {
							children = tl.find('ul.children:eq(0)');
						}
						else {
							children = $('<ul class="children"></ul>');
							respond
								.before($('<p class="h3 b-comment_title">Комментарии</p>'))
								.before($("<div class='b-post-comments-list'></div>").append(children));
						}
					}
					else {
						children = respond.next();
						if (!children.hasClass('children')) {
							children = $('<ul class="children"></ul>');
							respond.after(children);
						}
					}
					
					$("#cancel_replay", respond).triggerHandler('click');
					
					data = $(data).hide(0);
					children.append(data);
					data.slideDown(200, function(){
					});
				
				} else {
					alert ('Приносим свои извинения, произошла серверная ошибка. Попробуйте позже.');
				}
				
				$(this).remove();
			 });
			
			return false;
		});
		
		return this;
	}
})(jQuery);

(function($) {
	$.log = function(message) {
	  if(window.console) {
	     console.debug(message);
	  } else {
	     alert(message);
	  }
	};
})(jQuery);

//-->