function arrFader(arr){
	var objs = new Array(); 	var i;
	for(i=0; i<arr.length; i++)	//amen zuigi hamar mi hat FADER object
		objs.push( new fader(arr[i++], arr[i]) );
	
	this.fade = function(){	//miacnum e bolor objectneri fade() funkcianer@
		for(i=0; i<objs.length; i++)
			objs[i].fade();
	};
}

function fader(arm, eng){
	this.init = function(){
		var d = document;
		this.idArm = arm;
		this.idEng = eng;
		this.arm = d.getElementById(this.idArm);
		this.eng = d.getElementById(this.idEng);
		
		this.arm.fader = this; //kpcnum em DOMin, vor setTimeoutov karoghanam gtnem
		
		this.interval = 40;
		this.os = 0.1; //opacity step
	}
	this.setStyle = function(s, vArm, vEng){
		this.arm.style[s] = vArm;
		this.eng.style[s] = vEng;
	};
	this.getStyle = function(obj, s){
		return parseFloat(obj.style[s]);
	}
	this.changeStyle = function(s, vArm, vEng){
		var a = this.getStyle(this.arm, s);
		var e = this.getStyle(this.eng, s);
		this.setStyle(s, a+vArm, e+vEng);
	}
	
	this.fade = function(){
		switch(this.status){
			case "eng": 
				this.status = "toarm"; break;
			case "arm":
				this.status = "toeng"; break;
		}
		var n = (this.status=="toarm") ? +1 : -1; //hayereni opacityi popoxutian nshan@
		var t = (this.status=="toarm") ? 1 : 0; //hayereni verjnakan opacity-n
		
		this.changeStyle("opacity", n*this.os, -n*this.os);
		if (this.getStyle(this.arm, "opacity")==t){
			this.status = (this.status=="toarm") ? "arm" : "eng";
			this.setStyle("zIndex", t, 1-t);
			return;
		}
				
		window.setTimeout("document.getElementById('"+this.idArm+"').fader.fade()", this.interval);
	};
		
	this.init();
	
	this.setStyle("opacity", "0.1", "1.0");
	this.status = 'eng';	
}
