var host = window.location.host;
var url = 'http://' + host;
var error_msg = '';
var info_msg = '';


var r_login = /^[A-z0-9\-\_]{3,32}$/;
var r_pass = /^[^\ ]{6,32}$/;
//var r_email = /^\w+[\w-\.]*\@\w+((-\w+)|(\w*))\.[a-z]{2,4}$/;
var r_email = /^.+@.+\..+$/;




$(document).ready(function(){


(function($){
  $.fn.vCenter = function(options) {
    var pos = {
      sTop : function() {

return window.pageYOffset || $.boxModel && document.documentElement.scrollTop || document.body.scrollTop;

      },
      wHeight : function() {

if ( $.browser.opera || ($.browser.safari && parseInt ($.browser.version) > 520) ) { return window.innerHeight - (($(document).height() > window.innerHeight) ? getScrollbarWidth() : 0);

                } else if ( $.browser.safari ) {
                        return window.innerHeight;
                }       else {

return $.boxModel && document.documentElement.clientHeight || document.body.clientHeight;

        }
      }
    };
    return this.each(function(index) {
      if (index == 0) {
        var $this = $(this);
        var elHeight = $this.height();
        $this.css({
          position: 'absolute',
          marginTop: '0',
          top: pos.sTop() + (pos.wHeight() / 2) - (elHeight / 2)
        });
      }
    });
  };

})(jQuery);


	$('img[@src$=.png], #img1, #favourities_box, #login_box').ifixpng();

     var qwe;
     var asd;
	 var total_games_car;
	 var last_id_act;

	if($('#karuzela_exist').val() == '1'){
	  // ilosc wszelkich elementow ladowanych
	  // ilosc wszelkich elementow ladowanych
	  // ilosc wszelkich elementow ladowanych

	var number = 3 ;









	 $.post(url + '/pattern/_modules/carusel/start2.php',{type: 'splash'},function(data){
	 	 $('#splash').empty();
	 	 $('#splash').append(data);
	 });

	 $.post(url + '/pattern/_modules/carusel/start2.php',{type: 'title'},function(data){
	 	 $('#splash-info').find('h2').empty();
	 	 $('#splash-info').find('h2').append(data);
	 });

	 $.post(url + '/pattern/_modules/carusel/start2.php',{type: 'desc'},function(data){
	 	 $('#splash-info').find('p').empty();
	 	 $('#splash-info').find('p').append(data);
	 });

	 $.post(url + '/pattern/_modules/carusel/start2.php',{type: 'link'},function(data){
         $('#splash_link').attr("href",data);
	 	 $('#splash-info').find('a').attr("href",data);
	 });




			//pracuje

		if( BrowserDetect.browser == 'Firefox' ){
		  if( BrowserDetect.version == '2' ){
   				 $("#anyClass").css("float","right");
   				 $("#anyClass").css("position","relative");
   				 $("#anyClass").css("top","-55px");


    	  }
    	}else if( BrowserDetect.browser == 'Safari' ){
    	         $("#anyClass").css("float","right");
   				 $("#anyClass").css("position","relative");

    	}





   jQuery('#mycarousel').jcarousel({
        // Uncomment the following option if you want items
        // which are outside the visible range to be removed
        // from the DOM.
        // Useful for carousels with MANY items.

        // itemVisibleOutCallback: {onAfterAnimation: function(carousel, item, i, state, evt) { carousel.remove(i); }},
        // wrap : "first",
        //initCallback : mycarousel_itemLoadCallback
          itemLoadCallback: mycarousel_itemLoadCallback
    });
		var asdsda = setInterval(getBigRandom,20000);
	}



	if($('#activity_box').val() == 1 ){
		var module = 'actions_box';



var post = $.post(url + '/pattern/_modules/actions_box/start.php',{module:module,num : 7}, function(xml) {

			$('#activity-content').empty();
			setContent(xml);

		},'xml');
		qwe = setInterval(getActivity,3000);


}





	var options = {minWidth: 120,copyClassAttr: true};
    $('#menuList').menu(options);


	$('#c_loading').height($(document).height());

	//gdy startuje ajax to pokazuje diva
	//$("#c_loading").ajaxStart(function(){
	//   $(this).show();
	// });
	//gdy jest koniec ajax'a to chowa diva
	//$("#c_loading").ajaxStop(function(){
	//   $(this).hide();
	// });

	$('#c_error').click(function(){
		$(this).hide();
	});

	$('#c_info').click(function(){
		$(this).hide();
	});

	$("#f_logon #login").focus(function () {
		var login = $("#login").val();
		if(login == "login") {
			$("#login").val("");
		}
	});

	$("#f_logon #pass").focus(function () {
		var pass = $("#pass").val();
		if(pass == "haslo") {
			$("#pass ").val("");
		}
	});

	$("#login").blur(function () {
		var login = $("#login").val();
		if(login == "" || login == " ") {
			$("#login").val("login");
		}
	});

	$("#pass").blur(function () {
		var pass = $("#pass").val();
		if(pass == "" || pass == " ") {
			$("#pass").val("haslo");
		}
	});


	$('#f_logon').submit(function(){

		var u_login = $("#f_logon #login").val();
		var u_pass = $('#f_logon #pass').val();
		if(u_login.match(r_login) && u_pass.match(r_pass)) {
			var module = 'logon_user';
			var logIn = $.post(url + '/pattern/_modules/index.php', {login:u_login, pass:u_pass, module:module}, function(data) {

			});

			logIn.onreadystatechange = function() {
				if(logIn.readyState == 4) {
					var response = logIn.responseText;

					if(response == 'ok') {
						window.location.reload();
					}
					else {
						getAlertFromXml('bad_login_or_pass');
						return (false);
					}
				}
			}

			return (false);
		}
		else {
			getAlertFromXml('bad_login_or_pass');
		}

		return (false);
	});



	$('#f_register').submit(function(){
		var u_login = $('#f_register #login').val();
		var u_pass = $('#f_register #pass').val();
		var u_pass2 = $('#f_register #pass2').val();
		var u_email = $('#f_register #email').val();
		var day = $('#day').val();
		var month = $('#month').val();
		var year = $('#year').val();
		var regulations = $('#check_regulations').attr('checked');

	var man = $('#man').attr("checked");
		var plec = '';

		if(man){
			plec = $('#man').val();
		} else {
			plec = $('#woman').val();
		};



		if(!u_login.match(r_login)) {
			getAlertFromXml('r_bad_login');
			return (false);
		}

		if(!u_pass.match(r_pass) || !u_pass2.match(r_pass)) {
			getAlertFromXml('r_bad_pass');
			return (false);
		}

		if(u_pass != u_pass2) {
			getAlertFromXml('r_pass_doesnt_match');
			return (false);
		}

		if(!u_email.match(r_email)) {
			getAlertFromXml('r_bad_email');
			return (false);
		}

		if (day == 0 || month == 0 || year == 0) {
			getAlertFromXml('r_bad_date');
			return false;
		}

		if(!regulations) {
			getAlertFromXml('r_check_regulations_error');
			return (false);		
		}

		var module = 'register_user';
		var register = $.post(url + '/pattern/_modules/index.php', {login:u_login, pass:u_pass, pass2:u_pass2, email:u_email, day: day, month: month, year: year,plec: plec, module:module}, function(data) {
			//$("#debug").html(data);
			//return (data);
		});

		register.onreadystatechange = function() {
			if(register.readyState == 4) {
				//alert(register.responseText);

				if(register.responseText == 'ok') {
					//$('#c_register').html('Rejestracja przebiegła pomyślnie. Możesz się zalogować. Na podany adres e-mail wysłaliśmy wiadomość.');
					getAlertFromXml('u_register_ok');
					return(false);
				}

				if(register.responseText == -1) {
					getAlertFromXml('r_login_exist');
					return (false);
				}

				if(register.responseText == -2) {
					getAlertFromXml('r_email_exist');
					return (false);
				}
				else if(register.responseText == -3) {
					getAlertFromXml('r_wrong_passwords');
					return (false);
				}
				else if(register.responseText == -4) {
					getAlertFromXml('r_bad_email');
					return (false);
				}
				else if(register.responseText == -5) {
					getAlertFromXml('r_bad_login');
					return (false);
				}
				else if(register.responseText == -6) {
					getAlertFromXml('r_cant_register');
					return (false);
				}
			}
		}

		return (false);
	});

	$('#search_input').click(function(){
		$(this).val('');
		$(this).unbind('click');
	});









	reloadFavourities(0);
});

function getActivity(){




var module = 'actions_box';


var post = $.post(url + '/pattern/_modules/actions_box/start.php',{module:module,num : 1}, function(xml) {

			var id;

            jQuery('blee', xml).each(function(i) {
				id = $(this).find('id').text();


            });
           

            if( id > last_id_act ){

			$('#activity-content div:last').remove();
			jQuery('blee', xml).each(function(i) {


			 var userHref = $(this).find('userHref').text();
			 var userAvatar = $(this).find('userAvatar').text();
			 var whoAdd = $(this).find('whoAdd').text();
			 var contentType = $(this).find('contentType').text();
			 var gameHref = $(this).find('gameHref').text();
			 var thumbnail = $(this).find('thumbnail').text();
			 last_id_act = $(this).find('id').text();

			 var content = '<div style="vertical-align:middle;margin-top:9px;width:230px;height:22px;"><div style="float:left; width: 180px;"><a href="' +userHref+ '"><img src="'+userAvatar+'" width="16" height="16" />&nbsp;</a>&nbsp;&nbsp;<a href="'+userHref+'">&nbsp;&nbsp;'+whoAdd+'&nbsp;</a>'+contentType+'&nbsp;&nbsp;</div><div style="float:right;"><a href="'+gameHref+'"  ><img src="'+thumbnail+'" width="20" height="20"  /></a></div></div>';
			 $('#activity-content div:first').before(content);

	});
			}
		},'xml');

	}
var lastId;

function setContent(xml){


jQuery('blee', xml).each(function(i) {




			 var userHref = $(this).find('userHref').text();
			 var userAvatar = $(this).find('userAvatar').text();
			 var whoAdd = $(this).find('whoAdd').text();
			 var contentType = $(this).find('contentType').text();
			 var gameHref = $(this).find('gameHref').text();
			 var thumbnail = $(this).find('thumbnail').text();


			 var content = '<div style="vertical-align:middle;margin-top:9px;width:230px;height:22px;"><div style="float:left;width: 180px;"><a href="' +userHref+ '"><img src="'+userAvatar+'" width="16" height="16" />&nbsp;</a>&nbsp;&nbsp;<a href="'+userHref+'">&nbsp;&nbsp;'+whoAdd+'&nbsp;</a>'+contentType+'&nbsp;&nbsp;</div><div style="float:right;"><a href="'+gameHref+'"><img src="'+thumbnail+'" width="20" height="20" " /></a></div></div>';
			 $('#activity-content').append(content);
			 var id = $(this).find('id').text();
				


	});
	
	last_id_act = id;

}




function getBig(id){


	  var gid = id;

	 $.post(url + '/pattern/_modules/carusel/start2.php',{type: 'splash',id : gid},function(data){
	 	 $('#splash').empty();
	 	 $('#splash').append(data);
	 });

	 $.post(url + '/pattern/_modules/carusel/start2.php',{type: 'title',id : gid},function(data){
	 	 $('#splash-info').find('h2').empty();
	 	 $('#splash-info').find('h2').append(data);
	 });

	 $.post(url + '/pattern/_modules/carusel/start2.php',{type: 'desc',id : gid},function(data){
	 	 $('#splash-info').find('p').empty();
	 	 $('#splash-info').find('p').append(data);
	 });

	 $.post(url + '/pattern/_modules/carusel/start2.php',{type: 'link',id : gid},function(data){
         $('#splash_link').attr("href",data);
	 	 $('#splash-info').find('a').attr("href",data);
	 });

	$('#'+lastId).removeClass('selected');
	$('#'+gid).addClass('selected');
	lastId = gid;
}



function getBigRandom(){


	  var gid ;


	  $.post(url + '/pattern/_modules/carusel/start2.php',{type: 'rand'},function(data){

	 	 gid = parseInt(data);


	    $.post(url + '/pattern/_modules/carusel/start2.php',{type: 'splash',id : gid},function(data){
	 	 $('#splash').empty();
	 	 $('#splash').append(data);

	 });

	 $.post(url + '/pattern/_modules/carusel/start2.php',{type: 'title',id : gid },function(data){
	 	 $('#splash-info').find('h2').empty();
	 	 $('#splash-info').find('h2').append(data);
	 });

	 $.post(url + '/pattern/_modules/carusel/start2.php',{type: 'desc',id : gid},function(data){
	 	 $('#splash-info').find('p').empty();
	 	 $('#splash-info').find('p').append(data);
	 });

	 $.post(url + '/pattern/_modules/carusel/start2.php',{type: 'link',id : gid},function(data){
         $('#splash_link').attr("href",data);
	 	 $('#splash-info').find('a').attr("href",data);
	 });
	 
	 	$('#'+lastId).removeClass('selected');
		$('#'+gid).addClass('selected');
		lastId = gid;

	 });






}

function getAlertFromXml(whatError) {
	if (window.innerHeight && window.scrollMaxY ) { // FF
		pageWidth = window.innerWidth + window.scrollMaxX;
		pageHeight = window.innerHeight + window.scrollMaxY;
	} else if (document.body.scrollHeight > document.body.offsetHeight) { // all but Explorer Mac
		pageWidth = document.body.scrollWidth;
		pageHeight = document.body.scrollHeight;
	} else { // works in Explorer 6 Strict, Mozilla (not FF) and Safari
		pageWidth = document.body.offsetWidth + document.body.offsetLeft;
		pageHeight = document.body.offsetHeight + document.body.offsetTop;
	}

//	window.scrollTo(0,0);
$('#c_error').height($(document).height());
$('#c_error #msg').vCenter();
	//$('#c_error').css('height', pageHeight + 'px');
	//$('#c_error').height($(document).height());
	$.ajax({
		type: 'GET',
		url: url + '/pattern/main/xml/js_alerts_xml.xml',
		contentType: 'text/xml',
		async: false,
		dataType: 'xml',
		success: function (xml) {

			$('error', xml).each(function() {
				if($('title', this).text() == whatError) {
					error_msg = $('msg', this).text();
				}
			});
		},
		error: function() {
			alert('!Error: wystapil blad aplikacji. Skontaktuj sie z administratorem.')
		},
		complete: function() {
			$('#c_error #msg').html(error_msg);
			$('#c_error').show();
//			alert(error_msg);
		}
	});
}


function getInfoFromXml(whatInfo) {
	$.ajax({
		type: 'GET',
		url: url + '/pattern/main/xml/js_info.xml',
		contentType: 'text/xml',
		async: false,
		dataType: 'xml',
		success: function (xml) {
			$('info', xml).each(function() {
				if($('title', this).text() == whatInfo) {
					info_msg = $('msg', this).text();
				}
			});
		},
		error: function() {
			alert('!Error: wystapil blad aplikacji. Skontaktuj sie z administratorem.')
		},
		complete: function() {
		$('#c_info').height($(document).height());
		$('#c_info #msg').vCenter();

			$('#c_info #msg').html(info_msg);
			$('#c_info').show();
		}
	});


}

function reloadFavourities(value) {
	var module = 'user_get_favourities';
	var page = $('#favouritiesPage').val();

	if (value != 0) {
		page = parseInt(page) + value;
		$('#favouritiesPage').val(page);
	}
	var comments = $.post(url + '/pattern/_modules/index.php',{page: page, module:module}, function(data) {});

	comments.onreadystatechange = function() {
		if(comments.readyState == 4) {
			var response = comments.responseText;

			if(response != 'bad') {
				$('#favouritiesList').html(response);
			}
			else {
				$('#favouritiesList').html('');
			}
		}
	}
}

function mycarousel_itemLoadCallback(carousel, state)
{

	if(state == 'init'){
    if (carousel.has(carousel.first, carousel.last)) {
        return;
    }

    jQuery.get(
        url + '/pattern/_modules/carusel/start.php',
        {
            first: carousel.first,
            last: carousel.last,
						type: 'get'
        },
        function(xml) {
            mycarousel_itemAddCallback(carousel, carousel.first, carousel.last, xml);
        },
        'xml'
    );
    }
};



function mycarousel_itemAddCallback(carousel, first, last, xml)
{
    carousel.size(parseInt(jQuery('total', xml).text()));
    total_games_car = parseInt(jQuery('total', xml).text());

    jQuery('blee', xml).each(function(i) {

			 //var gtitle = $(this).find('title').text();


				carousel.add(first + i, mycarousel_getItemHTML(jQuery(this).find('imag').text(),$(this).find('title').text(),$(this).find('id').text()));
       // carousel.add(first + i, mycarousel_getItemHTML(jQuery(this).find('images').text()));
    });
};

/**
 * Item html creation helper.
 */
function mycarousel_getItemHTML(url,t,id)
{
		//return url ;
    return '<table class="boxxx" onclick="getBig(\''+id+'\')"><tr><td class="picBoxx" id="'+id+'"><img src="' + url + '"  alt="" /></td><td class="titleBoxx">' + t + '</td></tr></table>';
}


