/*
originally written by paul sowden <paul@idontsmoke.co.uk> | http://idontsmoke.co.uk
modified and localized by alexander shurkayev <alshur@ya.ru> | http://htmlcoder.visions.ru
*/
 
var tooltip = {

	/* НАЧАЛО НАСТРОЕК */
	options: {
		attr_name: "tooltip", // наименование создаваемого tooltip'ого атрибута
		blank_text: "(откроется в новом окне)", // текст для ссылок с target="_blank"
		newline_entity: "-;-", // укажите пустую строку (""), если не хотите использовать в tooltip'ах многострочность; ежели хотите, то укажите тот символ или символы, которые будут заменяться на перевод строки
		max_width: 300, // максимальная ширина tooltip'а в пикселах; обнулите это значение, если ширина должна быть нелимитирована
		delay: 10, // задержка при показе tooltip'а в миллисекундах
		skip_tags: ["link", "style"] // теги, у которых не обрабатываем атрибуты alt и title
	},
	/* КОНЕЦ НАСТРОЕК */

	t: document.createElement("DIV"),
	c: null,
	g: false,
	canvas: null,

	m: function(e){
		if (tooltip.g){
			var x = window.event ? event.clientX + (tooltip.canvas.scrollLeft || document.body.scrollLeft) : e.pageX;
			var y = window.event ? event.clientY + (tooltip.canvas.scrollTop || document.body.scrollTop) : e.pageY;
			tooltip.a(x, y);
		}
	},

	d: function(){
		tooltip.canvas = document.getElementsByTagName(document.compatMode && document.compatMode == "CSS1Compat" ? "HTML" : "BODY")[0];
		tooltip.t.setAttribute("id", "tooltip");
		document.body.appendChild(tooltip.t);
		if (tooltip.options.max_width) tooltip.t.style.maxWidth = tooltip.options.max_width + "px"; // all but ie
		var a = document.all && !window.opera ? document.all : document.getElementsByTagName("*"); // in opera 9 document.all produces type mismatch error
		var l = a.length;
		for (var i = 0; i < l; i++){

			if (!a[i] || tooltip.options.skip_tags.in_array(a[i].tagName.toLowerCase())) continue;

			var tooltip_title = a[i].getAttribute("title"); // returns form object if IE & name="title"; then IE crashes; so...
			if (tooltip_title && typeof tooltip_title != "string") tooltip_title = "";

			var tooltip_alt = a[i].getAttribute("alt");
			var tooltip_blank = a[i].getAttribute("target") && a[i].getAttribute("target") == "_blank" && tooltip.options.blank_text;
			if (tooltip_title || tooltip_blank){
				a[i].setAttribute(tooltip.options.attr_name, tooltip_blank ? (tooltip_title ? tooltip_title + " " + tooltip.options.blank_text : tooltip.options.blank_text) : tooltip_title);
				if (a[i].getAttribute(tooltip.options.attr_name)){
					a[i].removeAttribute("title");
					if (tooltip_alt && a[i].complete) a[i].removeAttribute("alt");
					tooltip.l(a[i], "mouseover", tooltip.s);
					tooltip.l(a[i], "mouseout", tooltip.h);
				}
			}else if (tooltip_alt && a[i].complete){
				a[i].setAttribute(tooltip.options.attr_name, tooltip_alt);
				if (a[i].getAttribute(tooltip.options.attr_name)){
					a[i].removeAttribute("alt");
					tooltip.l(a[i], "mouseover", tooltip.s);
					tooltip.l(a[i], "mouseout", tooltip.h);
				}
			}
			if (!a[i].getAttribute(tooltip.options.attr_name) && tooltip_blank){
				//
			}
		}
		document.onmousemove = tooltip.m;
		window.onscroll = tooltip.h;
		tooltip.a(-99, -99);
	},
	
	_: function(s){
		s = s.replace(/\&/g,"&amp;");
		s = s.replace(/\</g,"&lt;");
		s = s.replace(/\>/g,"&gt;");
		return s;
	},

	s: function(e){
		if (typeof tooltip == "undefined") return;
		var d = window.event ? window.event.srcElement : e.target;
		if (!d.getAttribute(tooltip.options.attr_name)) return;
		var s = d.getAttribute(tooltip.options.attr_name);
		if (tooltip.options.newline_entity){
			var s = tooltip._(s);
			s = s.replace(eval("/" + tooltip._(tooltip.options.newline_entity) + "/g"), "<br />");
			tooltip.t.innerHTML = s;
		}else{
			if (tooltip.t.firstChild) tooltip.t.removeChild(tooltip.t.firstChild);
			tooltip.t.appendChild(document.createTextNode(s));
		}
		tooltip.c = setTimeout(function(){
			tooltip.t.style.visibility = 'visible';
		}, tooltip.options.delay);
		tooltip.g = true;
	},

	h: function(e){
		if (typeof tooltip == "undefined") return;
		tooltip.t.style.visibility = "hidden";
		if (!tooltip.options.newline_entity && tooltip.t.firstChild) tooltip.t.removeChild(tooltip.t.firstChild);
		clearTimeout(tooltip.c);
		tooltip.g = false;
		tooltip.a(-99, -99);
	},

	l: function(o, e, a){
		if (o.addEventListener) o.addEventListener(e, a, false); // was true--Opera 7b workaround!
		else if (o.attachEvent) o.attachEvent("on" + e, a);
			else return null;
	},

	a: function(x, y){
		var w_width = tooltip.canvas.clientWidth ? tooltip.canvas.clientWidth + (tooltip.canvas.scrollLeft || document.body.scrollLeft) : window.innerWidth + window.pageXOffset;
		var w_height = window.innerHeight ? window.innerHeight + window.pageYOffset : tooltip.canvas.clientHeight + (tooltip.canvas.scrollTop || document.body.scrollTop); // should be vice verca since Opera 7 is crazy!

		if (document.all && document.all.item && !window.opera) tooltip.t.style.width = tooltip.options.max_width && tooltip.t.offsetWidth > tooltip.options.max_width ? tooltip.options.max_width + "px" : "auto";
		
		var t_width = tooltip.t.offsetWidth;
		var t_height = tooltip.t.offsetHeight;

		tooltip.t.style.left = x + 8 + "px";
		tooltip.t.style.top = y + 8 + "px";
		
		if (x + t_width > w_width) tooltip.t.style.left = w_width - t_width + "px";
		if (y + t_height > w_height) tooltip.t.style.top = w_height - t_height + "px";
	}
}

Array.prototype.in_array = function(value){
	var l = this.length;
	for (var i = 0; i < l; i++)
		if (this[i] === value) return true;
	return false;
};

var root = window.addEventListener || window.attachEvent ? window : document.addEventListener ? document : null;
if (root){
	if (root.addEventListener) root.addEventListener("load", tooltip.d, false);
	else if (root.attachEvent) root.attachEvent("onload", tooltip.d);
}


var nownew=0;
function newplus(flag)
{
	if(flag==1)
	{
		nownew--;
		if(nownew<0)
		{
			nownew=4;
		}
	} else if(flag==2)
	{
		nownew++;
		if(nownew>4)
		{
			nownew=0;
		}
	}
	else
	{
		nownew = flag - 10;
	}
	
	document.getElementById('newestgame').innerHTML=document.getElementById('newbloc_'+nownew).innerHTML;
    $(".news_list_item").removeClass("news_active");
    $("#news_list_"+nownew).addClass("news_active");
	
	
}









function makeRequest() {
  var http_request = false;
  if (window.XMLHttpRequest) { // Mozilla, Safari, ...
     http_request = new XMLHttpRequest();
        if (http_request.overrideMimeType) {
           http_request.overrideMimeType('text/xml'); // а ТЄа б?а б?аЁа?а б?аЁа?а ТАа а?а ТЕ а а?а ТА а а?аЁа?а б?а б?а б? а б?аЁа?а б?а ТБа ТЛа ТЕа б?а б?
        }
  }
  else if (window.ActiveXObject) { // IE
       try {
          http_request = new ActiveXObject("Msxml2.XMLHTTP");
       } catch (e) {
            try {
               http_request = new ActiveXObject("Microsoft.XMLHTTP");
            } catch (e) {}
         }
  }
  if (!http_request) {
     //alert('1');
     return false;
  }
  return http_request;
}

function CARAJAX(http, target) {
var http_request = makeRequest();
var url ='/ajax.php?page=ajax&'+http;
http_request.open('GET', url, true);
http_request.onreadystatechange = function() { CarResponse(http_request, target); }
http_request.send(null);
}

function CarResponse(http_request, target) {
	
  if (http_request.readyState == 4 || http_request.readyState == 'complete') { 
  	
     if (http_request.status == 200) {
  //alert(http_request.responseText);   	
var resultext=http_request.responseText;

if(target=='zero'){
	
}
else
{
	document.getElementById(target).innerHTML=resultext;
}
     }
  }
}



function sendmessage()
{
	if(document.getElementById('theme').value!='' && document.getElementById('login').value!='' && document.getElementById('imail').value!='')
	{
		if(document.getElementById('categoryy'))
		{
			var morbbl='&categoryy='+document.getElementById('categoryy').value;
		}
		else
		{
			var morbbl='';	
			
		}
		CARAJAX('login='+document.getElementById('login').value+'&imail='+document.getElementById('imail').value+'&theme='+document.getElementById('theme').value+'&message='+document.getElementById('message').value+morbbl, 'zero');
			document.getElementById('result').innerHTML='Сообщение отправлено';
	document.getElementById('login').value='';
	document.getElementById('imail').value='';
	document.getElementById('theme').value='';
	document.getElementById('message').value='';
	document.getElementById('message').innerHTML='';
	
	}
	else
	{
		document.getElementById('result').innerHTML='Не все поля заполнены!';
	}


}

function check_title(lang){
	var ttl = $("#title_"+lang).val();
	if(ttl != ''){
		if(parseInt($('#cur_step').val()) == 1)
			$("#next_step_but").removeAttr("disabled");
		$('#'+lang+'_title_check').html('<img src=\"/images/preloader.gif\" style=\"max-height:16px;\"> Идет проверка...');
		$.post("/submit.php",{check_game_name:1,title:ttl,lng:lang},function(data){
			if(data == '1') {
				$('#'+lang+'_title_check').html('<img src=\"/images/close.png\">');
			}
			if(data == '0') {
				$('#'+lang+'_title_check').html('<img src=\"/images/ok.png\">');
			}
		});
	}
	else
	{
		$('#'+lang+'_title_check').html('');
	}
}

function find_similar(){
	var ttl1 = $("#title_eng").val();
	var ttl2 = $("#title_rus").val();
	if(ttl1 != '' || ttl2 != ''){
		$.post("/submit.php",{find_similar_name:1,title1:ttl1,title2:ttl2},function(data){
			$('#sim_games_div').html(data);
			$('#sim_games_div').css('width','450px');
			if(data != ''){
				$('#title_rus').addClass("red_border");
				$('#title_eng').addClass("red_border");
				$("#notif_sim_name").show();
			}			
			else
			{
				$('#title_rus').removeClass("red_border");
				$('#title_eng').removeClass("red_border");
				$("#notif_sim_name").hide();
			}
		});
	}
	return false;
}

function go_next_step(){
	var step = parseInt($('#cur_step').val());
	switch(step){
		case 1: $('#sim_games_div').html(""); 
				find_similar();
				$("#step2").show();
				$("#next_step_but").attr("disabled","1");
				$('#cur_step').val(step+1); 
				break;
		case 2: $('#sim_games_div').html('').css('width','auto');
				$("#step3").show();
				$("#next_step_but").attr("disabled","1");
				$('#cur_step').val(step+1); 
				break;	
		case 3: $("#step4").show();
				$("#submit_but").show();
				$("#next_step_but").hide(); 
				break;	
	}
	return false;
}

	function ajaxFileUpload()
	{
		$("#loading").html("<img src='/images/preloader.gif' style='max-height:16px;'> Загрузка и проверка файла...");
		$('#notif_file').html('');

		$.ajaxFileUpload
		(
			{
				url:'submit.php',
				secureuri:false,
				fileElementId:'fileToUpload',
				dataType: 'json',
				data:{check_game_file:'1'},
				success: function (data, status)
				{
					if(typeof(data.error) != 'undefined')
					{
						if(data.error != '')
						{
							alert(data.error);
						}else
						{
							var resp = parseInt(data.resp);
							switch(resp){
								case 0: 
										$('#loading').html('<img src=\"/images/ok.png\">');
										$("#game_filename").val(data.msg);
										$("#fileToUpload").attr("disabled","1");
										$("#next_step_but").removeAttr("disabled");
										break;
								case 1: 
										$('#loading').html('<img src=\"/images/close.png\">');
										$("#next_step_but").attr("disabled","1");
										$('#notif_file').html('<p>'+data.msg+'</p>');
										$('#notif_file').show();
										break;
							}
						}
					}
				},
				error: function (data, status, e)
				{
					alert(e);
				}
			}
		)
		
		return false;

	}
	
	function ajaxImageUpload()
	{

		$("#loading_img").html("<img src='/images/preloader.gif' style='max-height:16px;'> Загрузка и проверка изображения...");

		$.ajaxFileUpload
		(
			{
				url:'submit.php',
				secureuri:false,
				fileElementId:'imageToUpload',
				dataType: 'json',
				data:{check_game_image:'1', game_name:$("#game_filename").val()},
				success: function (data, status)
				{
					if(typeof(data.error) != 'undefined')
					{
						if(data.error != '')
						{
							alert(data.error);
						}else
						{
							var resp = parseInt(data.resp);
							switch(resp){
								case 0: 
										$('#loading_img').html('<img src=\"/images/ok.png\">');
										$("#image_filename").val(data.msg);
										$("#cropbox").attr("src","/"+data.msg);
										$("#crop_div").slideDown();
											$("#cropbox").Jcrop({
												allowResize: false,
												allowSelect: false,
												setSelect:   [ 0, 0, 300, 250 ],
												onSelect: updateCoords
											});										
										$("#next_step_but").removeAttr("disabled");
										break;
								case 1: 
										$('#loading_img').html('<img src=\"/images/close.png\">');
										$("#next_step_but").attr("disabled","1");
										$('#notif_image').html('<p>'+data.msg+'</p>');
										$('#notif_image').show();
										break;
							}
						}
					}
				},
				error: function (data, status, e)
				{
					alert(e);
				}
			}
		)
		return false;

	}	

			function updateCoords(c)
			{
				$('#image_x').val(c.x);
				$('#image_y').val(c.y);
				$('#image_w').val(c.w);
				$('#image_h').val(c.h);
				return false;
			}
			function count_length(){
				var str = $("#description").val();
				var len = str.length;
				$("#desc_length").html(len);
				if(len < 150) {
					$("#loading_descr").html("<img src=\"/images/error.gif\">");
					$("#submit_but").attr("disabled","1");
					$("#desc_length").css('color','#F00');
				}else{
					$("#loading_descr").html("<img src=\"/images/ok.png\">");
					$("#submit_but").removeAttr("disabled");
					$("#desc_length").css('color','#178901');
				}
				return false;	
			}
			
			function check_length(nom){
				var el;
				switch(nom){
					case 0: 
							el = $("#description");
							var str = el.val();
							var len = str.length;
 							if(len < 150) {$("#notif_description").show();
		 							$("#loading_descr").html("<img src=\"/images/error.gif\">");
		 							$("#submit_but").attr("disabled","1");
		 							$('#desc_length').css('color','#F00');
 							}
							else {$("#notif_description").hide();
									$("#loading_descr").html("<img src=\"/images/ok.png\">");
									$("#submit_but").removeAttr("disabled");
									$('#desc_length').css('color','#178901');
							}
							break;
					case 1: el = $("#controls");
							var str = el.val();
							var len = str.length;
 							if(len < 1) {$("#notif_controls").show();
 										$("#loading_controls").html("<img src=\"/images/error.gif\">");
 										$("#submit_but").attr("disabled","1");
 									}
 									else {$("#notif_controls").hide();
 										$("#loading_controls").html("<img src=\"/images/ok.png\">");
 										$("#submit_but").removeAttr("disabled");
 									}
							break;
				}
				return false;
			}
			
			function checkSubmit(){
				return $('#submit_but').css('display') != 'none';
			}





