var need_close = 1;
var loading_window_width = 375;


function btn_service(obj) {
	var top = $(obj).position().top;
	var text = $(obj).attr('id');
	var text_split = text.split('_');
	var left = ($(document).width() - loading_window_width)/2;
		 loading_window(left, top);
		param = {};
		param.service = text_split[1];
		ajax_request(param);
}

function btn_activate(obj, center) {
	var top = $(obj).position().top - $(document).scrollTop();
	if (center)
		top = $(window).height()/2 + $(document).scrollTop();
	var text = $(obj).attr('id');
	var object =  $(obj);
	var text_split = text.split('_');
	var left = ($(document).width() - loading_window_width)/2;
	loading_window(left,top);
	service_activate (text_split[1], 0, 0, object);
}
function loading_window(left,top, blank) {
	if (blank == undefined) blank = 'dservice';
	if (left != undefined && top != undefined) {
		position = [left,top];
	}
	else {
		position = 'top';
	}
	dialog('Идет загрузка...',"<center><img src='./images/loadingAnimation.gif'></center>",375, blank, position);
	$('#'+blank).dialog('showall');
}

function dialog(title, message, width, blank, position) {
	need_close = Math.random();
	if (position == undefined) {
		position = 'top';
	}
	if (blank != undefined) {
		win_id = '#' + blank;
		if (!$('#' + blank).length) {
			$('body').prepend('<div id="'+blank+'" class="s_panel"></div>');
		}
	}
	else {
		win_id = "#dservice";
	}
	if (width == undefined) width = 375;
	$(win_id).html(message);
	$(win_id).dialog({
		modal: true,
		position: position,
		title: title,
		width: width,
		minHeight: 100,
		resizable: false,
		height: 'auto',
		buttons: {
			'Закрыть': function() {
				$(this).dialog( "close" );
			}
		}
	});
	return win_id;
}
function close_window_timer(interval, win_obj) {
	var old_need = need_close;
	if(win_obj == undefined) win_obj = 'dservice';
	if (interval == undefined) interval = 0;
	setTimeout(function (){
		if (need_close == old_need)
			$('#' + win_obj).dialog( "close" );
	}, interval);
}
function close_window (service, hide)	{
	if (hide == undefined) hide = 0;
	if(service != 'urlaub' && service != 799 && service != 0 && hide != 0)
		$("#s_hint_" + service).animate({opacity: "hide"}, "fast");
}

function service_activate (service, hide, add, object) {
	if (hide == undefined) hide = 1;
	if (add == undefined) add = 0;
	var focus;
	var param = {};
	param.service = service;
	param.activate = 1;
	var send_request = true;
	if (service > 600 && service < 700) {
		if (add) param.use_credit = 1;
		param.lvl = $('select[name=lvl['+service+']]').attr("value");
		param.time = $('select[name=tm['+service+']]').attr("value");
	}
	else {
		switch (service) {
			case '710':
					if (add) param.rjava = 1; 
			case '798':
				param.moon_chance = $('select[name=n]').attr("value");
			break;
			case 'planet':
				param.galaxy = $('#gal').attr("value");
				param.system = $('#sys').attr("value");
				param.planet = $('#plan').attr("value");
			break;
			case 'rename':
				param.nick = $("#s_newnick").attr("value");
			break;
			case 'talers':
				var temp;
				if (!add)
					temp = $('#talers').attr("value");
				else {
					temp = $('#ftalers').attr("value");
				}
				param.talers = 0;
				if ((/[0-9]$/i).test(temp)){
					param.talers = temp;
				}
			case 'main':
				param.planet_id = $('input[name=id]:checked').attr("value");
			break;
			case 'fleetback':
				param.fleet_id = object.prev('#fleetid').attr("value");
				break;
			case 'message':
				param.id		= $('#mess_id').attr("value");
				if (object != undefined) {
					if (object.attr('m_id') != undefined) {
						param.m_id = object.attr('m_id');
					}
				}
				if (param.id == undefined) {
					param.activate = 0;
					var text_split = object.attr('id').split('_');
					param.id = text_split[2];
				}
				else
				{
					param.text		= $('#mess_text').val();
					if (add) param.capcha = $('#capcha_code').attr("value");

				}
				break;
			case 'allymessage':
				param.text	= $('#mess_text').val();
				if (param.text == undefined) {
					param.activate = 0;
				}
				else {
					param.select = $('#r').val();
				}
				break;
			case 'friend':
				param.id		= $('#mess_id').attr("value");
				if (param.id == undefined) {
					param.activate = 0;
					var text_split = object.attr('id').split('_');
					param.id = text_split[2];

				}
				else
				{
					param.text		= $('#mess_text').val();
					if (add) param.capcha = $('#capcha_code').attr("value");
				}
				break;
			case 'Yfriend':
				param.type = 1;
			case 'Nfriend':
				param.mess_id = object.parent().find('#mess_list_id').attr('value');
				if (param.type == undefined)
					param.type = 0;
				var text_split = object.attr('id').split('_');
				param.id = text_split[2];
				param.service = 'f_confirm';
				break;
			case 'msubmit':
				if (add) {
					$('#messages_form').submit();
					send_request = false;
				}
				else {
					if ($('#deletemessages2').val() == 'markedaddarhiv') {
						var mid = {};
						$(document).find("input[name^='delmes']:checked").each(function() {
							mid[$(this).attr('name')] = $(this).attr('name');
						});
						param.mid = mid;
					}
					else {
						$('#messages_form').submit();
						send_request = false;
					}
				}
				break;
			case 'fshortcut':
				var ts = object.attr('param').split('#');
				param.galaxy	= ts[0];
				param.system	= ts[1];
				param.planet	= ts[2];
				param.name		= ts[3];
				break;

			case 'marchand':
				if (add) param.use_credit = 1;
				param.ress = $('#ress').attr('value');
				switch(param.ress) {
					case 'metal':
						param.cristal	= $('#cristal').attr('value');
						param.deut		= $('#deut').attr('value');
						break;
					case 'cristal':
						param.metal		= $('#metal').attr('value');
						param.deut		= $('#deut').attr('value');

						break;
					case 'deuterium':
						param.metal		= $('#metal').attr('value');
						param.cristal	= $('#cristal').attr('value');
						break;
				}
				break;
			case 'presentshop':
				param.pid			= object.pid;
				param.present_id	= object.present_id;
				param.user_id		= object.user_id;
				param.comment		= object.comment;
				break;
			case 'random':
				param.id = [];
				for (i=0;i<=9;i++){
					if ($('#id_planet'+i).attr("value")!=undefined && $('#id_planet'+i).attr("checked")==true) param.id[i] = $('#id_planet'+i).attr("value");
				}
			break;
		}
	}
	if (send_request) {
		ajax_request (param, object);
		if(service != 'urlabs' && service != 799 && hide != 0)
			$(document).find("#s_hint_" + service).animate({opacity: "hide"}, "fast");
	}
}

function ajax_request (param, object) {
	$.ajax({
		url: 'showservice.ajax.php',
		dataType: 'json',
		data: param,
		type: 'POST',
		success: function(json) {
			if (json != null) {
				if (json.java)	eval(json.java);
				if (json.width) {
					width = json.width
				}
				else {
					width = 375;
				}
				if(json.close_all != undefined) {
					$('div.dialog').dialog('close');
				}
				if(json.del_object & param.service == 'fshortcut') {
					object.remove();
				}
				if(json.del_object & param.service == 'friend' ) {
					$(document).find('#service_friend_' + param.id).remove();
				}
				if (json.status == '1') {

				if (json.talers != undefined) {
					$(document).find('#h_talers').html(json.talers);
				}
				if (json.credit != undefined) {
					$('#u_credit').html(json.credit);
				}
				if (json.top) {
					$('#top_div').html(json.top);
				}
				if (json.title) {
					for(var s_num in json.title){
						$('#s_title_' + s_num).html(json.title[s_num]);
					}
				}
				if (json.button) { //Изменение названия кнопки сервиса
					$('#service_' + param.service).attr("value",json.button);
				}
				if (json.add) { //Добавление информации на страничку
					switch (json.add['type']) {
						case 'number':
							delete(json.add['type']);
							for(var id in json.add) {
								eval(id + ' = ' + json.add[id]);
							}
							break;
						case 'value':
							json.add['type'] = undefined;
							for(var id in json.add) {
								$('#'+id).attr('value',json.add[id]);
							}
							break;
						default:
							json.add['type'] = undefined;
							for(var id in json.add) {
								if (id == 'fleet_submit_btn') {
									if (!$('#fleet_btn').length){
										$('#'+id).after(json.add[id]);
									}
								}
								else {
									$('#'+id).html(json.add[id]);
								}
							}
						}
					}
				}
				for(var id in json.buttons){ //Парсинг кнопок
					eval('json.buttons[id] = (' + json.buttons[id]+ ')');
				}

				if (json.window) { //Отображение окна
					need_close = Math.random();
					if(json.window_obj != undefined) w_obj = json.window_obj;
					else w_obj = 'dservice';
					$('#' + w_obj).html(json.window);
					$('#' + w_obj).dialog({
						modal: true,
						title: json.window_title,
						width: width,
						minHeight: 100,
						resizable: false,
						height: 'auto',
						buttons: json.buttons
					});
					$('#' + w_obj).dialog("showall");
					if (json.focus) { //Перевод фокуса на объект
						$(json.focus).focus();
						$(json.focus).caret(0,0);
					}
					if (json.close_timer) //Закрытие окна по таймеру
						close_window_timer(json.close_timer, w_obj);
				}
				if (json.append) { //Добавление на страницу по id
					for(var index in json.append) {
						$('#' + index).append(json.append[index]);
					}
				}
				if (json.tooltip) {
					tooltip();
				}
			}
			else {
				dialog('Ошибка','Произошла ошибка попробуйте снова (0)');
				close_window_timer(5000);
			}
		},
		error: function(XMLHttpRequest, textStatus, errorThrown) {
			dialog('Ошибка','Произошла ошибка попробуйте снова ('+textStatus+')');
			close_window_timer(5000);
		}
	});

}
function pay () {
	loading_window();
	param = {};
	param.service = 'payment';
	ajax_request(param);
}
function refresh_page() {
	window.location.href = window.location.pathname;
}

function char_limit(m, object, update, upd_obj) {
	if (object == undefined) object = '#mess_text';
	if (update == undefined) update = true;
	if (upd_obj == undefined) upd_obj = '#cntChars';
	var x = '';
    if($(object).val().length > m) {
		var str = $(object).val().slice(0, m);
        $(object).val(str);
    } else {
        x = $(object).val();
    }
	if (update == true) {
		$(upd_obj).text($(object).val().length);
	}
}
function wm_pay (service) {
	param = {};
	param.service = service;
	param.wm_number = $('#wm_number').attr("value");
	ajax_request(param);
}

function InitMessages() {
	if(location.pathname != '/leftmenu.php'){
		if (have_new_mess || have_bonus > 0) {
			//have new message
			param = {};
			if (have_bonus > 0) {
				param.bonus = have_bonus;
			}
			$.ajax({
				url: 'messages.ajax.php',
				dataType: 'json',
				data: param,
				type: 'POST',
				success: function(json) {
					if (json.status == '1') {
						ShowDialog(json);
					}
				}
			});
		}
	}
}
function ShowDialog(param) {
	$('#dservice').html(param.text);
	$('#dservice').dialog({
		modal: true,
		title: param.title,
		width: 500,
		minHeight: 100,
		resizable: false,
		height: 'auto',
		buttons: {
				'Закрыть': function() {
					$( this ).dialog( "close" );
				}
			},
		close: function(event, ui) {
			$.ajax({
				url: 'messages.ajax.php',
				dataType: 'json',
				data: {id: param.m_id, bonus:param.bonus},
				type: 'POST',
				success: function(json) {
					if (json.status == '1') {
						ShowDialog(json);
					}
				}
			});
		}
	});
}

function missile_atack(obj, activate) {
	var top = $(obj).position().top;
	var left = ($(document).width() - loading_window_width)/2;

	loading_window(left, top);
	missile_atack_ajax(0, obj);
}
function missile_atack_ajax(activate, object) {
	if (activate == undefined) activate = 0;
	var focus;
	var param = {};
	param.activate = activate;
	if (param.activate == 0) {
		param.galaxy	= $(object).attr("galaxy");
		param.system	= $(object).attr("system");
		param.planet	= $(object).attr("planet");
		param.type		= $(object).attr("type");
	}
	else {
		param.galaxy = $('#m_amount').attr("galaxy");
		param.system = $('#m_amount').attr("system");
		param.planet = $('#m_amount').attr("planet");
		param.type	 = $('#m_amount').attr("ptype");
		param.number = $('#m_amount').attr("value");
		param.target = $('#m_target').attr("value");
	}
	$.ajax({
		url: 'missile_atack.ajax.php',
		dataType: 'json',
		data: param,
		type: 'POST',
		success: function(json) {
			
			if (json.width) {
				width = json.width;
			}
			else {
				width = 375;
			}
			if (json.status == '1') {

			}
			for(var id in json.buttons){
				eval('json.buttons[id] = (' + json.buttons[id]+ ')');
			}
			if (json.window) {
				$('#dservice').html(json.window);
				$('#dservice').dialog({
					modal: true,
					title: json.window_title,
					width: width,
					minHeight: 100,
					resizable: false,
					height: 'auto',
					buttons: json.buttons
				});
				$("#dservice").dialog("showall");
				if (json.focus) {
					$(json.focus).focus();
					$(json.focus).caret(0,0);
//						setSelectionRange($(focus), 1, 1);
				}

//					ShowAll(focus);
			}
		}
	});
}
function del_with_capcha(obj)
{
	var text = $(obj).attr('id');
	var text_split = text.split('_'); 
	var top = $(obj).position().top;
	var left = ($(document).width() - loading_window_width)/2;

	loading_window(left, top);
	capcha_ajax(0,text_split[1]);
}
function capcha_ajax(activate, object)
{
	if (activate == undefined) activate = 0;
	var focus;
	var param = {};
	param.activate = activate;
	param.n = object;
	if (param.activate == 1) {
		param.code = $('#capcha_code').attr("value");
	}
	$.ajax({
		url: 'showcapcha.ajax.php',
		dataType: 'json',
		data: param,
		type: 'POST',
		success: function(json) {
			
			if (json.width) {
				width = json.width;
			}
			else {
				width = 375;
			}
			for(var id in json.buttons){
				eval('json.buttons[id] = (' + json.buttons[id]+ ')');
			}
			if (json.window) {
				$('#dservice').html(json.window);
				$('#dservice').dialog({
					modal: true,
					title: json.window_title,
					width: width,
					minHeight: 100,
					resizable: false,
					height: 'auto',
					buttons: json.buttons
				});
				$("#dservice").dialog("showall");
				if (json.focus) {
					$(json.focus).focus();
					$(json.focus).caret(0,0);
				}
			}
			if (json.validate==1)
			{
			    window.location.href = json.url;
			}
		}
	});
}
//Синхронизация по времени
var TimeSynchronizationComplete = false;
$(document).mousedown(function () {TimeSync();});
$(document).mousemove(function () {
	TimeSync();
});
function TimeSync() {
	if (!TimeSynchronizationComplete) {
		TimeSynchronizationComplete = true;
		param = Object();
		curtime = new Date();
		var hours = curtime.getHours();
		var minutes = curtime.getMinutes();
		var seconds = curtime.getSeconds();
		param.CurTime = hours + ':' + minutes + ':' + seconds;
		$.ajax({
			url: 'timesync.php',
			dataType: 'json',
			data: param,
			type: 'POST',
			success: function(json) {
				if (json.TimeSyncSuccess) {
					time_is_ok = true;
				}
			}
		});

	}
}
