
// reads url parameters in the form of ?variable1=mama, is called directly on load to make variable global!!!
DOM = (document.getElementById) ? 1 : 0;
NS4 = (document.layers) ? 1 : 0;
IE4 = (document.all) ? 1 : 0;
var loaded = 0;	// to avoid stupid errors of Microsoft browsers
Konqueror = (navigator.userAgent.indexOf("Konqueror") > -1) ? 1 : 0;
// We need to explicitly detect Konqueror
// because Konqueror 3 sets IE4 = 1 ... AAAAAAAAAARGHHH!!!
Opera5 = (navigator.userAgent.indexOf("Opera 5") > -1 || navigator.userAgent.indexOf("Opera/5") > -1 || navigator.userAgent.indexOf("Opera 6") > -1 || navigator.userAgent.indexOf("Opera/6") > -1) ? 1 : 0;
NS=(navigator.userAgent.indexOf("Netscape") > -1 ) ? 1 : 0;
var active=0;

pageImg = new Array("menuArrow","arrow");

preload(pageImg,"images");
preload(menuImg,"imgLib");

browser('<link rel="Stylesheet" href="form.css" type="text/css">','<link rel="Stylesheet" href="formNS.css" type="text/css">');


function popUp(menuName,on) {

if (loaded) {	// to avoid stupid errors of Microsoft browsers
	if (on && active!=menuName) {
		if (DOM) {
			document.getElementById(menuName).style.visibility = "visible";
		} else if (NS4) {
			document.layers[menuName].visibility = "show";
		} else {
			
			document.all[menuName].style.visibility = "visible";
			}
		active=menuName;
	} else if (active==menuName || menuName=='flash') {
		if (DOM) {
			document.getElementById(menuName).style.visibility = "hidden";
		} else if (NS4) {
			document.layers[menuName].visibility = "hide";
		} else {
			document.all[menuName].style.visibility = "hidden";
			}
		active=0;
		}
	}
}
function getLayer(name) {
  // Returns a handle to the named layer.
  if (document.layers)
    return(document.layers[name]);
  else if (document.all) {
    layer = eval('document.all.' + name + '.style');
    return(layer);
  }
  else
    return(null);
}

function browser(ie,ns) {
	 if(document.layers) {
		document.write(ns);
	} else if(document.all)
		document.write(ie);
	else
		document.write(ie); 
}

function openWindow(file,name,width,height) {
	t=window.open(file,name, 'toolbar=no,menubar=no,scrollbars=auto, resizable=no,status=no,location=no,directories=no,top=60, left=100,width='+width+',height='+height+'');
	//t=window.open(file,name, 'toolbar=no,menubar=no,scrollbars=no, resizable=no,status=no,location=no,directories=no,top=60, left=100,width='+width+',height='+height+'');
	t.focus();
}

function openWindowPic(file,name,width,height) {
	t=window.open(file,name, 'toolbar=no,menubar=no,scrollbars=yes, resizable=no,status=no,location=no,directories=no,top=60, left=100,width='+width+',height='+height+'');
	//t=window.open(file,name, 'toolbar=no,menubar=no,scrollbars=no, resizable=no,status=no,location=no,directories=no,top=60, left=100,width='+width+',height='+height+'');
	t.focus();
}



function textCounter(field,cntfield,maxlimit) {
if (field.value.length > maxlimit) // if too long...trim it!
field.value = field.value.substring(0, maxlimit);
// otherwise, update 'characters left' counter
else
cntfield.value = maxlimit - field.value.length;
}

function activate(actual,nar_name){

popUp(actual,true);
var sum=367;
for (j=1;j<nar_name;j++){
	sum=sum+document.images["menu"+j].width+40;
	}
if (DOM) {
	document.getElementById(actual).style.left = 20;// sum-(114-document.images["menu"+nar_name].width)*0.5;
} else if (NS4) {
	document.layers[actual].left =  20;//sum-(114-document.images["menu"+nar_name].width)*0.5;
} else {
	document.all[actual].style.pixelLeft =20;// sum-(114-document.images["menu"+nar_name].width)*0.5;
	}
}


function loadimg(img) {
	var a = new Image();
	a.src = img;
	return a;
}

function preload(links,dir) {
	for (i=0;i<links.length;i++) {
		eval( links[i] + "a=loadimg('" + dir + "/" + links[i] + "2.gif')");
		eval( links[i] + "b=loadimg('" + dir + "/" + links[i] + "1.gif')");
	}
	
}

function imgOn(imageName,x,table) {
	
	document.images[imageName].src = eval(table[x] + "a.src");	
}

function imgOff(imageName,x,table) {
	
	document.images[imageName].src = eval(table[x] + "b.src");
	
}

function showWoj(wojName) {
	if (document.getElementById)
		document.getElementById('woj').innerHTML= wojName;
	else if (document.all)
		document.all['woj'].innerHTML= wojName;
	else if (document.layers) {
		document.layers['woj'].document.open();
		document.layers['woj'].document.write(wojName);
		document.layers['woj'].document.close();
	}
}


function showTipInTextFiled(aFieldType, aFieldName, aComment, aHelperFieldId){
	var element = null;
    var inputElements = null;
    if(aFieldType == 'text'){
        inputElements = document.getElementsByTagName('input');
    }else if(aFieldType == 'textarea'){
        inputElements = document.getElementsByTagName('textarea');
    }
    if(inputElements == null) return;

    for(var i=0; i < inputElements.length; i++){
        if(inputElements[i].name == aFieldName){
            element = inputElements[i];
			break;
        }
    }
	if(element	== null) return;
    if(element.value == ''){
        element.value = aComment;
        element.style.fontStyle = 'italic';
    }else{
        var hiddenHelper = document.getElementById(aHelperFieldId);
        hiddenHelper.value=0;
    }
}

function hideTipInTextField(aThis, aHelperFieldId){
	var hiddenHelper = document.getElementById(aHelperFieldId);
    if(hiddenHelper == null) return;
	if(hiddenHelper.value==1){
		hiddenHelper.value=0;
        aThis.value='';
        aThis.style.fontStyle = 'normal';
	}

}

function hideTipsIfEmptyInAddOfferForm(aElementNameTextarea){
    var inputElementsText = document.getElementsByTagName('input');
    var inputElementsTextarea = document.getElementsByTagName('textarea');
    if(inputElementsTextarea != null) {
        for(var i=0; i < inputElementsTextarea.length; i++){
            if(inputElementsTextarea[i].name == aElementNameTextarea){
                hideTipInTextField(inputElementsTextarea[i], aElementNameTextarea+'Helper');
                break;
            }
        }
    }
}


function ifStartsWith(string, pattern){
    return string.match('^'+pattern) == pattern;
}


function selectDefaultAdvancedSearchParameters(){
    //ustawienie domyslnie kategorii na 'wszystkie'
    selectDefaultCheckbox('category', 'all');

    //ustawienie domyslnie wojewodztwa na 'wszystkie'
    selectDefaultCheckbox('province', '30');

    //ustawienie domyslnie wysokosci transakcji na 'wszystkie'
    selectDefaultCheckbox('price', '30');

    //ustawienie domyslnie branze na 'wszystkie'
    selectDefaultCheckbox('line', '30');

}


function selectDefaultNotifyParameters(){
    //ustawienie domyslnie kategorii na 'wszystkie'
    selectDefaultCheckbox('categoryNoti', 'all');

    //ustawienie domyslnie wojewodztwa na 'wszystkie'
    selectDefaultCheckbox('provinceNoti', '30');

    //ustawienie domyslnie branze na 'wszystkie'
    selectDefaultCheckbox('lineNoti', '30');

}


function selectDefaultCheckbox(aElementName, aElementAll){
    //ustawienie domyslnie kategorii na 'wszystkie'
    var elements = document.getElementsByTagName('input');
    var elementAll = null;
    var isAnyElementChecked = false;

    //ustawienie domyslnie kategorie na 'wszystkie'
    for(var i=0; i<elements.length; i++){
        if(ifStartsWith(elements[i].name, aElementName) && elements[i].type == 'hidden' && elements[i].name == (aElementName + '[' + aElementAll + ']')){
            elementAll = elements[i];
        }
        if(ifStartsWith(elements[i].name, aElementName) && elements[i].type == 'hidden' && elements[i].value != ''){
            isAnyElementChecked = true;
        }
    }

    if(elementAll != null){
        //domyslne zaznaczenie ma sie odbyc tylko za pierwszym razem, czyli jak potem odznaczymy,
        //to ma sie automatycznie nie zaznaczac - a tak jest wtedy, gdy pojawi sie blad - pole jest wymagane
        if( ! isAnyElementChecked && document.getElementById('_error_'+ aElementName) == null){
            elementAll.value = '1';
            elements = document.getElementsByName('__' + aElementName + '[' + aElementAll + ']');
            for(var i=0; i<elements.length; i++){
                if(elements[i].type == 'checkbox'){
                    elements[i].checked = true;
                    break;
                }
            }
        }
    }
}



function chooseCheckboxAdvancedSearcher(aThis, aNameOfAllElement, aPrefixName){
    chooseCheckboxAllOrAnotherOptions(aThis, aNameOfAllElement, aPrefixName);

    var sellChecked = false;
    var buyChecked = false;
    var rentChecked = false;

    var elements = document.getElementsByTagName('input');
    for(var i=0; i<elements.length; i++){
        if(elements[i].name == '__category[sellProperty]' && elements[i].checked){
            sellChecked = true;
        }
        if(elements[i].name == '__category[buyProperty]' && elements[i].checked){
            buyChecked = true;
        }
        if(elements[i].name == '__category[rentProperty]' && elements[i].checked){
            rentChecked = true;
        }
    }

    if(!sellChecked && !buyChecked && !rentChecked ){
        //pokazac opcje branzy
        document.getElementById('labelDIV_line').style.display = 'inline';
        document.getElementById('fieldsDIV_line').style.display = 'block';
    }else{
        //schowac opcje branzy
        document.getElementById('labelDIV_line').style.display = 'none';
        document.getElementById('fieldsDIV_line').style.display = 'none';
    }
}

function chooseCheckboxNotifier(aThis, aNameOfAllElement, aPrefixName){
    chooseCheckboxAllOrAnotherOptions(aThis, aNameOfAllElement, aPrefixName);
}

function chooseCheckboxAllOrAnotherOptions(aThis, aNameOfAllElement, aPrefixName){
    if (aThis.checked) {
        if(aThis.name == '__'+aNameOfAllElement){//zaznaczono 'wszystkie'
            var elements = document.getElementsByTagName('input');
            for(var i=0; i<elements.length; i++){
                if(ifStartsWith(elements[i].name, aPrefixName) && elements[i].name != aNameOfAllElement){
                    aThis.form[elements[i].name].value = '';
                    aThis.form['__' + elements[i].name].checked = false;
                }
            }
        }else{//zaznaczono inne niz 'wszystkie'
            aThis.form[aNameOfAllElement].value = '';
            aThis.form['__' + aNameOfAllElement].checked = false;
        }

    }

}


function selectCheckBoxCreateSZNAccount(aThis){
    
    var elementChecked = document.getElementById('SZNAccountCheckedInfo');
    var elementUnchecked = document.getElementById('SZNAccountUncheckedInfo');
    if(elementChecked != null && elementUnchecked != null){
        if(aThis.checked){
            elementChecked.style.display = 'inline';
            elementUnchecked.style.display = 'none';
        }else{
            elementChecked.style.display = 'none';
            elementUnchecked.style.display = 'inline';
        }
    }

}

function selectCheckBoxCreateSZNAccountAlert(aThis, aIsSZNAccount, aMessage){
    if(aIsSZNAccount){
        if(!aThis.checked){
            var answer = confirm(aMessage);
            if(!answer){
                aThis.checked = true;
            }
        }        
    }else{
        if(aThis.checked){
            var answer = confirm(aMessage);
            if(!answer){
                aThis.checked = false;
            }
        }
    }
}


function setCheckBoxCreateSZNAccount(aIsUserLoggedIn){
    if(aIsUserLoggedIn == 0){
        var elements = document.getElementsByTagName('input');
        for(var i=0; i<elements.length; i++){
            if(elements[i].name == 'sznAccount'){
                selectCheckBoxCreateSZNAccount(elements[i]);
                break;
            }
        }
    }
}


