function $FL(name){
	var dd = $(name);
	return dd.options[dd.selectedIndex].text;
}
var map;
var Map = Class.create({
	initialize: function() {
		//
	},
	showSummary : function() {
		new Ajax.Updater('map_container','/index/map-summary',{
			onComplete : function(){
				Cufon.replace('h2');
			}.bind(this)
		});
	},
	showPoi : function() {
		var poiid = 0;
		if(arguments.length == 1)
		{
			var poiid = arguments[0];
		}
		new Ajax.Updater('map_container','/index/map-poi',{
			method : 'post',
			parameters : {poi_id : poiid},
			onComplete : function(){
				try{
				Cufon.replace('h2');
				}
				catch(e)
				{
					alert(e);
				}
			}.bind(this)
		});
	},
	showBonuses : function() {
		new Ajax.Updater('map_container','/index/map-bonuses',{
			onComplete : function(){
				Cufon.replace('h2');
			}.bind(this)
		});
	},
	showTasks : function() {
		if($('pois_filter'))
		{
			var poiid = $F('pois_filter');
		}
		else
		{
			var poiid = 0;
		}
		new Ajax.Updater('map_container','/index/map-tasks',{
			parameters : {poi_id : poiid},
			onComplete : function(){
				Cufon.replace('h2');
			}.bind(this)
		});
	},
	showExchange : function() {
		new Ajax.Updater('map_container','/index/map-exchange',{
			onComplete : function(){
				Cufon.replace('h2');
			}.bind(this)
		});
	},
	showData : function() {
		new Ajax.Updater('map_container','/index/map-data',{
			onComplete : function(){
				Cufon.replace('h2');
			}.bind(this)
		});
	},
	showMessages : function(page0) {
		var page			= (page0) ? 0 : (($('messages_page')) ? $F('messages_page') : 0);
		var messages_filter	= ($('messages_filter')) ? $F('messages_filter') : 'all';
		new Ajax.Updater('map_container','/index/map-messages',{
			parameters: {
						page_number : page,
						filter : messages_filter
						},
			onComplete : function(){
				Cufon.replace('h2');
			}.bind(this)
		});
	},
	exchange : function () {
		var valid	= true;
		var available = Number($F('available_to_exchange'));
		var value	= Number($F('to_exchange'));

		new Ajax.Updater('map_container','/index/map-do-exchange',{
				method: 'post',
				parameters: {to_exchange : value},
				onComplete : function(){
					Cufon.replace('h2');
				}.bind(this)
			});
	},
	showDealersBonus : function (column) {
		var m = $F('month' + column);
		new Ajax.Request('/ajax/map-get-dealers-bonus',{
			method : 'post',
			parameters: {month : m},
			onComplete : function(transport){
				var res = transport.responseText.toQueryParams();
				$('month' + column + '_number_of_products').update(res.products_sold);
				$('month' + column + '_bonus').update(res.bonus + '%');
				$('month' + column + '_bonus_value').update(res.bonus_value);
				$('dealers_bonus_tab').removeClassName("nieaktywny");
				$('regularity_bonus_tab').addClassName("nieaktywny");
				$('tablica').style.display	= "block";
				$('tablica2').style.display	= "none";
			}.bind(this)
		});
	},
	chooseRoute : function ()
	{
		var rid = $('route15').checked ? 15 : 16;
		new Ajax.Request('/ajax/map-choose-route',{
			method : 'post',
			parameters: {route_id : rid},
			onComplete : function(transport){
				document.location = '/index/mojamapa';
			}.bind(this)
		});
	},
	changeStoreData : function()
	{
		$('change_store_data_msg').update('');

		var nm = $F('store_name');
		var st = $F('store_street');
		var zi = $F('store_zip');
		var ci = $F('store_city');
		var rd = $F('store_region_id');
		var re = $FL('store_region_id');
		var ph = $F('store_phone');
		var fx = $F('store_fax');
		var ti = $F('store_tin');

		new Ajax.Request('/ajax/map-change-store-data',{
			method : 'post',
			parameters : {
							store_name : nm,
							store_street : st,
							store_zip : zi,
							store_city : ci,
							store_region_id : rd,
							store_region : re,
							store_phone : ph,
							store_fax : fx,
							store_tin : ti
						 },
			onComplete : function(transport){
				var res = transport.responseText.toQueryParams();
				$('change_store_data_msg').update(res.msg);
			}
		});
	},
	changeUserData : function()
	{
		$('change_user_data_msg').update('');

		var nm = $F('user_name');
		var sn = $F('user_surname');
		var el = $F('user_email');
		var ph = $F('user_phone');
		var mo = $F('user_mobile');
		new Ajax.Request('/ajax/map-change-user-data',{
			method : 'post',
			parameters : {
							user_name : nm,
							user_surname : sn,
							user_email : el,
							user_phone : ph,
							user_mobile : mo
						 },
			onComplete : function(transport){
				var res = transport.responseText.toQueryParams();
				$('change_user_data_msg').update(res.msg);
			}
		});
	},
	changePassword : function()
	{
		$('change_password_msg').update('');
		var oldpassword = $F('old_password');
		var newpassword = $F('new_password');
		new Ajax.Request('/ajax/map-change-password',{
			method : 'post',
			parameters : {
							old_password : oldpassword,
							new_password : newpassword
						 },
			onComplete : function(transport){
				var res = transport.responseText.toQueryParams();
				$('change_password_msg').update(res.msg);
				$('old_password').value = '';
				$('new_password').value = '';
			}.bind(this)
		});
	},
	showMessage : function (message_id)
	{
		new Ajax.Updater('map_container','/index/map-message',{
			parameters : {
							msg_id : message_id
						 },
			onComplete : function(){
				Cufon.replace('h2');
			}.bind(this)
		});
	},
	showNewMessage : function (message_id)
	{
		new Ajax.Updater('map_container','/index/map-new-message',{
			parameters : {
							msg_id : message_id
						 },
			onComplete : function(){
				Cufon.replace('h2');
			}.bind(this)
		});
	},
	showReplyToMessage : function (message_id)
	{
		this.showNewMessage(message_id);
	},
	sendMessage : function ()
	{
		var message_to		= $F('message_to');
		var message_topic	= $F('message_topic');
		var message_body	= $F('message_body');
		if(message_topic == "")
		{
			alert("Uzupełnij temat wiadomości.");
			$('message_topic').focus();
			return false;
		}

		if(message_body == "")
		{
			alert("Uzupełnij treść wiadomości.");
			$('message_body').focus();
			return false;
		}

		new Ajax.Updater('map_container','/index/map-send-message',
			{
				parameters: {
								to : message_to,
								topic : message_topic,
								body : message_body
							},
			onComplete : function(){
				Cufon.replace('h2');
			}.bind(this)
			}
		);

	},
	showRegularityBonus : function(year, month)
	{
		new Ajax.Updater("tablica2", "/index/map-regularity-bonus",
		{
			parameters: {
							y: year,
							m: month
						},
			onComplete : function(){
				$('regularity_bonus_tab').removeClassName("nieaktywny");
				$('dealers_bonus_tab').addClassName("nieaktywny");
				$('tablica').style.display = "none";
				$('tablica2').style.display = "block";
			}
		});
	},
	showTask : function(tid)
	{
		new Ajax.Updater("facebox", "/index/map-task",
		{
			parameters: {
							task_id : tid
						},
			onComplete : function (){
				$("facebox").style.display = "block";
				Cufon.replace('h2');
				window.location.hash = "task_screen";
			}
		});
	},
	hideTask : function()
	{
		$("facebox").style.display = "none";
		$("facebox").update("");
	},
	showTaskMedia : function()
	{
		var tm = $("task_media");
		Effect.SlideDown(tm);
	},
        bannerAnswer : function()
        {
            if ( arguments[0].value.length == 0 ) {
                alert(MGT_ANSWER_REQUEST);
            } else {
                new Ajax.Updater("facebox", "/index/map-task-answer",{
				method : "post",
				parameters : {
                                            url : arguments[0].value,
                                            task_id : arguments[1]
							 }
			});
            }
        }

        ,
	taskAnswer : function ()
	{
		var l = arguments.length;
		var ans = new Array();
		var checked = 0;
		for(var i=1; i < l; i++)
		{
			var tmp = arguments[i].split("_");
			ans[i] = new Array(tmp[1],tmp[2], ($(arguments[i]).checked) ? 1 : 0); // qustion_id, answers_id, checked
			if($(arguments[i]).checked && ($(arguments[i]).value == 1))
			{
				checked++;
			}
		}
		if(checked != arguments[0])
		{
			alert(MGT_ANSWER_REQUEST);
		}
		else
		{
			new Ajax.Updater("facebox", "/index/map-task-answer",{
				method : "post",
				parameters : {
								answers : ans.toJSON()
							 }
			});
		}

	},
	questionAnswer : function ()
	{
		var qid = arguments[0];
		var l = arguments.length;
		var ans = new Array();
		var checked = false;
		var answerid = 0;
		if(l > 1)
		{
			for(var i=1; i < l; i++)
			{
				var answered = ($(arguments[i]).checked) ? 1 : 0;
				if(answered == 1)
				{
					var tmp = arguments[i].split("_");
					answerid = tmp[1];
					checked = true;

				}
			}

			if(!checked)
			{
				alert(MGT_ANSWER_REQUEST);
			}
			else
			{
				new Ajax.Updater("facebox", "/index/map-task-answer",{
					method : "post",
					parameters : {
									question_id : qid,
									answer_id	: answerid
								 }
				});
			}
		}
	}
});
var map = new Map();

function showPoi(id)
{
	map.showPoi(id);
}


function showTask(id)
{
	//window.open('/task.html','window name','attribute1,attribute2');
}