function messageFader(oMessage, type) {
	if(!oMessage) return false;
	if(!type && !oMessage.type) {
		type = 'err';
	}
	colors='fedcba9876543210';
	if(oMessage.cNum) {
		if (oMessage.cNum>180) {
			return;
		}
	}
	if(!oMessage.type) {
		oMessage.type = type;
	}
	cmd='messageFader(document.getElementById(\''+oMessage.id+'\'))';
	setTimeout(cmd,15);
	if(!oMessage.cNum) {
		oMessage.cNum=0
	}

	switch(oMessage.type){
		case 'err': {
			oMessage.style.backgroundColor='rgb(255,'+(255-oMessage.cNum)+', '+(255-oMessage.cNum)+')';
		}
		break;
		case 'info':{
			oMessage.style.backgroundColor='rgb('+(255-oMessage.cNum)+', 200, '+(255-oMessage.cNum)+')';
		}
		break;
	}

	oMessage.cNum+=2;
}

function formFieldInfo(sIds) {
	// zapis: id1;komu nikat:id2tekst inny
	aId = sIds.split(':');
	for(a=0; a<aId.length; a++) {
		data = aId[a].split(';');
		try {
			oInput = document.getElementById(data[0]);
		} catch(e) {
			alert('Nie ma wezla o ID '+data[0])
			;
		}
		if(oInput) {
			warnCounter++;
			oDiv = document.createElement('div');
			oDiv.className = 'infoMsg';
			oDiv.id='__warn_'+warnCounter;
			oDiv.innerHTML = data[1].replace('__COLON__',':');
			oInput.parentNode.insertBefore(oDiv, oInput);
			messageFader(oDiv, 'info');
		}
	}
}

function formGlobalInfo(sMsg) {
	var d = document.getElementById('msgContainer');
	var xx = document.createElement('div');
	xx.className='komunikat info opaque';
	xx.innerHTML=sMsg;
	d.innerHTML='';
	d.appendChild(xx);
	formGlobalFader();

}

function formGlobalInfoPopup(sMsg,width, height) {
	//srodek
	var x=document.documentElement.scrollTop;
    var sh=document.documentElement.scrollHeight;
    var cWidth=330;
    var cHeight=140;
	if(width) {
		cWidth=width
	}
	if(height) {
		cHeight=height;
	}
	var sTop=Math.round(document.documentElement.scrollTop+300)+'px';
	var sLeft=Math.round(document.body.offsetWidth/2-cHeight-40)+'px';
	
	try {
	    removeNodeById('f_popinfo');
	} catch(e) {
	    ;
	}
	var xx = document.createElement('div');
	xx.className='komunikat info opaque';
	xx.id='f_popinfo';
	xx.innerHTML=sMsg;
	xx.style.width=cWidth+'px';
	xx.style.height=cHeight+'px';
	xx.style.top=sTop;
	xx.style.position='absolute';
	xx.onmouseover=function() {
		this.pause=true;
	} 
	xx.onmouseout=function() {
		this.pause=false;
	}
	xx.style.left=sLeft;
	document.body.appendChild(xx);
	setTimeout('formGlobalFadeOut()', 2000);
}


function formGlobalFader() {
	dx = document.getElementById('msgContainer');
	d = dx.getElementsByTagName('div')[0];
	if(!d.op) {
		d.op = 0;
	}
	
	if(!document.all || navigator.appName=='Opera') {
		try {
			d.style.opacity=(d.op/10);
			
		} catch(e) {
			;
		}
	} else {
		
		d.style.filter='progid:DXImageTransform.Microsoft.Alpha(opacity='+(d.op*10)+')';
	}
	d.op+=1;
	if(d.op>10) return false;
	setTimeout('formGlobalFader()',100);

}
function formGlobalFadeOut() {
	var d = byId('f_popinfo');
	if(!d) {
		return
	}
	if(!d.op) {
		d.op = 10;
	}
	
	if(!document.all || navigator.appName=='Opera') {
		try {
			d.style.opacity=(d.op/10);
			
		} catch(e) {
			;
		}
	} else {
		
		d.style.filter='progid:DXImageTransform.Microsoft.Alpha(opacity='+(d.op*10)+')';
	}
	if(!d.pause) {
		d.op-=1;
	}
	if(d.op<1) {
		removeNode(d);
		return false;
	}
	setTimeout('formGlobalFadeOut()',100);

}

function myAlert( sMsg, iType ) {
	if (!iType) {
		// domyslnie - informacja
		iType = 1;
	}
	// narazie jakis alert
	alert(sMsg);
}

function clearMessages( oForm ) {
	warn = oForm.getElementsByTagName('div');
	if(warn.length>0) {
		for(a=0; a<warn.length; a++) {
			if(warn[a].id) {
				if(warn[a].className=='errMsg' || warn[a].className=='infoMsg') {
					warn[a].parentNode.removeChild(warn[a]);
				}
			}
		}
	}
	warn = oForm.getElementsByTagName('div');
	
	rows=oForm.getElementsByTagName('tr');
	
	if(rows.length>0) {
		for(a=0; a<rows.length; a++) {
			if(rows[a].className=='markErrRow') {
				rows[a].className='';
				rows[a].style.backgroundColor='';
			}
		}
	}
}

var warnCounter =1;

function formFieldWarn(sIds) {
	// zapis: id1;komu nikat:id2;tekst inny
	// oInput - chodzi o element przed ktorym ma byc warning, nie input
	
	aId = sIds.split(':');
	for(a=0; a<aId.length; a++) {
		data = aId[a].split(';');
		try {
			oInput = document.getElementById(data[0]+'_i');
		} catch(e) {
			;
		}
		
/*		try {
			oCont = document.getElementById(data[0]+'_r');
			oCont.style.backgroundColor='#faa';
			oCont.style.className='markErrRow';
		} catch(e) {
			;
		}*/
		
		oErrPlace = document.getElementById(data[0]);
		if(oErrPlace) {
			warnCounter++;
			oDiv = document.createElement('div');
			oDiv.className = 'errMsg';
			oDiv.id='__warn_'+warnCounter;
			oDiv.innerHTML = data[1];
			oErrPlace.parentNode.insertBefore(oDiv, oErrPlace);
			messageFader(oDiv);
		}
	}
}
