var Lokal = {
  currLokal: 'warszawa',
  names: new Hash({bialystok:"Białystok" ,bydgoszcz:"Bydgoszcz" ,czestochowa:"Częstochowa" ,gorzowwlkp:"Gorzów Wlkp." ,katowice:"Katowice" ,kielce:"Kielce" ,krakow:"Kraków" ,lodz:"Łódź" ,lublin:"Lublin" ,olsztyn:"Olsztyn" ,opole:"Opole" ,plock:"Płock" ,poznan:"Poznań" ,radom:"Radom" ,rzeszow:"Rzeszów" ,szczecin:"Szczecin" ,torun:"Toruń" ,trojmiasto:"Trójmiasto" ,warszawa:"Warszawa" ,wroclaw:"Wrocław" ,zielonagora:"Zielona Góra"}),
  hrefs: new Hash({bialystok:"http://miasta.gazeta.pl/bialystok" ,bydgoszcz:"http://miasta.gazeta.pl/bydgoszcz" ,czestochowa:"http://miasta.gazeta.pl/czestochowa" ,gorzowwlkp:"http://miasta.gazeta.pl/gorzow" ,katowice:"http://miasta.gazeta.pl/katowice" ,kielce:"http://miasta.gazeta.pl/kielce" ,krakow:"http://miasta.gazeta.pl/krakow" ,lodz:"http://miasta.gazeta.pl/lodz" ,lublin:"http://miasta.gazeta.pl/lublin" ,olsztyn:"http://miasta.gazeta.pl/olsztyn" ,opole:"http://miasta.gazeta.pl/opole" ,plock:"http://miasta.gazeta.pl/plock" ,poznan:"http://miasta.gazeta.pl/poznan" ,radom:"http://miasta.gazeta.pl/radom" ,rzeszow:"http://miasta.gazeta.pl/rzeszow" ,szczecin:"http://miasta.gazeta.pl/szczecin" ,torun:"http://miasta.gazeta.pl/torun" ,trojmiasto:"http://miasta.gazeta.pl/trojmiasto" ,warszawa:"http://miasta.gazeta.pl/warszawa" ,wroclaw:"http://miasta.gazeta.pl/wroclaw" ,zielonagora:"http://miasta.gazeta.pl/zielonagora"}),
  
  updClassName: function(elem, clazzName) {
	Element.classNames(elem).each(function (name) {
		if (Lokal.names[name]) Element.removeClassName(elem,name);
	});
	Element.addClassName(elem, clazzName);
  },
  initSelectors: function() {
	var lokals=Lokal.lokals;
	var names=Lokal.names;
	var elems=Element.getElementsByClassName(document, 'lokalSel');
        for (var j=0; j<elems.length; j++) {
		var e=elems[j];
		var off = e.options.length;
		for (var i=0; i<lokals.length; i++) {
			e.options[i+off] = new Option(names[lokals[i]], lokals[i]);
		}
		Event.observe(e,'change', new Function("Lokal.setLokal($('"+e.id+"').options[$('"+e.id+"').selectedIndex].value);") );
	}
  },
  initNav: function() {
	var lokals=Lokal.lokals;
	var names=Lokal.names;
	var elems=Element.getElementsByClassName(document, 'local');
	for (var j=0; j<elems.length; j++) {
		var htm=new Array();
		for (var i=0; i<lokals.length; i++) {
			htm.push("<li><a href='#' onClick=\"Lokal.setLokal('");
			htm.push(lokals[i]);
			htm.push("');return false;\">");
			htm.push(names[lokals[i]]);
			htm.push("</a></li>");
		}
		elems[j].innerHTML+=htm.join('');
	}
  },
  lokals: ["bialystok","bydgoszcz","czestochowa","gorzowwlkp","katowice","kielce","krakow","lodz","lublin","olsztyn","opole","plock","poznan","radom","rzeszow","szczecin","torun","trojmiasto","warszawa","wroclaw","zielonagora"],
  setLokal: function(lok, noCookie) {
	if (!Lokal.names[lok]) { return false; }
	var Lok=Lokal;
	var lokals=Lok.lokals;
	var names=Lok.names;
	var hrefs=Lok.hrefs;
	Lok.currLokal=lok;
	var elems=Element.getElementsByClassName(document, 'weatherBox');
	for (var j=0; j<elems.length; j++) {
		var e=elems[j];
		if (e.hasClassName(lok)) continue;
		Lok.updClassName(e,lok);
		new Ajax.Updater(e,'/aliasy/pogoda/zajMiasto.jsp' ,{insertion: Element.replace,asynchronous:true, method: 'get', parameters: 'm='+lok});
	}
	var elems=Element.getElementsByClassName(document, 'lokalNews');
	for (var j=0; j<elems.length; j++) {
		var e=elems[j];
		if (e.hasClassName(lok)) continue;
		Lok.updClassName(e,lok);
		var d = new Date();
		new Ajax.Updater(e,'/aliasy/lokal/'+lok+'.htm?t='+d ,{insertion: Element.replace,asynchronous:true, method: 'get', onComplete: new Function ('if (MovableFactory) MovableFactory.reload(); Utils.processDt("when", 59, true, "DMY", "'+e.id+'");') });
	}
	var elems=Element.getElementsByClassName(document,"miasto");
	for (var j=0; j<elems.length; j++) {
		var e=elems[j];
		if (e.href) {
			e.innerHTML=names[lok];
			e.href=hrefs[lok];
		} else if (e.childNodes[0] && e.childNodes[0].href) {
			e.childNodes[0].innerHTML=names[lok];
			e.childNodes[0].href=hrefs[lok];
		} else if (e.parentNode.href) {
			e.innerHTML=names[lok];
			e.parentNode.href=hrefs[lok];
		}
	}
	
	if (! noCookie) createCookie("lok", lok, 3600,0, "gazeta.pl");
	
	var elems=Element.getElementsByClassName(document, 'lokalSel');
	for (var j=0; j<elems.length; j++) {
		var e=elems[j];
		if (!e.options) return;
		for (var i=0; i<lokals.length; i++) {
			if (Lok.currLokal==lokals[i]) {
				e.selectedIndex=i; 
			}
		}
	}
  },
  initialize: function() {
	var lok=readCookie("lok");
	Lokal.initSelectors();
	Lokal.initNav();
	Lokal.setLokal(lok ? lok : Lokal.currLokal, true);
  }
}

//Event.observe(window,"load",Lokal.initialize);
Event.observe(window,"load",function(){setTimeout(Lokal.initialize,10);} );

