var _self = this;

$(document).ready(function(){
	
	var self=this;	
	
	$(".write_mail form").submit(function(){ 
       
        self.e_mail = $("#email").val();
        self.fio    = $("#name").val();
        self.id     = $(this).find("input:hidden").val();
		
		var $inside = $(this).find('.inside');
        
		$.ajax({
			url: "/ajax/sendmail",
			type: "post",
			data: {
				e_mail: self.e_mail,
				fio: self.fio,
				id: self.id
			},
			dataType: "json",
			success: function(data) {
				if (data.success) {
					$inside.html(data.message + ' ');
				} else {
					if($('#message_error').length){
						$('#message_error').html(data.message);
					}else{
						$inside.prepend('<div id="message_error" style="color:red;">'+data.message+'</div>');
					}
				}
			}
		});
	   
	   return false;
        
    });


	$("#add_comment").submit(function(){ 
	       
        var e_mail    = $("#c_e_mail").val(),
            name      = $("#c_name").val(),
            text      = $("#c_text").val(),
            object_id = $(this).find("input:hidden").val(),
			success   = $('#success_comment'),
			fail      = $('#fail_comment'),
		    list      = $('#comments_list'),
			form      = $(this);    
        
        success.hide();
        fail.hide();
        
		$.ajax({
			url: "/news/add_comment",
			type: "post",
			data: {
				e_mail    : e_mail,
				name      : name,
				object_id : object_id,
				text      : text
			},
			dataType: "json",
			success: function(data) {
				if (data.success) {
					success.show();
					form.find('input:text, textarea').val('');
				} else {
					fail.html(data.message).show();
				}
			}
		});
	   
		
	   return false;
        
    });
	
	$("#add_question").submit(function(){ 
	       
        var name      = $("#c_name").val(),
            text      = $("#c_text").val(),
            object_id = $(this).find("input:hidden").val(),
			success   = $('#success_comment'),
			fail      = $('#fail_comment'),
			form      = $(this);    
        
        success.hide();
        fail.hide();
        
		$.ajax({
			url: "/conference/add_question",
			type: "post",
			data: {
				name      : name,
				object_id : object_id,
				question  : text 
			}, 
			dataType: "json",
			success: function(data) {
				if (data.success) {
					success.show();
					form.find('input:text, textarea').val('');
				} else {
					fail.html(data.message).show();
				}
			}
		});
	   
		
	   return false;
        
    });


	var com_btn   = $('#show_commetable'),
	    com_block = $('#most_comment'),
		pop_btn   = $('#show_popular'),
		pop_block = $('#most_popular');	
	
	com_btn.click(function(){
		com_block.show();
		com_btn.addClass('act');
		pop_btn.removeClass();
		pop_block.hide();
	})
	
	pop_btn.click(function(){
		pop_block.show();
		pop_btn.addClass('act');
		com_btn.removeClass();
		com_block.hide();
	})
	
	$('#most_popular > ul.filtr2 > li > a, #most_comment > ul.filtr2 > li > a').click(function(){
		
		var self      = $(this),
			className = $(this).attr('class') + '_block',
			parent    = $(this).parents('div.list'),	
			block     = parent.find('.'+className);
		
		self.parent().siblings().attr('class','');
		self.parent().addClass('act');
		parent.find('div').hide();
		block.show();
		
		return false;
	})
	
	
	var $blocks = $('.rubric_block');
	
	$blocks.each(function(){
		
		var $this = $(this),
			$add = $this.find('li.add'),
			$del = $this.find('li.del'),
			$num = $this.find('li.num'),
			$itemsBlock = $this.find('.news_list_block'),
			$items = $itemsBlock.find('.news_list'),
			blockId = parseInt($this.find('.block_id').val()),
			loading = false;
		
		
		$add.click(function(){
			
			if (!$add.hasClass('disabled') && !loading) {
			
				loading = true;

				$.ajax({
					url: '/ajax/auto/r_blocks/',
					type: 'POST',
					cache: true,
					data: {
						rubric: blockId,
						offset: parseInt($num.text())
					},
					dataType: 'html',
					complete: function(xhr, textStatus) {
						// null
					},
					success: function(data) {
						
						loading = false;
				
						$del.removeClass('disabled');
						
						$itemsBlock.append(data);
						$itemsBlock.find('> div:last').slideDown(300);
						var n = parseInt($itemsBlock.find('> div').length);
						$num.html(n);
						$.cookie('r_block_' + blockId, n);
						
						if (n >= 7) $add.addClass('disabled');
						
					},
					error: function(xhr, textStatus, errorThrown) {

						loading = false;

					}
				});

			}

		});
		
		
		$del.click(function(){

			$add.removeClass('disabled');
			
			if (!$del.hasClass('disabled')) {
			
				var n = parseInt($itemsBlock.find('> div').length - 1);
				
				$num.html(n);
				$.cookie('r_block_' + blockId, n);
				
				$itemsBlock.find('> div:last').slideUp(300, function() {
					$(this).remove();
				});
				
				if (n <= 1) $del.addClass('disabled');

			}

		});
		
	});
	
	
	
	var $mailBtn = $('#mail_but'),
		$blogBtn = $('#blog_but');
	
	if ($mailBtn.length && $blogBtn.length) {
	
		var self = this,
			$mailWindow = $('.write_mail'),
			$mailClose = $mailWindow.find('.close'),
			$blogWindow = $('.add_blog'),
			$blogClose = $blogWindow.find('.close');		
		
		
		this.showMail = function(){
			self.hideBlog();
			$mailBtn.addClass('act');
			$mailWindow.slideDown(300);
		}
		
		this.hideMail = function(){
			$mailBtn.removeClass('act');
			$mailWindow.slideUp(300);
		}
		
		this.showBlog = function(){
			self.hideMail();
			$blogBtn.addClass('act');
			$blogWindow.slideDown(300);
			self.initFlash();
		}
		
		this.hideBlog = function(){
			$blogBtn.removeClass('act');
			$blogWindow.slideUp(300);
		}		
		
		
		$mailBtn.click(function() {
			if ($mailBtn.hasClass('act')) {
				self.hideMail();
			} else {
				self.showMail();
			}
		});
		
		$mailClose.click(function() {
			self.hideMail();
		});

		
		$blogBtn.click(function() {
			if ($blogBtn.hasClass('act')) {
				self.hideBlog();
			}
			else {
				self.showBlog();
			}
		});
		
		$blogClose.click(function() {
			self.hideBlog();
		});
		
		var $inputs = $mailWindow.find('.general_cont input.innn');
		
		$inputs.focus(function(){
			$(this).prev().fadeOut(100);
		});
		
		$inputs.blur(function(){
			if (!$(this).val()) {
				$(this).prev().fadeIn(100);
			}
		});						
		
		$inputs.each(function(){
			if ($(this).val()) {
				$(this).prev().hide();
			}
		});	
		//--
		
		var textarea = $('#blog_code');
						
		textarea.click(function(){
			this.focus();
			this.select();
		});

		_self.sendToFlash = function(){
			var txt = encodeURIComponent(textarea.val());
			setTimeout(function() {
				if (document['clipboardswf'].setClipboardData) {
					document['clipboardswf'].setClipboardData(txt);
				}
			}, 100);
		}

		self.initFlash = function() {
			
			var unic = parseInt(new Date().getTime().toString());
			var flashvars = {};
			var params = {
				wmode: 'transparent',
				allowscriptaccess: 'sameDomain'
			};
			var attributes = {
				id: 'clipboardswf',
				name: 'clipboardswf'
			};
			swfobject.embedSWF('/static/swf/clipboard.swf?'+unic, 'clipboardbtn', '250', '22', '8', false, flashvars, params, attributes);
			
		}
		//--		
		
		
	}	
	

	var photoReport = function(){
		
		var self = this,
			$c = $('dl.foto_report'),
			rp2 = false;
		
		if($c.length){
			var $img = $c.find('img.fbig');
		} else {
			var rp2 = true,
				$c = $('dl.foto_report2'),
				$img = $c.find('.fbig img'),
				$descr = $c.find('.fbig span');
		}
		
		var $lentaCont = $c.find('.lenta_cont'),
			$lenta = $lentaCont.find('.lenta'),
			$items = $lenta.find('> *'),
			$prev = $c.find('.prev'),
			$next = $c.find('.next'),
			$cur;
		
		var setPhoto = function(){
			if (this != null) {
				$cur = $(this);
				$items.removeClass('act');
				$cur.addClass('act');
				
				var $curImg = $cur.find('img');
				
				$img.attr('src', $cur.find('input.large').val());
				
				if(rp2){
					$descr.html($cur.find('.img_alt').html());
				}
				
				var cp = $cur.prev().length,
					cn = $cur.next().length;
				
				if(!cp){
					$prev.fadeOut(300);
				} else {
					$prev.fadeIn(300);
				}
				
				if(!cn){
					$next.fadeOut(300);
				} else {
					$next.fadeIn(300);
				}

				if(cn && cp){
					$lenta.stop().animate({ left: ((-74 * $cur.prevAll().length) + 74) }, 300);
				}
			}
		}
		
		$items.click(function(){
			setPhoto.apply(this);
		});
		
		$next.click(function(){
			var $nextItem = $cur.next();
			if($nextItem.length){
				setPhoto.apply($nextItem.get(0));
			}
		});

		$prev.click(function(){
			var $prevItem = $cur.prev();
			if($prevItem.length){
				setPhoto.apply($prevItem.get(0));
			}
		});

		setPhoto.apply($lenta.find(':first').get(0));
	}
	
	photoReport();
	
	
	
})	