$.fn.maxlength = function(){
    $("textarea[@maxlength]").keypress(function(event){
        var key = event.which;
        //all keys including return.
        if(key >= 33 || key == 13) {
            var maxLength = $(this).attr("maxlength");
			
            var length = this.value.length;
            if(length >= maxLength) {
                event.preventDefault();
            }
        }
    });
}
$.fn.tinyMce = {
    startup: function() {
		// Initialize editor
		var ids = [];
        $('.editor').each(function() {
            var id = $(this).attr('id');
			tinyMCE.execCommand("mceAddControl", true, id);
        });
	}
};
$(document).ready(function(){
	var start = location.href.indexOf("#");
	var end = location.href.length;
	var anchor = location.href.substring(start+1, end);
	var openedId = null;
	var iteration = 0;


	
	if (anchor == 'find_deputat') {
		$('.overtable').show();
	}
	if (anchor == 'change_pass') {
		$('.change_pass_block').show();
	}
	if (anchor == 'change_email') {
		$('.change_email_block').show();
	}
	if (anchor == 'edit') {
		$('.edit').show();
	}
	
	
	$('.change_pass').toggle(function(){
		$('.change_pass_block').slideDown();
	}, function(){
		$('.change_pass_block').slideUp();
	});

	$('.change_email').toggle(function(){
		$('.change_email_block').slideDown();
	}, function(){
		$('.change_email_block').slideUp();
	});

	$('#flashMessage').animate({'opacity': '0', 'top': '0px'}, 1).animate({'top': '0px', 'opacity': '1'}, 1000);
	setTimeout(
		function() {
			$('#flashMessage').animate(
				{
					opacity: 0,
					top: '-200px'
				}, 1000,
				function(){
					$(this).remove();
				}
			);
		}, 5000);
	
	$('.report_bug_link').toggle(function(){
		$('.report_bug').hide();
		var url = window.location.href;
		var data = {url: url};
		var responeUrl = 'http://' + window.location.hostname + '/messages/report_bug';
		$.post(responeUrl, data, function(data){
			$('.report_bug').html(data).slideDown();
		});
		return false;
	}, function() {
		$('.report_bug').slideUp();
	});

	$('.read-next').click(function(){
		$(this).hide();
		$('.read-next-block').show('slow');
		return false;
	});
	
	$('.debuginfo a').toggle(function(){
		$('.hidden').show('fast');
		return false;
	}, function() {
		$('.hidden').hide('fast');
		return false;
	});
	
	$('form#Subscribe').submit(function(){
		$('.subscribe_block .false').hide();
		$('.subscribe_block .true').hide();
		
		$(this).attr('disabled', true);
		var data = {
			email: $('#Subscribe #Subscribe_email').attr('value'),
			region:  $('#Subscribe #Subscribe_region').attr('value')
		}
		$.post(this.action, data, function(data){
			data = eval("(" + data + ")");
			$('.subscribe_block .' + data.response).show('fast');
			$(this).attr('disabled', false);
		});
		return false;
	});


	$('.subscribe').click(function(){
		$('.subscribe_block').show();
		return false;
	});

	window.iteration = 0;
	$('.subscribe_block, #sm-main').bind('click', hiddenToggle);


	$('.show_filter').toggle(function(){
		$('.overtable').show(500);
		return false;
	}, function() {
		$('.overtable').hide(500);
		return false;
	});
	
	$('.deputat_region').change(function (){
		//$(this).attr('disabled', true).addClass('passive');
		$('.ajax').show();
		var data = {
			region: $('.deputat_region').attr('value')
		}
		$.post('/dums/load_dums', data, function(data){
			$('.deputat_dums_span').empty().html(data);
			
			$(this).attr('disabled', false).removeClass('passive');
			$('.ajax').hide();
			
			$('.deputat_dums').ready(function(){
				$('.deputat_dums').change(function(){
					$('#DeputatIndexForm').submit();
				})
			});
		});
	})
	
	$('.deputat_dums').change(function(){
		$('#DeputatIndexForm').submit();
	})
	$('.find_by_adress').toggle(function(){
		$('.find_block').show();
	}, function () {
		$('.find_block').hide();
	});

	$('.action_delete').click(function(e){
		thisElement = $(this);
		if (confirm('Вы действительно хотите удалить этот пункт?') == true) {
			thisElement.removeClass('action_delete').html('<img src="/clients_panel/images/3-1.gif" alt="Удаляю..." />');
			$.get(thisElement.attr('href'), function(data){
				thisElement.parent().parent().remove();
			});
		}
		return false;
	});
	
	$('.respone').click(function(){
		$('.comment_form').slideUp('1000').remove();
		
		var element = $(this);
		var responeStep = parseInt($(this).attr('rel')) + 10;
		var thisId = element.parent().attr('id');
		
		var data = {
			'postUrl': window.location,
			'hiddenId': hiddenId,
			'id': pageId
		};

		if (openedId != thisId) {
			$.post('/assets/get_comment_form', data, function(data) {
				element.parent().append(data).ready(function(){
					openedId = thisId;
					var responeComment = thisId.replace('comment-', '');
					$('.comment_form').css({'border': '10px solid white', 'background': 'white'});
					$('#CommentStep').attr('value', responeStep);
					$('#CommentRespone').attr('value', responeComment);
					element.click(function(){
						$('.comment_form').remove();
					});
				});
			});
		} else {
			openedId = null;
		}
		return false;
	});
	$().tinyMce.startup();
	$('.export_gallery a').fancybox();
	$('#rules').toggle(function(){
		$('.rules_block').show(100);
		return false;
	}, function(){
		$('.rules_block').hide(100);
		return false;
	});

	$('h3.add').toggle(function(){
		$('.edit').show(100);
	}, function(){
		$('.edit').hide(100);
	});

    $('.art_delete').click(function(){
        var ifTrue = confirm('Вы уверены, что хотите удалить запись?');
        var item = $(this);
        if (ifTrue) {
            $.get($(this).attr('href'), null, function(){
                item.parents('.pub_item').hide('100').remove();
            });
        }
        return false;
    })
});

function hiddenToggle () {
		var ClassName = $(this).attr('class');
		
		if (ClassName != 'hidden subscribe_block' && window.iteration == 0) {
			$('.subscribe_block').hide();
			window.iteration = 0;
		} else {
			window.iteration = 1;
		}
		if (ClassName == undefined) {
			window.iteration = 0;
		}
}