// JavaScript Document

// manadżer obrazków (imanager)
function imanager(editor_id,podglad_id,sid){
 window.open('./moduly/edytor/plugins/imanager/imanager.php?mode=3&src_input='+editor_id+'&podglad_id='+podglad_id,'_blank','width=660,height=480,status=no,location=no,resizable=yes');
}
// ZABEZPIECZYĆ!!!!!!!!!!
function ajaxfilemanager(field_name, url, type, win) {
			var domena = document.domain;
			var ajaxfilemanagerurl = "http://"+domena+"/admin/moduly/edytor/plugins/ajaxfilemanager/ajaxfilemanager.php";
			switch (type) {
				case "image":
					ajaxfilemanagerurl += "?type=img";
					break;
				case "media":
					ajaxfilemanagerurl += "?type=media";
					break;
				case "flash": //for older versions of tinymce
					ajaxfilemanagerurl += "?type=media";
					break;
				case "file":
					ajaxfilemanagerurl += "?type=files";
					break;
				default:
					return false;
			}
			var fileBrowserWindow = new Array();
			fileBrowserWindow["file"] = ajaxfilemanagerurl;
			fileBrowserWindow["title"] = "Zarządzanie plikami";
			fileBrowserWindow["width"] = "782";
			fileBrowserWindow["height"] = "440";
			fileBrowserWindow["close_previous"] = "no";
			tinyMCE.openWindow(fileBrowserWindow, {
			  window : win,
			  input : field_name,
			  resizable : "yes",
			  inline : "yes",
			  editor_id : tinyMCE.getWindowArg("editor_id")
			});
			
			return false;
		}

// USTAWIANIE POPRAWNEJ WERSJI DOM
function ustawDOM(idname){
	if (document.getElementById)
		{ return document.getElementById(idname); }
	else if (document.all) 
		{ return document.all[idname]; }
	else if (document.layers)
		{ return document.layers[idname]; }
	else
		{ return null; }
}
function navi(){
		dom_source = new ustawDOM('navi_temp');
		dom_dest = new ustawDOM('paging');
		dom_dest.innerHTML = dom_source.value;
}
/*
	Generowanie unikalnego ID
*/
function getRandomNumber(range){
	return Math.floor(Math.random() * range);
}

function getRandomChar(){
	var chars = "0123456789abcdefghijklmnopqurstuvwxyzABCDEFGHIJKLMNOPQURSTUVWXYZ";
	return chars.substr( getRandomNumber(62), 1 );
}

function randomID(size){
	var str = "";
	for(var i = 0; i < size; i++)
	{
		str += getRandomChar();
	}
	return str;
}
/*
	Odczytaj cookie klienta
*/
function get_cookie(Name) {
	var search = Name + "="
	var returnvalue = "";
	if (document.cookie.length > 0) {
		offset = document.cookie.indexOf(search)
			if (offset != -1) {
				offset += search.length
				end = document.cookie.indexOf(";", offset);
			if (end == -1) end = document.cookie.length;
			returnvalue=unescape(document.cookie.substring(offset, end))
			}
	}
	return returnvalue;
}

/*
 Sets all checkboxes, radio buttons or selects in a given form to a given state, with exceptions

 @param	object	Form object
 @param	string	Target element type (one of 'radio', 'select-one', 'checkbox')
 @param	string	Selected option in case of 'radio'
 @param	array	Array of element names to be excluded
 @param	mixed	Value to give to found elements
*/
function js_toggle_all(formobj, formtype, option, exclude, setto)
{
	for (var i =0; i < formobj.elements.length; i++)
	{
		var elm = formobj.elements[i];
		if (elm.type == formtype && PHP.in_array(elm.name, exclude, false) == -1)
		{
			switch (formtype)
			{
				case 'radio':
					if (elm.value == option) 
					{
						elm.checked = setto;
					}
				break;
				case 'select-one':
					elm.selectedIndex = setto;
				break;
				default:
					elm.checked = setto;
				break;
			}
		}
	}
}


/*
	Pokaż / Ukryj elementy (table, div)
*/
function wyswietlanie_div(tabelka, eff){
var v = 0;
var div_id = tabelka;
var dom = new ustawDOM(tabelka);
		if( (Element.getStyle(tabelka, 'display') == 'block') && (v == 0) ){
			new Effect.BlindUp(tabelka)
			document.cookie=div_id+"= none";
			var v = 1;
		}

		else if( (Element.getStyle(tabelka, 'display') == 'none') && (v == 0) ){
			new Effect.BlindDown(tabelka);
						document.cookie=div_id+"= block";
			var v = 1;
		}
//new Ajax.Updater('', 'inc/a_menu_sesje.php', {asynchronous:true});
}

function tree_chowaj(ID){
var dom = new ustawDOM(ID);
    var styleObject;
    styleObject = getStyleById(ID);
		if(styleObject.display == 'block'){
			styleObject.display = "none";
		}
		else if(styleObject.display == 'none'){
			styleObject.display = "block";
		}
}

function lang_sw(lang){
var dom = new ustawDOM('tmp_lang');
dom.lang.value = lang;
dom.submit();
}
/*
	Pobież styl dla danego objektu
*/
function getStyleById(idName){
    if (document.getElementById){
       return document.getElementById( idName ).style;
   }
   else if (document[idName]){
      return (document[idName]) ? document[idName] : null;
   }
   else if (document.all){
        return document.all[idName].style;
    }
}
/*
	Dzień tygodnia PL
*/
function dzien() {
	teraz = new Date(); 
	teraz = teraz.getDay();
	if (teraz==0) document.write("Niedziela") ;
	if (teraz==1) document.write("Poniedziałek") ;
	if (teraz==2) document.write("Wtorek") ;
	if (teraz==3) document.write("Środa") ;
	if (teraz==4) document.write("Czwartek") ;
	if (teraz==5) document.write("Piątek") ;
	if (teraz==6) document.write("Sobota") ;
}
/*
	Data
*/
function data() {
	dzisiaj = new Date(); 
	miesiac = dzisiaj.getMonth()+1 ;
	dzien = dzisiaj.getDate() ;
	if (dzien<10) dzien="0"+dzien; 
	if (miesiac<10) miesiac="0"+miesiac; 
	document.write(dzien+"-"+miesiac+"-"+dzisiaj.getYear()) ;
}
window.onmousedown = rightClick;
document.onmousedown = rightClick;
/*
	Blokuj prawy klawisz myszy
*/
function rightClick(e) {
  //if ((document.layers && e.which == 3) || (document.all && event.button==2)) { alert("Secure site !!!"); return false; }
return true;
}

var marked_row = new Array;

function setPointer(theRow, theRowNum, theAction, theDefaultColor, thePointerColor, theMarkColor)
{
    var theCells = null;
    if ((thePointerColor == '' && theMarkColor == '')
        || typeof(theRow.style) == 'undefined') {
        return false;
    }
    if (typeof(document.getElementsByTagName) != 'undefined') {
        theCells = theRow.getElementsByTagName('td');
    }
    else if (typeof(theRow.cells) != 'undefined') {
        theCells = theRow.cells;
    }
    else {
        return false;
    }
    var rowCellsCnt  = theCells.length;
    var domDetect    = null;
    var currentColor = null;
    var newColor     = null;
    if (typeof(window.opera) == 'undefined'
        && typeof(theCells[0].getAttribute) != 'undefined') {
        currentColor = theCells[0].getAttribute('bgcolor');
        domDetect    = true;
    }
    else {
        currentColor = theCells[0].style.backgroundColor;
        domDetect    = false;
    }
    if (currentColor.indexOf("rgb") >= 0) 
    {
        var rgbStr = currentColor.slice(currentColor.indexOf('(') + 1,
                                     currentColor.indexOf(')'));
        var rgbValues = rgbStr.split(",");
        currentColor = "#";
        var hexChars = "0123456789ABCDEF";
        for (var i = 0; i < 3; i++)
        {
            var v = rgbValues[i].valueOf();
            currentColor += hexChars.charAt(v/16) + hexChars.charAt(v%16);
        }
    }
    if (currentColor == ''
        || currentColor.toLowerCase() == theDefaultColor.toLowerCase()) {
        if (theAction == 'over' && thePointerColor != '') {
            newColor              = thePointerColor;
        }
        else if (theAction == 'click' && theMarkColor != '') {
            newColor              = theMarkColor;
            marked_row[theRowNum] = true;
        }
    }
    else if (currentColor.toLowerCase() == thePointerColor.toLowerCase()
             && (typeof(marked_row[theRowNum]) == 'undefined' || !marked_row[theRowNum])) {
        if (theAction == 'out') {
            newColor              = theDefaultColor;
        }
        else if (theAction == 'click' && theMarkColor != '') {
            newColor              = theMarkColor;
            marked_row[theRowNum] = true;
        }
    }
    else if (currentColor.toLowerCase() == theMarkColor.toLowerCase()) {
        if (theAction == 'click') {
            newColor              = (thePointerColor != '')
                                  ? thePointerColor
                                  : theDefaultColor;
            marked_row[theRowNum] = (typeof(marked_row[theRowNum]) == 'undefined' || !marked_row[theRowNum])
                                  ? true
                                  : null;
        }
    }
    if (newColor) {
        var c = null;
        if (domDetect) {
            for (c = 0; c < rowCellsCnt; c++) {
                theCells[c].setAttribute('bgcolor', newColor, 0);
            }
        }
        else {
            for (c = 0; c < rowCellsCnt; c++) {
                theCells[c].style.backgroundColor = newColor;
            }
        }
    }

    return true;
}
/*
	Powiększ pole TEXTAREA
*/
function powieksz(id){
	var textarea = ustawDOM(id);
	var newrows = parseInt(textarea.style.height.replace('px', ''))+50;
	if (newrows >= 50)
	{
		textarea.style.height = newrows+'px';
	}
	return false;
}
/*
	Zmniejsz pole TEXTAREA
*/

function zmniejsz(id){
	var textarea = ustawDOM(id);
	var newrows = parseInt(textarea.style.height.replace('px', ''))-50;
	if (newrows >= 5)
	{
		textarea.style.height = newrows+'px';
	}
}
/*
	Licznik znaków
*/
function licznik_znakow(co,gdzie,text,ile_znakow) {
  var coObj = ustawDOM(co);
  var gdzieObj = ustawDOM(gdzie);
  var longitud = ile_znakow - coObj.value.length;
    texto = '<span class="small-text"> '+text+' </span>';
    coObj.value=coObj.value.substr(0,ile_znakow);
  gdzieObj.innerHTML = texto.replace("{CHAR}",longitud);
}


/* 
	timeot sesji
*/
function countdown_clock(Target_Date, Todays_Date)
         {
         html_code = '<span id="countdown"></span>';
         document.write(html_code);
         countdown(Target_Date, Todays_Date);                
         }
/*
	Odliczanie czasu
*/
function countdown(Target_Date, Todays_Date)
         {
		 var dom = new ustawDOM('countdown')
         Time_Left = Math.round(Target_Date - Todays_Date);
         
         if(Time_Left < 0)
            Time_Left = 0;
         
                    days = Math.floor(Time_Left / (60 * 60 * 24));
                    Time_Left %= (60 * 60 * 24);
                    hours = Math.floor(Time_Left / (60 * 60));
                    Time_Left %= (60 * 60);
                    minutes = Math.floor(Time_Left / 60);
                    Time_Left %= 60;
                    seconds = Time_Left;
					if( (minutes == '0') && (seconds == '0') ){
						alert("Wykryto brak aktywności. Sesja została zakończona. Wymagane jest ponowne zalogowanie!");
						window.location.replace('index.php');
					}
					else{
			         setTimeout('countdown(' + Math.floor(Target_Date - 0.6) + ',' + Todays_Date + ');', 1000);
					}
         }
		 
/*
	Wyloguj
*/
function logout(){
var dom = new ustawDOM('logout_form')	
	if ( confirm("Uwaga!!! Czy na pewno chcesz się wylogować?.") ) {
		dom.submit() ;
	}
}
/*
	Generator haseł
*/
function generator(pole) {
	var dom = new ustawDOM(pole);
    var dlugosc=8;
    var haslo = "";
    for (i=0; i < dlugosc; i++) {
        znak = RandZnak();
     while (sprawdz(znak)) { znak = RandZnak(); } 
        haslo = haslo + String.fromCharCode(znak);
    }
    dom.value = haslo
    return true;
}
/*
	Losowy znak - do generatora haseł
*/
function RandZnak() {
    var rndZnak = Math.random()
    rndZnak = parseInt(rndZnak * 1000);
    rndZnak = (rndZnak % 94) + 33;
    return rndZnak;
}
function sprawdz(znak) {
    if ((znak >=33) && (znak <=47)) { return true; }
    if ((znak >=58) && (znak <=64)) { return true; }
    if ((znak >=91) && (znak <=96)) { return true; }
    if ((znak >=123) && (znak <=126)) { return true; }
    return false;
}
function findPos(obj) {
	var curleft = curtop = 0;
	if (obj.offsetParent) {
		curleft = obj.offsetLeft
		curtop = obj.offsetTop
		while (obj = obj.offsetParent) {
			curleft += obj.offsetLeft
			curtop += obj.offsetTop
		}
	}
	return [curleft,curtop];
}
function helpView(id,typ,stan)
{
	if(typ=='s')
	{
		var obiekt = ustawDOM(id);
		if(obiekt)
		{
			if(stan==1)
				{obiekt.style.display='';}
			else
				{obiekt.style.display='none';}
		}
	}
	else if(typ=='m')
	{
		var obiekt = ustawDOM(id);
		if(obiekt)
		{
			document.onmousemove=function(e)
			{
				var obW = obiekt.offsetWidth;
				var obH = obiekt.offsetHeight;
				if (parseInt(navigator.appVersion)>3)
				{
					if (navigator.appName=="Netscape")
					{
					  var winW = window.innerWidth;
					  var winH = window.innerHeight;
					}
					if (navigator.appName.indexOf("Microsoft")!=-1)
					{
					  var winW = document.body.offsetWidth;
					  var winH = document.body.offsetHeight;
					 }
				}
				
				if(stan==1)
					{obiekt.style.display='';}
				else
					{obiekt.style.display='none';}
					
				var Y=(e=e||event).clientY;
				var X=(e=e||event).clientX;	
				if((X+obW)>(winW-20))
				{
					var newX=(X+obW)-(winW-20);
					X = X-newX;
				}
				
				obiekt.style.top=(Y+10)+'px';
				obiekt.style.left=X+'px';
			}
		}
	}
}
function INFO(tekst,stan,kolor)
{
	/*
	tekst - dowolny tekst
	stan - 0 -> schowaj diva ; 1 -> pokaż diva ; powyżej wartości 1 -> wyświetla diva przez 'stan' sekund
	kolor - kolor obramowania i kolor tekstu ; dodatkowo zdefinowane zostały stany = 
		BLAD => czerony tekst i obramowanie , jasno czerwone tło
		OK => zielony tekst i obramowanie , jasno zielone tło
		UWAGA => żułte obramowanie; czarna czcinka , jasnożułte tło
		LOAD =>  białe tło; nieieskie napisy i obramowanie; animacja ładowania 
	*/
	var szer_dok=document.documentElement.clientWidth;
	var wys_dok=document.documentElement.clientHeight;
	var skroll_dok=document.documentElement.scrollTop;
	var obiekt = ustawDOM('INFO');
	var MAIN_TABLE = ustawDOM('MAIN_TABLE');
	
	
	var szer_info = obiekt.offsetWidth;
	var wys_info = obiekt.offsetHeight;
	
	var MAIN_TABLEheight=MAIN_TABLE.offsetHeight
	
	
	
	if(szer_info==0)
		{var szer_info=350;}
	if(wys_info==0)	
		{var wys_info=50;}
	
	var poz_pozioma=(szer_dok/2)-(szer_info/2)+100;
	var poz_pionowa=(MAIN_TABLEheight/2)-(wys_info/2)+skroll_dok;
	
	if(kolor=='BLAD')
	{
		obiekt.style.border="#FF0000 solid 1px ";
		obiekt.style.color="#FF0000";
		obiekt.style.backgroundColor="#FFE1E1";
	}
	else if(kolor=='OK')
	{
		obiekt.style.border="#005E00 solid 1px ";
		obiekt.style.color="#005E00";
		obiekt.style.backgroundColor="#DFFFDF";
	}
	else if(kolor=='UWAGA')
	{
		obiekt.style.border="#8C8C00 solid 1px ";
		obiekt.style.color="#232323";
		obiekt.style.backgroundColor="#FFFFDF";
	}
	else if(kolor=='LOAD')
	{
		obiekt.style.border="#003482 solid 1px ";
		obiekt.style.color="#003482";
		obiekt.style.backgroundColor="#FFFFFF";
	}
	else
	{
		obiekt.style.border=kolor+" solid 1px ";
		obiekt.style.color=kolor;
		obiekt.style.backgroundColor="#EAEAEA";
	}
	
	if(kolor=='LOAD')	
		{obiekt.innerHTML='<img src="'+wwwDir+'/admin/pics/loading2.gif" /><br>'+tekst;}
	else
		{obiekt.innerHTML=tekst;}
	
	if(stan==0)
	{
		obiekt.style.display='none';
		obiekt.innerHTML='';
	}
	if(stan==1)
	{
		obiekt.style.top=poz_pionowa+"px";
		obiekt.style.left=poz_pozioma+"px";	
		obiekt.style.display='';
	}
	if(stan>1)
	{
		obiekt.style.top=poz_pionowa+"px";
		obiekt.style.left=poz_pozioma+"px";	
		obiekt.style.display='';
			
		var czas=parseInt(stan)*1000;
		setTimeout("INFO('','0','')",czas);
	}
}

function fetch_tags(parentobj, tag)
{
	if (parentobj == null)
	{
		return new Array();
	}
	else if (typeof parentobj.getElementsByTagName != 'undefined')
	{
		return parentobj.getElementsByTagName(tag);
	}
	else if (parentobj.all && parentobj.all.tags)
	{
		return parentobj.all.tags(tag);
	}
	else
	{
		return new Array();
	}
}
function fetch_object(idname)
{
	if (document.getElementById)
	{
		return document.getElementById(idname);
	}
	else if (document.all)
	{
		return document.all[idname];
	}
	else if (document.layers)
	{
		return document.layers[idname];
	}
	else
	{
		return null;
	}
}
/// funkcja walidująca formularze
function validacja_forms(cel,typ)
{
	if($(cel))
	{ 
		var wartosc = $(cel).value;
		
		if(wartosc == '')
		{
			$(cel).className="validacja_false";
			return false;
		}
		else
		{
			$(cel).className="validacja_true";
			return true;	
		}
	}
}


function wybierz_formularz(pole)
{
	wartosc = pole.value;
	if(wartosc == 1)
	{
		$('klient').hide();
		$('loader').show();
		setTimeout("$('loader').hide()",500); 
		setTimeout("$('nowy_klient').show()",500); 
		
	}
	else
	{
		$('nowy_klient').hide();
		$('loader').show();
		setTimeout("$('loader').hide()",500); 
		setTimeout("$('klient').show()",500); 
	}
}
function wyczysc_pola(gdzie)
{
	var arr = $$('div#'+gdzie+' input');
		for (var index = 0, len = arr.length; index < len; ++index) {
  			arr[index].value = "";
			arr[index].removeClassName('validacja_false');
			arr[index].removeClassName('validacja_true');
			}
	arr = $$('div#'+gdzie+' textarea');
		for (var index = 0, len = arr.length; index < len; ++index) {
  			arr[index].value = "";
			arr[index].removeClassName('validacja_false');
			arr[index].removeClassName('validacja_true');
			}
	arr = $$('div#'+gdzie+' select');
		for (var index = 0, len = arr.length; index < len; ++index) {
  			arr[index].value = 0;}
	
}
function wyslij_formularz()
{
	var blad=false;
	if ($('jaki_klient').value == 1)
	{
		if(!validacja_forms('nazwa1','')){ blad=true; }
		if(!validacja_forms('miejscowosc1','')){ blad=true; }
		if(!validacja_forms('ulica1','')){ blad=true; }
		if(!validacja_forms('nr_domu1','')){ blad=true; }
		if(!validacja_forms('osoba_zglaszajaca1','')){ blad=true; }
		if(!validacja_forms('telefon1','')){ blad=true; }
		
		if(!blad)
			$('zgloszenie').submit();
		else
			alert('Nie wszystkie wymagane pola zostały uzupełnione'); 
	}
	else
	{
		if(!validacja_forms('nazwa2','')){ blad=true; }
		if(!validacja_forms('nip2','')){ blad=true; }
		if(!validacja_forms('osoba_zglaszajaca2','')){ blad=true; }
		if(!validacja_forms('telefon2','')){ blad=true; }
		
		if(!blad)
			$('zgloszenie').submit();
		else
			alert('Nie wszystkie wymagane pola zostały uzupełnione'); 
	}
}

function wyslij_formularz_promocja()
{
	var blad=false;
	
	if(!validacja_forms('nazwa','')){ blad=true; }
	if(!validacja_forms('miejscowosc','')){ blad=true; }
	if(!validacja_forms('ulica','')){ blad=true; }
	if(!validacja_forms('nr_domu','')){ blad=true; }
	if(!validacja_forms('nip','')){ blad=true; }
	if(!validacja_forms('osoba_zglaszajaca','')){ blad=true; }
	if(!validacja_forms('telefon','')){ blad=true; }
	if(!validacja_forms('email','')){ blad=true; }
	
	if(!blad)
		$('formularz_promocja').submit();
	else
		alert('Nie wszystkie wymagane pola zostały uzupełnione'); 
	
}
