$(document).ready(function() {
	$('.date').datepicker();
	
	var select_1;
	var select_2;
	var type;
	$('.switcher').click(function() {
		if (this.id == 'tgidx_right') {
			type = 'tgidx';
			select_1 = document.getElementById('tgidx_all');
			select_2 = document.getElementById('tgidx_selected');
		}
		else if (this.id == 'tgidx_left') {
			type = 'tgidx';
			select_1 = document.getElementById('tgidx_selected');
			select_2 = document.getElementById('tgidx_all');				
		}
		else if (this.id == 'stidx_right') {
			type = 'stidx';
			select_1 = document.getElementById('stidx_all');
			select_2 = document.getElementById('stidx_selected');
		}
		else if (this.id == 'stidx_left') {
			type = 'stidx';
			select_1 = document.getElementById('stidx_selected');
			select_2 = document.getElementById('stidx_all');				
		}
		else if (this.id == 'artidx_right') {
			type = 'artidx';
			select_1 = document.getElementById('artidx_all');
			select_2 = document.getElementById('artidx_selected');
		}
		else if (this.id == 'artidx_left') {
			type = 'artidx';
			select_1 = document.getElementById('artidx_selected');
			select_2 = document.getElementById('artidx_all');				
		}
		
		if (type && select_1 && select_2)
			move_multiple_options(type, select_1, select_2);
	});

	function move_multiple_options(type, select_1, select_2) {
		var i;
		var output_div = $('#'+type+'_hiddens_cont');
		for (i=0; i<select_1.options.length; i++) {
			if (select_1.options[i].selected) {
				select_2.options[select_2.options.length] = new Option(select_1.options[i].text, select_1.options[i].value);	
				
				if (select_2.id == type+'_selected') {
					$(output_div).append('<input type="hidden" name="'+type+'[]" id="'+type+'_'+select_1.options[i].value+'" value="'+select_1.options[i].value+'" />');
				}
				else {
					$('#'+type+'_'+select_1.options[i].value).remove();
				}
				select_1.options[i] = null;	
				i--;
			}
		}			
	}
	
	var category_select;
	
	if (category_select = document.getElementById('category_select_switch')) {
		var expr = new RegExp('articleedit');
		if (!location.href.match(expr)) {
			read_category_info(category_select.value);
		}
	}
	
	$('#category_select_switch').change(function() {
		read_category_info(this.value);
	});
	
	function read_category_info(catidx) {
		var expr = new RegExp('[*]name[*]');
		var title;
		$.ajax({
			type: 'POST',
			url: url+'admin/categoryinfo',
			data: "catidx="+catidx,
			success: function(msg){
				if (msg.length) {
					var json = $.parseJSON(msg);
					
					if (json.default_title != null) {
						title = json.default_title;
						if (!title.match(expr)) title+=', *name*';
					}
					else if (!title.match(expr))
						title = '*name*';
					$('#category_default_title').val(title);
					$('#category_default_keywords').val(json.default_keywords);
					$('#category_default_description').val(json.default_description);
				}
			}
		});		
	}
	
	$('.delete_trigger').click(function() {
		var index = this.className.substring(this.className.lastIndexOf(' ')+1);
		createDialogOpen(index, this.id);
	});
	
	var actions = {
		removeArt: url + 'site/articleremove'
	}
	
	var infos = {
		removeArt: 'Czy na pewno chcesz usunąć ten artykuł?'
	}

	function createDialogOpen(index, value) {
		jQuery("<div/>", {
			id: index+'Dialog',
			html: infos[index]
		}).appendTo('body');

		$('#'+index+'Dialog').dialog({
			autoOpen: false,
			modal: true,
			width: 300,
			title: 'Potwierdzenie',
			closeOnEscape: true,
			beforeclose: function(event, ui) { 
				$(this).remove();
			},
			buttons: { 
					"Tak": function() { 
						location.href = actions[index]+'/'+value;
					}, 
					'Nie': function() { 
						$(this).dialog("close");
						$(this).remove();
					}
			}	
		});
		
		$('#'+index+'Dialog').dialog('open');
	}	
	
	$('#dialog_info').dialog({
		autoOpen: true,
		width: 300,
		closeOnEscape: true,
		stack: true,
		title: 'Informacja',
		buttons: {
			"Ok": function() { 
				$(this).dialog("close"); 
			}
		}
	});		
	
});
