var Cataloger = {
	wys : null,
	init : function(){
		//быстрый переход между площадками

		$('.info_table tr:even').addClass('even');

		$('.required').after(' <span class="req">*</span>');

		$('.errors-block').each(function(el, div){
		  	var block = '<div class="ui-state-error ui-corner-all" style="padding: 4pt 0.7em;">'+
			'<p><span class="ui-icon ui-icon-alert" style="float: left; margin-right: 0.3em;" /><strong>Ошибка:</strong> '+div.innerHTML+'</p></div>';
			$(div).replaceWith(block);
		});

		$('.info-block').each(function(el, div){
		  	var block = '<div class="ui-state-highlight ui-corner-all" style="padding: 4pt 0.7em;">'+
			'<p><span class="ui-icon ui-icon-info" style="float: left; margin-right: 0.3em;" />'+div.innerHTML+'</p></div>';
			$(div).html(block);
		});

		if ($('#check-all').length>0) {
			$('#check-all').click(function(e){
				var status = $(e.target).attr('checked');
				$(e.target).parents('table').find('input').attr('checked', status);
			});
		}
		$('input[type="text"]').addClass('text-field');
		$('input[type="password"]').addClass('text-field');
		$('select').addClass('text-field');
		$('textarea').addClass('text-field');

		if ($('#add-blocks').length>0) {
			$('#add-blocks').click(function(){
				Cataloger.addArticlesBlocks();
			});
			$('#add-count').keydown(function(e){
				if (e.which == 13){
					Cataloger.addArticlesBlocks();
					return false;
				}
			})
		}
		if ($('#multi-add-form').length>0){
			$('#multi-add-form').submit(function(f){
				Cataloger.checkMultiForm(f);
			});
		}

		if ($('#fast-feedback').length>0) {
			this.setFeedbackCallback();
		}
		if ($('#fast-napolnenie').length>0) {
		        this.setFastFillCallback();
		}
		if ($('#show-wys').html()){
			$('#show-wys').click(function(){
				if(!Cataloger.wys) {
					$('#show-wys').html('Скрыть редактор');
					Cataloger.wys = new nicEditor({fullPanel : true}).panelInstance('text',{hasPanel : true});
				} else {
					$('#show-wys').html('Показать визуальный редактор');
					Cataloger.wys.removeInstance('text');
					Cataloger.wys = null;
				}
			})
		}
		MSDropDown.init("#site-select");

	},
	changeSite : function(){
		document.location = '/user/cataloger/articles?site_id='+$('#site-select').val();
	},
	initSiteDropdown : function(){
		if (sites.length>0) {
			var dropdown = new sFac({
				coreImages	: [],
				id			: "fromTheServerSide",
				container 	: "sites-dropdown",
				selectionImagePath : "/modules/cataloger/images/",
				toggleStyle : "closed",
				sortDirection : 'descending',
				type		: 'dropdown',
				eraser		: false,
				width		: 140,
				choices 	: sites
			});
		}
	},
	confirm : function(question, url, width, height){
		if (!width){
			width = 400;
		}
		if (!height){
			height = 100;
		}
		var div = $('<div>'+question+'</div>');
		div.dialog({
			title		: '',
			width		: width,
			height		: height,
			modal		: true,
			autoResize	: true,
			resizable	: false,
			buttons		: {
				'Отмена' : function(){
					div.dialog('destroy');
				},
				'Да' : function(){
					self.location = url;
				}
			}
		});
		return false;
	},
	showPlacementWindow : function(id, width, height){
		if (!width){
			width = 400;
		}
		if (!height){
			height = 100;
		}
		jQuery.get('/?mode=front-gateway&module=cataloger&controller=api&action=get_article_placement&format=plain',
			{id: id},
			function(result){
				var win = $('<div>'+result+'</div>');
				win.dialog({
					title		: 'Размещение статьи #'+id,
					width		: width,
					height		: height,
					modal		: false,
					autoResize	: true,
					resizable	: true,
					buttons		: {
						'Закрыть' : function(){
							win.dialog('destroy');
						}
					}
				});
			}
		);
		return false;
	},
	addArticlesBlocks : function(){
		var count = $('#add-count').val();
		var current_num = $('.table-title').length;
		if (count<1) {
			count = 0;
		}
		if (count>1000) {
			count = 1000;
		}
		for (i=0; i<count; i++){
			var block = $('#sample-block').clone();
			block.removeAttr('id');
			block.find('input').val('');
			block.find('textarea').val('');
			var next = current_num+i+1;
			block.find('span.number').html('<a name="'+next+'">'+next+'</a>');
			block.hide();
			$('#blocks-container').append(block);
			block.fadeIn(300);
		}
	},
	checkMultiForm : function(f){
		var success = true;
		$('#multi-add-form').find('.field-title, .field-text').each(function(key, el){
			if ($(this).val().length == 0){
				$(this).addClass('field-error');
				if (success) {
					$(this).focus();
				}
				success = false;
				$(this).keydown(function(){
					$(this).removeClass('field-error');
				});
			}
		});
		if (!success){
			f.preventDefault();
			return false;
		} else {
			return true;
		}
	},
	showReason : function(text){
		var win = $('<div>'+text+'</div>');
		win.dialog({
			title		: 'Причина отклонения',
			width		: 400,
			height		: 200,
			modal		: false,
			autoResize	: true,
			resizable	: true,
			buttons		: {
				'Закрыть' : function(){
					win.dialog('destroy');
				}
			}
		});
		win.show();
	},
	setFeedbackCallback : function(){
		$('#fast-feedback').submit(function(e){
			var backup = $('#fast-feedback').html();
			e.preventDefault();
			var options = {
				url		: '/?mode=front-gateway&module=cataloger&controller=api&action=send_feedback&format=json',
				type	: "post",
				dataType: "json",
				success	: function (data, textStatus) {
					$('#fast-feedback').html(backup);
					if (data.success){
						$('#fast-feedback').html(data.messages);
				            }  	else {
				    	alert(data.errors[0]);
					}
				}
			}
			$('#fast-feedback').ajaxSubmit(options);
			$('#fast-feedback').html('<img class="preloader" src="/common/preloaders/orange_hor_2.gif">');
		});
	},
	setFastFillCallback : function(){
	        $('#fast-napolnenie input.text-field').css("color", "#909090").css("font-family", "Tahoma").css("font", "10px").css("padding", "2px 7px").css("margin-bottom", "4px").css("width", "146px");

	        $('#fast-napolnenie input#form-addr').focus(function(){ if ($(this).val() == "Адрес сайта") $(this).css("color", "#000000").val(""); }).blur(function(){ if ($(this).val() == "") $(this).css("color", "#909090").val("Адрес сайта"); });
	        $('#fast-napolnenie input#form-fio').focus(function(){ if ($(this).val() == "Ваше ФИО") $(this).css("color", "#000000").val(""); }).blur(function(){ if ($(this).val() == "") $(this).css("color", "#909090").val("Ваше ФИО"); });
	        $('#fast-napolnenie input#form-app').focus(function(){ if ($(this).val() == "Ваша должность") $(this).css("color", "#000000").val(""); }).blur(function(){ if ($(this).val() == "") $(this).css("color", "#909090").val("Ваша должность"); });
	        $('#fast-napolnenie input#form-email').focus(function(){ if ($(this).val() == "E-mail для ответа") $(this).css("color", "#000000").val(""); }).blur(function(){ if ($(this).val() == "") $(this).css("color", "#909090").val("E-mail для ответа"); });
	        $('#fast-napolnenie input#form-phone').focus(function(){ if ($(this).val() == "Контактный телефон") $(this).css("color", "#000000").val(""); }).blur(function(){ if ($(this).val() == "") $(this).css("color", "#909090").val("Контактный телефон"); });

		$('#fast-napolnenie').submit(function(e){
        	        $('#fast-napolnenie input#form-addr').each(function(){ if ($(this).val() == "Адрес сайта") $(this).val(""); });
	                $('#fast-napolnenie input#form-fio').each(function(){ if ($(this).val() == "Ваше ФИО") $(this).val(""); });
        	        $('#fast-napolnenie input#form-app').each(function(){ if ($(this).val() == "Ваша должность") $(this).val(""); });
	                $('#fast-napolnenie input#form-email').each(function(){ if ($(this).val() == "E-mail для ответа") $(this).val(""); });
	                $('#fast-napolnenie input#form-phone').each(function(){ if ($(this).val() == "Контактный телефон") $(this).val(""); });

			var backup = $('#fast-napolnenie').html();
			e.preventDefault();
			var options = {
				url		: '/?mode=front-gateway&module=cataloger&controller=api&action=send_feedfill&format=json',
				type	: "post",
				dataType: "json",
				success	: function (data, textStatus) {
					$('#fast-napolnenie').html(backup);
					if (data.success){
						$('#fast-napolnenie').html("<b>" + data.messages[0] + "</b>");
				    }  	else {
				    	alert(data.errors[0]);
				    	tmpSetFastFillCallback();
				        }
				}
			}
			$('#fast-napolnenie').ajaxSubmit(options);
			$('#fast-napolnenie').html('<img class="preloader" src="/common/preloaders/orange_hor_2.gif">');
		});
	},
	showFeatureFreeSites : function(id) {
		jQuery.get('/?mode=front-gateway&module=cataloger&controller=api&action=get_feature_free_sites&format=plain',
			{id: id},
			function(result){
				var win = $('<div>'+result+'</div>');
				win.dialog({
					title		: 'Свободные площадки',
					width		: 400,
					height		: 350,
					modal		: false,
					autoResize	: true,
					resizable	: true,
					buttons		: {
						'Закрыть' : function(){
							win.dialog('destroy');
						}
					}
				});
			}
		);
		return false;
	},
	getBlock : function(text, icon){
		return '<div class="ui-state-highlight ui-corner-all" style="padding: 2pt 0.7em;margin-top:2px;"> \
			<span class="ui-icon ui-icon-'+icon+'" style="float: left; margin-right: 0.3em;" />'+text+'</div>';
	}
}



$(document).ready(function(){
 	Cataloger.init();
});

	function tmpSetFastFillCallback () {
	        $('#fast-napolnenie input.text-field').css("color", "#909090").css("font-family", "Tahoma").css("font", "10px").css("padding", "2px 7px").css("margin-bottom", "4px").css("width", "146px");

	        $('#fast-napolnenie input#form-addr').focus(function(){ if ($(this).val() == "Адрес сайта") $(this).css("color", "#000000").val(""); }).blur(function(){ if ($(this).val() == "") $(this).css("color", "#909090").val("Адрес сайта"); });
	        $('#fast-napolnenie input#form-fio').focus(function(){ if ($(this).val() == "Ваше ФИО") $(this).css("color", "#000000").val(""); }).blur(function(){ if ($(this).val() == "") $(this).css("color", "#909090").val("Ваше ФИО"); });
	        $('#fast-napolnenie input#form-app').focus(function(){ if ($(this).val() == "Ваша должность") $(this).css("color", "#000000").val(""); }).blur(function(){ if ($(this).val() == "") $(this).css("color", "#909090").val("Ваша должность"); });
	        $('#fast-napolnenie input#form-email').focus(function(){ if ($(this).val() == "E-mail для ответа") $(this).css("color", "#000000").val(""); }).blur(function(){ if ($(this).val() == "") $(this).css("color", "#909090").val("E-mail для ответа"); });
	        $('#fast-napolnenie input#form-phone').focus(function(){ if ($(this).val() == "Контактный телефон") $(this).css("color", "#000000").val(""); }).blur(function(){ if ($(this).val() == "") $(this).css("color", "#909090").val("Контактный телефон"); });
	}
