var kat = 0;
var jezyk ="pl";

var restauracjaFormController = {
    blednePola : [],
    bUkrywanieFormularzy            : false,
    bLadowanieFormularzaRezerwacji  : false,
    kuponKod : null,
    kuponHash : null,
    zaproszenieKod : null,
    zaproszenieHash : null,
    
    
    rezerwuj : function()
    {
		this.zaprosZnajomych();
        if(this.bUkrywanieFormularzy) {
            return;
        }
        new Effect.BlindUp('przyciski', {scaleTo:5});
        new Effect.BlindUp('noclegi', {scaleTo:5});
        new Effect.BlindDown('formularzRezerwacja', {scaleFrom : 5});
    },
    
    kupon : function(){
        if(this.bUkrywanieFormularzy) {
            return;
        }
        new Effect.BlindUp('przyciski');
        new Effect.BlindDown('formularzKupon');
    },
    
    zaproszenie : function(){
        if(this.bUkrywanieFormularzy) {
            return;
        }
        new Effect.BlindUp('przyciski');
        new Effect.BlindDown('formularzZaproszenia');
    },
    
    rezerwacjaSubmit : function() {
        xajax_rezerwuj(xajax.getFormValues('formRezerwacjaRestauracji'));
    },
    
    rezerwacjaOK : function() {
        xajax_klikOK(xajax.getFormValues('formRezerwacjaRestauracji'));
    },
    
    rezerwacjaZapamietaj : function() {
        xajax_zapamietaj_mnie(xajax.getFormValues('formRezerwacjaRestauracji'));
    },
    
    ukryjFormularze : function() {
        if(this.bUkrywanieFormularzy) {
            return;
        }
        if(!$('noclegi').visible()) {
            new Effect.BlindDown('noclegi');
        }
        new Effect.BlindDown('przyciski');
        this.ukryjFormularzRezerwacji();
        this.ukryjFormularzKuponu();
        this.ukryjLinkDoKuponu();
        this.ukryjFormularzZaproszenia();
        this.ukryjLinkDoZaproszenia();
        new Effect.BlindUp('zapamietaj_mnie');
        $('zalogowanyInput').value = '0';
        document.getElementById('telefon_kierunkowy_glowny').value = '48';
		document.getElementById('telefon_kierunkowy_glowny').type = 'text';
        
    },
    
    
    zaprosZnajomych : function(){
    	
    	if($('zapros').checked)
    	{
    		if($('zalogowanyInput').value == '0')
    		{
    			var poleSelect = '';
	    		var text = '';
	    		for(i = 1; i < $('liczbaOsob').value; i++)
	    		{
	    			poleSelect = '<strong style="font-size: 150%;">+</strong><input type="text" size="3" maxlength="4" name="tel_kraj[]" value="48" onkeyup="this.value = this.value.replace(\/[^\\d]*\/ig, \'\');xajax_sprawdz_kraj_sms(this.value, \'nazwa_kraju_sms_'+i+'\');" />';
		    		
	    			text = text+' <b>'+$('tlumacz_imie').innerHTML+'</b>: <input type="text" style="width: 70px;" name="name[]" id="name'+i+'Input">&nbsp;&nbsp;<b>'+$('tlumacz_email').innerHTML+'</b>: <input type="text" style="width: 100px;" name="email[]" id="email'+i+'Input">&nbsp;&nbsp;<b>'+$('tlumacz_telefon').innerHTML+'</b>: '+poleSelect+'<input type="text" name="telefonKom[]" onkeyup="this.value = this.value.replace(\/[^\\d]*\/ig, \'\');" size="9"><br /><div id="nazwa_kraju_sms_'+i+'"></div>';
	    		}
	    		
	    		$('znajomi').innerHTML = text;
	    		new Effect.SlideDown('znajomi');
    		}
    		else
    		{
    			var wybrane = [];
    			var wybrane_tel = [];
    			var wybrane_nicki = []
    			for(i=1;$('email'+i+'Input') != null;i++)
    			{
    				if($('email'+i+'Input').value != -1)
    				{
    					wybrane.push($('email'+i+'Input').value);
    					
    					if($('telefon'+i+'Input') == null)
    						wybrane_tel.push('');
    					else
    						wybrane_tel.push($('telefon'+i+'Input').value);
    					
    					if($('name'+i+'Input') == null) {
    						wybrane_nicki.push('');
    					} else {
    						wybrane_nicki.push($('name'+i+'Input').value);
    					}
    				}
    			}
    			xajax_zaprosZnajomychZalogowany($('email0Input').value, wybrane, $('liczbaOsob').value, wybrane_tel, wybrane_nicki);
    			
    		}
    	}
    	else
    	{	
    			new Effect.BlindDown('znajomi');	
    		setTimeout("document.getElementById('znajomi').innerHTML = '';", 300);	
    	}	
    },
    
    usun_pole :function(ktore)
    {
    	if(document.getElementById('znajomi_dodaj') != null)
    	{
    		new Effect.SlideUp('znajomi_dodaj');
    	}
    	setTimeout("document.getElementById('email"+ktore+"Input').value = '-1';", 399);
    	setTimeout("restauracjaFormController.zaprosZnajomych();", 400);
    },
    
    zmienLiczbeOsob : function(me){
    	this.zaprosZnajomych();
    	if(me.value != 1)
    	{ 
    		new Effect.BlindDown('zapros_tr'); 
    		new Effect.BlindDown('zapros_tr_2');
    	} 
    	else
    	{ 
    		new Effect.BlindUp('zapros_tr'); 
    		new Effect.BlindUp('zapros_tr_2'); 
    	}
    },
    
    
    
    klikMenu : function(){
    	$('pozycje_menu').style.color='#faf7f7';
    	new Effect.SlideUp('pozycje_menu', '');
    	window.setTimeout("$('pozycje_menu').style.color='#390000'",1100);
    	window.setTimeout("new Effect.SlideDown('pozycje_menu', '')",1100);	
    },
        
    klikMenu_n : function(nowa_kat, jezykk){
    	kat = nowa_kat;
    	jezyk = jezykk;
    	jezyk_menu = jezykk;
    	new Effect.SlideUp('pozycje_menu_n_'+jezyk, {duration: 0.3});
    	setTimeout("for(i=0;i<20;i++){	if(document.getElementById('lista_'+i+'_'+jezyk) != null)	document.getElementById('lista_'+i+'_'+jezyk).style.display='none';if(document.getElementById('przycisk_'+i+'_'+jezyk) != null)	{document.getElementById('przycisk_'+i+'_'+jezyk).style.background='#f3eeee';document.getElementById('przycisk_'+i+'_'+jezyk).style.color='#700000';}}", 398);
    	setTimeout("document.getElementById('lista_'+kat+'_'+jezyk).style.display='block'",399);
    	setTimeout("document.getElementById('przycisk_'+kat+'_'+jezyk).style.background='#880000'",399);
    	setTimeout("document.getElementById('przycisk_'+kat+'_'+jezyk).style.color='#ffffff'",399);
    	setTimeout("new Effect.SlideDown('pozycje_menu_n_'+jezyk, {duration: 0.3, queue: 'end'})",400);
    	setTimeout("document.getElementById('pozycje_menu_n_'+jezyk).style.overflow='auto'",800);
    },
    
    ukryjFormularzRezerwacji : function() {
        if($('formularzRezerwacja').visible()) {
            this.bUkrywanieFormularzy = true;
            new Effect.SlideUp('polehasla');
            new Effect.BlindUp('formularzRezerwacja',
                                {
                                    afterFinish : function() {
                                            restauracjaFormController.ukryjKomunikatyRezerwacji();
                                            restauracjaFormController.odznaczBlednePola();
                                            $('formRezerwacjaRestauracji').reset();
                                            restauracjaFormController.bUkrywanieFormularzy = false;
                                    }
                                }
                               );
        }
    },
    
    ukryjFormularzKuponu : function() {
        if($('formularzKupon').visible()) {
            this.bUkrywanieFormularzy = true;
            
            new Effect.BlindUp('formularzKupon',
                                {
                                    afterFinish : function() {
                                            restauracjaFormController.ukryjKomunikatyKuponu();
                                            restauracjaFormController.bUkrywanieFormularzy = false;
                                            $('formKupon').reset();
                                    }
                                }
                               );
        }
        
    },
    
    ukryjFormularzZaproszenia : function() {
        if($('formularzZaproszenia').visible()) {
            this.bUkrywanieFormularzy = true;
            
            new Effect.BlindUp('formularzZaproszenia',
                                {
                                    afterFinish : function() {
                                            restauracjaFormController.ukryjKomunikatyZaproszenia();
                                            restauracjaFormController.bUkrywanieFormularzy = false;
                                            $('formZaproszenie').reset();
                                    }
                                }
                               );
        }
        
    },
    
    drukujKupon : function() {
        if(this.bUkrywanieFormularzy) {
            return;
        }
        xajax_zapiszKodRabatowy(xajax.getFormValues('formKupon'));
//        this.ukryjFormularze();
    },
    
    drukujZaproszenie : function() {
        if(this.bUkrywanieFormularzy) {
            return;
        }
        xajax_zapiszKodZaproszenia(xajax.getFormValues('formZaproszenie'));
//        this.ukryjFormularze();
    },
    
    oznaczBlednePola : function(aPola) {
        var i;
        for(i=0; i< this.blednePola.length; i++) {
            if(aPola.join().indexOf(this.blednePola[i]) < 0) {
                if($(this.blednePola[i])) {
                    new Effect.Highlight(this.blednePola[i], {startcolor   :'#dd0000', 
                                                              endcolor     : '#ffffff', 
                                                              restorecolor : '#ffffff', 
                                                              duration     : 0.5, 
                                                              queue        : {scope    : this.blednePola[i], 
                                                                              position : 'end'
                                                                             }
                                                              }
                                         );
                }
            }
        }
        for(i=0; i< aPola.length; i++) {
            if($(aPola[i])) {
                if(this.blednePola.join().indexOf(aPola[i]) < 0) {
                    new Effect.Highlight(aPola[i], {duration : 0.5, 
                                                    startcolor   : '#ffffff', 
                                                    endcolor     : '#dd0000', 
                                                    restorecolor : '#dd0000', 
                                                    queue        : {scope       : aPola[i], 
                                                                    position    : 'end'}});
                }
            }
        }
        
        this.blednePola = aPola;

        
    },
    
    odznaczBlednePola : function() {
        this.oznaczBlednePola([]);
    },
    
    pokazKomunikatyRezerwacji : function(delay) {
        if(!delay) {
            delay = 200;
        }
        if(!$('rezerwacjaErrorMessages').visible()) {
            setTimeout('new Effect.SlideDown(\'rezerwacjaErrorMessages\', {duration : 0.5});', delay);
        }
    },

    pokazKomunikatyKuponu : function(delay) {
        if(!delay) {
            delay = 200;
        }
        if(!$('kuponErrorMessages').visible()) {
            setTimeout('new Effect.SlideDown(\'kuponErrorMessages\', {duration : 0.5});', delay);
        }
    },
    
    pokazKomunikatyZaproszenia : function(delay) {
        if(!delay) {
            delay = 200;
        }
        if(!$('zaproszenieErrorMessages').visible()) {
            setTimeout('new Effect.SlideDown(\'zaproszenieErrorMessages\', {duration : 0.5});', delay);
        }
    },

    pokazLinkDoKuponu : function() {
        if(!$('kuponLink').visible()) {
            new Effect.BlindDown('kuponLink');
        }
    },
    
    ukryjLinkDoKuponu : function() {
        if($('kuponLink').visible()) {
            this.bUkrywanieFormularzy = true;
            new Effect.BlindUp('kuponLink', {
                                                afterFinish : function() {
                                                        restauracjaFormController.bUkrywanieFormularzy = false;
                                                        $('formKupon').reset();
                                                }
                                            });
        }
    },
    
    
    pokazLinkDoZaproszenia : function() {
        if(!$('zaproszenieLink').visible()) {
            new Effect.BlindDown('zaproszenieLink');
        }
    },
    
    ukryjLinkDoZaproszenia : function() {
        if($('zaproszenieLink').visible()) {
            this.bUkrywanieFormularzy = true;
            new Effect.BlindUp('zaproszenieLink', {
                                                afterFinish : function() {
                                                        restauracjaFormController.bUkrywanieFormularzy = false;
                                                        $('formZaproszenie').reset();
                                                }
                                            });
        }
    },
    
    
    
    
    ukryjKomunikatyRezerwacji : function() {
        if($('rezerwacjaErrorMessages').visible()) {
            new Effect.SlideUp('rezerwacjaErrorMessages', {duration: 0.5});
        }
    },
    
    ukryjKomunikatyKuponu : function() {
        if($('kuponErrorMessages').visible()) {
            new Effect.SlideUp('kuponErrorMessages', {duration: 0.5});
        }
    },
    
    ukryjKomunikatyZaproszenia : function() {
        if($('zaproszenieErrorMessages').visible()) {
            new Effect.SlideUp('zaproszenieErrorMessages', {duration: 0.5});
        }
    },
    
    wyswietlKomunikatyRezerwacji : function(content) {
        if($('rezerwacjaErrorMessages').visible()) {
            new Effect.SlideUp('rezerwacjaErrorMessages',   {duration: 0.2, 
                                                             queue : {scope : 'errors', 
                                                                      position : 'end'},
                                                             afterFinish : function() {
                                                                                        restauracjaFormController.wstawKomunikatyRezerwacji(content);
                                                                                        new Effect.SlideDown('rezerwacjaErrorMessages', 
                                                                                                             {duration: 0.2, 
                                                                                                              queue : {
                                                                                                                        scope : 'errors', 
                                                                                                                        position : 'end'
                                                                                                                      }
                                                                                                             }
                                                                                                             );
                                                                                      }
                                                             });
            
            
            
        } else {
            $('rezerwacjaErrorMessages').innerHTML = content;
            this.pokazKomunikatyRezerwacji();
        }     
    },
    
    wyswietlKomunikatyKuponu : function(content) {
        if($('kuponErrorMessages').visible()) {
            new Effect.SlideUp('kuponErrorMessages',   {duration: 0.2, 
                                                             queue : {scope : 'errors', 
                                                                      position : 'end'},
                                                             afterFinish : function() {
                                                                                        restauracjaFormController.wstawKomunikatyKuponu(content);
                                                                                        new Effect.SlideDown('kuponErrorMessages', 
                                                                                                             {duration: 0.2, 
                                                                                                              queue : {
                                                                                                                        scope : 'errors', 
                                                                                                                        position : 'end'
                                                                                                                      }
                                                                                                             }
                                                                                                             );
                                                                                      }
                                                             });
            
            
            
        } else {
            $('kuponErrorMessages').innerHTML = content;
            this.pokazKomunikatyKuponu();
        }     
    },
    
    wyswietlKomunikatyZaproszenia : function(content) {
        if($('zaproszenieErrorMessages').visible()) {
            new Effect.SlideUp('zaproszenieErrorMessages',   {duration: 0.2, 
                                                             queue : {scope : 'errors', 
                                                                      position : 'end'},
                                                             afterFinish : function() {
                                                                                        restauracjaFormController.wstawKomunikatyZaproszenia(content);
                                                                                        new Effect.SlideDown('zaproszenieErrorMessages', 
                                                                                                             {duration: 0.2, 
                                                                                                              queue : {
                                                                                                                        scope : 'errors', 
                                                                                                                        position : 'end'
                                                                                                                      }
                                                                                                             }
                                                                                                             );
                                                                                      }
                                                             });
            
            
            
        } else {
            $('zaproszenieErrorMessages').innerHTML = content;
            this.pokazKomunikatyZaproszenia();
        }     
    },
    
    wyswietlKomunikatOZarezerwowaniu : function(komunikat) {
        this.odznaczBlednePola();
        if($('rezerwacjaErrorMessages').visible()) {
            new Effect.SlideUp('rezerwacjaErrorMessages', 
                               {duration: 0.7, 
                                scaleMode : 'contents',
                                afterFinish : function(){
                                                    alert(komunikat);
                                                    restauracjaFormController.ukryjFormularze();
                                              }
                               }
                              );
        } else {
            alert(komunikat);
            this.ukryjFormularze();
        }
        
    },
    
    wyswietlLinkDoKuponu : function(kod, hash, lang) {
        this.kuponKod  = kod;
        this.kuponHash = hash;
        this.kuponLang = lang;
        var sHref = 'restauracjeDrukujKupon.php?kod='+this.kuponKod+'&lang='+this.kuponLang;
        $('aKuponLink').href=encodeURI(sHref);
        $('btnZamknijLinkDoKuponu').disabled = false;
        this.pokazLinkDoKuponu();
//        alert('kod rabatowy: '+kod+', hash:'+hash);
    },
    
    wyswietlLinkDoZaproszenia : function(kod, hash, lang) {
        this.zaproszenieKod  = kod;
        this.zaproszenieHash = hash;
        this.zaproszenieLang = lang;
        var sHref = 'restauracjeDrukujZaproszenie.php?kod='+this.zaproszenieKod+'&lang='+this.zaproszenieLang;
        $('aZaproszenieLink').href=encodeURI(sHref);
        $('btnZamknijLinkDoZaproszenia').disabled = false;
        this.pokazLinkDoZaproszenia();
//        alert('kod rabatowy: '+kod+', hash:'+hash);
    },
    
    
    wstawKomunikatyRezerwacji : function(content) {
        $('rezerwacjaErrorMessages').innerHTML = content;
    },
    
    wstawKomunikatyKuponu : function(content) {
        $('kuponErrorMessages').innerHTML = content;
    },
    
    wstawKomunikatyZaproszenia : function(content) {
        $('zaproszenieErrorMessages').innerHTML = content;
    }
    
}

var popupController = {
    popupWindow : null,
    showMap : function(restauracjaId, lang) {
        if(!this.popupWindow || (this.popupWindow && this.popupWindow.closed)) {
            this.popupWindow = window.open("gmapka.php?idr="+restauracjaId+"&lang="+lang, "popUp","toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=yes,copyhistory=no,width=620,height=505,screenX=150,screenY=150,top=50,left=50");
        }
        this.popupWindow.focus();
    }
    
}


function dymek_res(id, ocena)
{
	var tresc = '	<div>';
		
	if(ocena > 1) tresc += '<div style="position:absolute; right: 7px; top: 7px;"><img class="gwiazdki_img" src="grafika/restauracje/gwiazdki/index.php?s='+ocena+'"></div>';
	
	tresc += '<img src="grafika/restauracje/'+id+'/prawa-kolumna/tn/1.jpg" width="120" /></div>';
	return overlib(tresc,
          BGCOLOR,'#800000',
          FGCOLOR,'#800000',
          TEXTCOLOR,'#ffffff',
          HAUTO,
          WIDTH, 120);
}


function wywolaj_zmiane_minut()
{
	var godzina = this.value;
	xajax_zmien_minuty(xajax.getFormValues('formRezerwacjaRestauracji'), godzina);
}

function addGodzinyNaKiedy(odGodziny, doGodziny, rid) 
{
	if(odGodziny >= doGodziny)
	{
		doGodziny = doGodziny+24;
	}
	var select = $('na_kiedy_godz');
		select.innerHTML = "";
	
	for (var i = odGodziny; i <= doGodziny-1; ++i) {
		var option = document.createElement("option");
		option.value = i;
		if(doGodziny > 24 && i > 24)
		{
			option.innerHTML = i-24;
		}
		else
		{
			option.innerHTML = i;
		}
		
		
		if(i > doGodziny-2) {
			if(option.attachEvent) {
				option.attachEvent("onclick", wywolaj_zmiane_minut);
			} else {
				option.addEventListener("click", wywolaj_zmiane_minut, false);
			}
		}
		
		select.appendChild(option);
	}
}

function init_dw_Scroll(lang) {
    var wndo = new dw_scrollObj('wn'+lang, 'lyr1'+lang);
    wndo.setUpScrollbar("dragBar", "track", "v", 1, 1);
    wndo.setUpScrollControls('scrollbar');
}

function scroll_init(lang)
{
	if ( dw_scrollObj.isSupported() ) {
	    dw_writeStyleSheet('style/res_scrollbar.css')
	   // dw_Event.add( window, 'load', init_dw_Scroll);
	    init_dw_Scroll(lang);
	}
}

function overlib_res(tekst) {
	overlib(tekst,
	          BGCOLOR,'#700000',
	          FGCOLOR,'#ffffff',
	          TEXTCOLOR,'#700000'
	          );
}

