var isIE = document.all?true:false;
function wrong(mess,js_err){
	//return;
	if (js_err)
		mess+=' : '+js_err;
	alert(mess);
	
};
function pr(cont, max_level, curr_level, pref){
 var out=$('out');
 if (!curr_level) curr_level=0;
 if (!pref) pref='';
 if (!max_level) max_level=2;
 
 if (typeof cont=='object'){
 		pref=pref.concat('&nbsp;&nbsp;&nbsp;&nbsp;', pref);
 		//pref=pref.concat(' -> ', pref);		
	 	for (var i in cont){
 			out.innerHTML+=pref+' -> '+i+' : '+cont[i]+"<br>";	
 		if (typeof cont[i]=='object' && curr_level<max_level)
 			pr(cont[i], max_level, curr_level, pref);
 	
 	}
 }
 else
 	out.innerHTML+='<br>'+cont;
 out.innerHTML+='-------<br>';
}

function $(element){
	node=document.getElementById(element);
	if (!node){
		//wrong('Элемент с id='+element+' не существует');
		return false;
	}
    else
		return  node;
}

function $$(node_id){
	return node=document.createElement(node_id);
	 
}
function addChild(tag,prnt_el){
	var el=document.createElement(tag);
	prnt_el.appendChild(el);
	return el;
}

function showHide(node_id){
		var m=$(node_id);
		//pr(node_id);
		if (m.style.display=='block')
			m.style.display='none';
		else
			m.style.display='block';
		
}

var mousex=0; var mousey=0;

function getMouseCoords(event){
  mousex= (event.clientX + (document.documentElement.scrollLeft || document.body.scrollLeft)) || event.pageX ;
  mousey=(event.clientY + (document.documentElement.scrollTop || document.body.scrollTop)) || event.pageY;
  //window.status=mousex+' '+mousey;
  //mousex=event.clientX+document.body.scrollLeft; 
  //mousey=event.clientY+document.body.scrollTop; 
  return true;

}

function scrolls(){
	//	pr('go');
	var deltaX =  window.pageXOffset 
	                || document.documentElement.scrollLeft 
	                || document.body.scrollLeft 
	                || 0;
	var deltaY =  window.pageYOffset 
	                || document.documentElement.scrollTop 
	                || document.body.scrollTop 
	                || 0;
	return {dx:deltaX, dy:deltaY};
};

		
function addEvent(oElm, eventName, handler){
		 
	if (isIE) { 
		oElm.attachEvent('on'+eventName,handler);
		
	} else { 
	  	oElm.addEventListener(eventName,handler,false);
	}
}
function delEvent(el, evname, func) {
	if (el.detachEvent) { // IE
		el.detachEvent("on" + evname, func);
	} else if (el.removeEventListener) { // Gecko / W3C
		el.removeEventListener(evname, func, true);
	} else {
		el["on" + evname] = null;
	}
};

function trim(string){
	return string.replace(/(^\s+)|(\s+$)/g, "");
}

function getAbsCrds(el){
	var el_left=-1;
	var el_top=-1;
	while (el) {
		el_left +=el.offsetLeft;
		el_top += el.offsetTop;
		el= el.offsetParent;
	}
	
	return {top: el_top, left:el_left}	
};


/////////////////////////////imgs ////
function _imgWin(){
	var _init=0;
	var td_desc_node;
	var win_div_node;
	var img_node;
	var td_img;
	var max_width=800;
	var max_height=600;
	
	this.init=function(){
	  try{
		if (_init==1)
			return;
		
		win_div_node=$('image_win');
		//win_div.onClick=
		td_desc_node=$('img_win_desc');
		img_node=$('img_win_pic');
		td_img=$('td_img');
		_init=1;
	  }catch(e){
	  	wrong('ошибка инициализации окна с графикой'+e)
	  }
	};
	this.show=function(a_node, desc, width, height, _src){
		//pr(width+' '+height);
	  try{
		if (_init==0)
			this.init();
		//pr(a_node.href);
		
		var src='';
		if (_src)
			 src=_src;
		else
			if (typeof a_node.href!='undefined')
				src=a_node.href;
		
		img_node.src=src;
		
		if (!desc)
			desc=src;
		td_desc_node.innerHTML=desc;
		
		if (width>max_width){
			height*=(max_width/width);
			width=max_width;
		}
		if (height>max_height){
			width*=(max_height/height);
			height=max_height;
		}
			
		img_node.width=width;
		img_node.height=height;
		
		var srlls=scrolls();
		
		win_div_node.style.marginLeft=(-parseInt(width/2)+parseInt(srlls.dx))+'px';
		win_div_node.style.marginTop=(-parseInt(height/2)+parseInt(srlls.dy))+'px';
		//window.status='-'+srlls.dx+'px '+(parseInt(height/2)+parseInt(srlls.dy))+'px';
		win_div_node.style.display='block';
		
		
		td_img.style.width=width+'px';
		td_img.style.height=height+'px';
		//pr(width+' '+height);
		return false;
	  }catch(e){
	  	wrong('ошибка открытия окна с графикой'+e)
	  }
		
		
		
	};
	this.hide=function (){
		if (_init==0)
			return;
		win_div_node.style.display='none';
		img_node.src='';
		
	};
	
	
};

var imgWin=new _imgWin();

/////////////////////////////selects ////
//////////////////////SELECT//////////////////////////////////////////////////////////////////////

function Slct(){
	var slct_el;
	this.printOptions=function(slct_el,options, is_print_empty){
		//var slct_el=$(slct_id);
		if (typeof slct_el!='object')
			var slct_el=$(slct_el);
		if (!slct_el)
			return;
		slct_el.options.length = 0;
		
		var o=-1;
		if (is_print_empty){
			var newOption = document.createElement("OPTION");
			newOption.value = 'no';
			newOption.id = 'no';  
			newOption.text = 'нет';
			slct_el.options[o+=1] = newOption;
			newOption = null;
		}
		
		if (!options)
			return;
		if (options.length==0)
			return;
		//pr('----');
		
		for (var i in options){
			//pr(i+' '+options[i].ru_name)
			var newOption = document.createElement("OPTION");
			newOption.value = i;
			newOption.id = i;  
			//var t=document.createTextNode(options[i].name);
			newOption.text = options[i].name;
			//newOption.appendChild(t);//= options[i].name;
			slct_el.options[o+=1] = newOption;
			newOption = null;
		}
	};

	this.setSlctd=function(slct_id,options){
		
		var slct_el=$(slct_id);
		var indx;
		if (slct_el.multiple)
			for (var id in options){
				indx=this.getOptNumById(slct_el,options[id]);
				if (indx)
					slct_el.options[indx].selected = 'On';
			}
		else{
			indx=this.getOptNumById(slct_el,options);
			//pr(slct_el.id+' '+options+' '+indx);
			if (indx>=0){
				//pr('set');
				slct_el.selectedIndex=indx;
			}
			return indx;
		}
		
		
	};
	this.getOptNumById=function(slct_el, id){
		//pr(slct_el+' '+slct_el.options.length);
		for (var i=0; i<slct_el.options.length; i++){
			//pr(slct_el.options[i].id+' '+id);
			if (slct_el.options[i].id==id)
				return i;
		}
		return false;
	};
	this.getSlctd=function(slct_el){
		try{
			if (typeof slct_el=='string')
			var slct_el=$(slct_el);	
				//var slct_el=$(slct_id);
			var indx;
			if (slct_el.multiple){
				//pr('multui')
				var i=-1;
				var ret=new Array();
				//for (var i in slct_el.options)
				//pr(i+' '+slct_el.options.length);
				if (slct_el.options.length>0)
					for (var o=0; o<slct_el.options.length; o++){
						//pr('r '+slct_el.options[o].selected);
						if (slct_el.options[o].selected){
							ret[i+=1]=slct_el.options[o].value;
							//pr('r '+ret[i]);
						}
							
					}
			}
			else{
				var ret;
				//pr(slct_el.options[slct_el.selectedIndex]);
				if (slct_el.selectedIndex>=0)
					ret=slct_el.options[slct_el.selectedIndex].value;
					
			}
			//pr(ret);
			return ret;
		}catch(e){
			wrong('Ошибка получения выбранного элемента Select"a',slct_el.options[1].id);
		}
	}
	
	
};
var Slct= new Slct();
/////////////////////////////ajax ////
/*if (window.ActiveXObject && !window.XMLHttpRequest) {
	window.XMLHttpRequest = function() {
		
        var progIds = new Array("Msxml2.XMLHTTP.6.0", "Msxml2.XMLHTTP.5.0", "Msxml2.XMLHTTP.4.0", "Msxml2.XMLHTTP.3.0", "Msxml2.XMLHTTP", "Microsoft.XMLHTTP");
        for (i in progIds) {
            try {
                return new ActiveXObject(progIds[i]);
                
            }
            catch(ex) {
            	
            }
        }
        return null;
    };
}*/
//if (!window.dimgel) { window.dimgel = {}; };

var ajax = {

// PUBLIC:
	//old_style:'';
	getXMLHttpRequest: function() {
		if (window.ActiveXObject && !window.XMLHttpRequest) {
			window.XMLHttpRequest = function() {
				
		        var progIds = new Array("Msxml2.XMLHTTP.6.0", "Msxml2.XMLHTTP.5.0", "Msxml2.XMLHTTP.4.0", "Msxml2.XMLHTTP.3.0", "Msxml2.XMLHTTP", "Microsoft.XMLHTTP");
		        for (i in progIds) {
		            try {
		                return new ActiveXObject(progIds[i]);
		                
		            }
		            catch(ex) {
		            	
		            }
		        }
		        return null;
	    	};
		}	
	},

    request: function(url, post, is_refresh, tag, timeout, loopdelay, is_json, user_callback, style_node) {
        //var callback=this.request_callback;
    	if (style_node){
        	var snode=$(style_node);
    		var old_style=snode.style.cursor;
    		snode.style.cursor='wait';
    	}
    	
        this.getXMLHttpRequest();
        if (!window.XMLHttpRequest) {
            this.callback(null, tag, -1, 'Not supported by browser.', null,false);
            return null;
        }
        //pr(is_refresh +' '+this._lastid);
        
        if (is_refresh==1 && this._lastid>0){
        	for (var i in this._requests){
        		//pr('rm'+this._requests[i].id);
        		this.remove(this._requests[i].id);
        	}	
        	this._lastid=0;
        }
        var id = ++this._lastid;
        var r = {id: id, url: url, post: post, tag: tag, timeout: (timeout ? timeout : 10), loopdelay: loopdelay, xhr: null, refresh: false, is_json:is_json, user_callback: user_callback, style_node: {node:style_node, old_style:old_style}}; 
        this._requests.push(r);
         
        this._exec(r);
       
        return id;
        
    },
    
    changeurl: function(id, url, post) {
        var i = this._findidindex(id);
        if (i < 0) {
            return;
        }
        var r = this._requests[i];
        r.url = url;
        r.post = post;
    },
    
    refresh: function(id, force) {
        var i = this._findidindex(id);
        if (i < 0) {
            return;
        }
        var r = this._requests[i];
        if (force || r.laststate < 0) {
            this._cleanup(r);
            this._exec(r);
        }
        else {
            r.refresh = true;
        }
    },
    
    remove: function(id) {
        var i = this._findidindex(id);
        if (i < 0) {
            return;
        }
        var r = this._requests[i];
        this._requests.splice(i, 1);
        this._cleanup(r, true);
    },
    
// PRIVATE:
    
    _lastid: 0,
    _requests: new Array(),
    
    _findidindex: function(id) {
        for (var i = 0;  i < this._requests.length;  i++) {
            if (this._requests[i].id == id) {
                return i;
            }
        }
        return -1;
    },
    
    _exec: function(r) {
    	
        var id = r.id;
        
        r.xhr = new XMLHttpRequest();
       
        r.xhr.onreadystatechange = function() { ajax._onreadystatechange(id); };
        r.xhr.open(r.post ? "POST" : "GET", r.url, true);
        
        r.xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded, charset=koi8-r');
        r.xhr.setRequestHeader('X_REQUESTED_WITH', 'XmlHTTPRequest');
        //r.xhr.setRequestHeader("Content-Length", r.url.length);
        r.laststate = 0;
        r.timeoutid = setTimeout("ajax._ontimeout(" + id + ")", r.timeout * 1000);
        
        r.xhr.send(r.post);
        
    },
    
    _cleanup: function(r, abort) {
    	
        var ls = r.laststate;
        r.laststate = -1;
        if (r.timeoutid) {
            clearTimeout(r.timeoutid);
            r.timeoutid = null;
        }
        
        if (ls >= 0) {
            
        	delete r.xhr['onreadystatechange'];
            
        	//pr(typeof r.xhr.abort);
        	if (abort && (typeof r.xhr.abort=='function')) {
            	r.xhr.abort();
            }
            delete r['xhr'];
        }
    },

    _onreadystatechange: function(id) {
        var i = this._findidindex(id);
        if (i < 0) {
            return;
        }
        var r = this._requests[i];
        if (!r.xhr) {
            return;
        }
        var readyState = r.xhr.readyState;
        if (r.laststate < 0) {
            return;
        }
        r.laststate = r.xhr.readyState;
        if (r.xhr.readyState != 4) {
            return;
        }
        var status = r.xhr.status;
        var responseText = r.xhr.responseText;
        var responseXML = r.xhr.responseXML;
        this._cleanup(r);
        if (r.refresh) {
            r.refresh = false;
            ajax.refresh(id, true);
        }
        else if (r.loopdelay > 0) {
            r.timeoutid = setTimeout("ajax.refresh(" + r.id + ", false)", r.loopdelay * 1000);
        }
        else {
            this._requests.splice(i, 1);
        }
        this.callback(id, r.tag, status, responseText, responseXML, r.is_json, r.user_callback, r.style_node);
    },
    
    _ontimeout: function(id) {
      //  pr('ontimeout');
        //pr('back');
     	var i = this._findidindex(id);
        if (i < 0) {
            return;
        }
        var r = this._requests[i];
        if (r.laststate < 0) {
            return;
        }
        this._cleanup(r, true);
        if (r.refresh) {
            r.refresh = false;
            ajax.refresh(id, true);
        }
        else if (r.loopdelay > 0) {
            r.timeoutid = setTimeout("ajax.refresh(" + r.id + ", false)", r.loopdelay * 1000);
        }
        else {
            this._requests.splice(i, 1);
        }
        this.callback(id, r.tag, -2, 'Request timed out.', null, r.is_json, r.user_callback, r.style_node);
    },
    
    callback:function (id,tag,status,text,xml,is_json,user_callback, style_node) {
	    //pr('back');
    	if (style_node.node)
    		$(style_node.node).style.cursor=style_node.old_style;
    	var req_rslt=false;
	   
		if (status != 200) {
			user_callback('ERROR','request_error'); 
			return false;   
		}
	    this.remove(id);
	    //alert(text);
	    if (text.length>0){
	    	var req_rslt=text;
	      	if (is_json){
		    	req_rslt=this.treat_json_str(text);
	      	}
		   	if (!req_rslt){
		   		user_callback('ERROR','parse_json_error');	
		   		
		   	}
	
	     }
	     
	     user_callback(req_rslt);
	     delete req_rslt;
	},
	treat_json_str:function (text){
		if (/^[,:{}\[\]0-9.\-+Eaeflnr-u \n\r\t]*$/.test(text.replace(/\\./g, '@').replace(/"[^"\\\n\r]*"/g, ''))) {
			j = eval('(' + text + ')');
			return j;
		}
		else
			return false;
	}
};
/////////////////////////////project  ////
	
	function changeCity(node){
		var cntry=Slct.getSlctd(node);
		Slct.printOptions('change_city',cities[cntry]);
		changeDealers($('change_city'));	
	}
	
	function changeDealers(node){
		var cnty=Slct.getSlctd('change_country');
		var cty=Slct.getSlctd(node);
		var opts=new Array();
		if (typeof dealers[cnty][cty]!='undefined')
		
		for (var d in dealers[cnty][cty]){
			//if (dealers[d]['city_id']==cty && dealers[d]['country_id']==cnty){
				opts[d]={name:dealers[cnty][cty][d]['name']};
			//}
		}
		Slct.printOptions('change_dealer',opts);
	}
	
function ihateajax4choose(err){
		//pr(err);
		return;
		var _id=Slct.getSlctd('manuf');
		var _id2=Slct.getSlctd('model')
		l='?manuf='+_id+'?model='+_id2;;
		//pr(l);
		document.location=l;
		//return false;
		//$('choose_glass')
	}
	
	function changeSelect(_node,param, flds){
		try{
			var params='';
			params+='&'+_node.id+'='+encodeURIComponent($(_node.id).value);
			for (var fld in flds){
				params+='&'+flds[fld]+'='+encodeURIComponent($(flds[fld]).value);
			}
			//var name=encodeURIComponent(Slct.getSlctd(_node.id));
			//var dealer_id=encodeURIComponent(dealer_id);
			//var name2='';
			//if (glass_param=='color')
				//name2=encodeURIComponent(Slct.getSlctd('model')); 
			//l='/?ajax='+glass_param+'&dealer_id='+dealer_id+'&name='+name+'&name2='+name2;
			l='/?ajax='+param;
			
			var res= ajax.request(l,params,1,10,0, 0, true, updateSelect,'container');
		}catch(e){
			//ihateajax4choose('Ошибка Ajax-запроса 1'+e);
			return;
		}
	}
	function updateSelect(res){
		try{ 
			if (res=='ERROR'){
				ihateajax4choose('Ошибка Ajax-запроса');
				//alert('hate');
				return false;
			}
			var rslt=eval(res);
			if (rslt.options!="ERROR")	
				Slct.printOptions(rslt.param,rslt.options);
			else{
				ihateajax4choose('Ошибка Ajax-запроса3');
				//alert('ERROR');
				return;
			}
			var slcts={'change_city':'Город','change_dealer':'Дилер','manuf':'Марка','model':'Модель','glasstype':'Стекло','color':'Цвет', 'charctrst':'Характеристика'};
			var go=0;
			
			for (var i in slcts){
				if (i==rslt.param){
					go=1;
					continue;
				}
				if (go==1)
					Slct.printOptions(i,{'no':{'name':slcts[i]}});
			}
			//alert(slcts.indexOf(rslt.param));
			
		}catch(e){
			ihateajax4choose(e);
			//alert(e);
		}		
	}
	
/////////////////////////////ac_runactiv ////
//v1.0
//Copyright 2006 Adobe Systems, Inc. All rights reserved.
function AC_AddExtension(src, ext)
{
  if (src.indexOf('?') != -1)
    return src.replace(/\?/, ext+'?'); 
  else
    return src + ext;
}

function AC_Generateobj(objAttrs, params, embedAttrs) 
{ 
  var str = '<object ';
  for (var i in objAttrs)
    str += i + '="' + objAttrs[i] + '" ';
  str += '>';
  for (var i in params)
    str += '<param name="' + i + '" value="' + params[i] + '" /> ';
  str += '<embed ';
  for (var i in embedAttrs)
    str += i + '="' + embedAttrs[i] + '" ';
  str += ' ></embed></object>';

  document.write(str);
  //alert(str);
}

function AC_FL_RunContent(){
  var ret = 
    AC_GetArgs
    (  arguments, ".swf", "movie", "clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
     , "application/x-shockwave-flash"
    );
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_SW_RunContent(){
  var ret = 
    AC_GetArgs
    (  arguments, ".dcr", "src", "clsid:166B1BCA-3F9C-11CF-8075-444553540000"
     , null
    );
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_GetArgs(args, ext, srcParamName, classid, mimeType){
  var ret = new Object();
  ret.embedAttrs = new Object();
  ret.params = new Object();
  ret.objAttrs = new Object();
  for (var i=0; i < args.length; i=i+2){
    var currArg = args[i].toLowerCase();    

    switch (currArg){	
      case "classid":
        break;
      case "pluginspage":
        ret.embedAttrs[args[i]] = args[i+1];
        break;
      case "src":
      case "movie":	
        args[i+1] = AC_AddExtension(args[i+1], ext);
        ret.embedAttrs["src"] = args[i+1];
        ret.params[srcParamName] = args[i+1];
        break;
      case "onafterupdate":
      case "onbeforeupdate":
      case "onblur":
      case "oncellchange":
      case "onclick":
      case "ondblClick":
      case "ondrag":
      case "ondragend":
      case "ondragenter":
      case "ondragleave":
      case "ondragover":
      case "ondrop":
      case "onfinish":
      case "onfocus":
      case "onhelp":
      case "onmousedown":
      case "onmouseup":
      case "onmouseover":
      case "onmousemove":
      case "onmouseout":
      case "onkeypress":
      case "onkeydown":
      case "onkeyup":
      case "onload":
      case "onlosecapture":
      case "onpropertychange":
      case "onreadystatechange":
      case "onrowsdelete":
      case "onrowenter":
      case "onrowexit":
      case "onrowsinserted":
      case "onstart":
      case "onscroll":
      case "onbeforeeditfocus":
      case "onactivate":
      case "onbeforedeactivate":
      case "ondeactivate":
      case "type":
      case "codebase":
        ret.objAttrs[args[i]] = args[i+1];
        break;
      case "width":
      case "height":
      case "align":
      case "vspace": 
      case "hspace":
      case "class":
      case "title":
      case "accesskey":
      case "name":
      case "id":
      case "tabindex":
        ret.embedAttrs[args[i]] = ret.objAttrs[args[i]] = args[i+1];
        break;
      default:
        ret.embedAttrs[args[i]] = ret.params[args[i]] = args[i+1];
    }
  }
  ret.objAttrs["classid"] = classid;
  if (mimeType) ret.embedAttrs["type"] = mimeType;
  return ret;
}

/////////////////////////////tables ////
function Table() {
	var node;
	var node_id;
	var vars={rows:0,cols:0};
	this.init=function (_node_id){
		node_id=_node_id;
		node=$(_node_id); 
		//pr(_node_id);
	
		while( node.hasChildNodes()) {
		   var tmp = node.childNodes[ 0 ];
		   node.removeChild( tmp );
		}
			
		//var tbody=addChild('TBODY',node);
		//tbody.id=node_id+'.tbody';
		
		return node;
	}
	this.create=function(_node_id,_vars, _trs){
		try{
			
			var tbody=this.init(_node_id);
			//var tbody=elmn('tbody');
			
			if (_vars){ //пустые tr
				vars.rows=_vars.rows;
				vars.cols=_vars.cols;
				
				for (var r=0; r<vars.rows; r++){
					//var tr=addChild('TR',tbody);
					this.addTr(tbody, node_id+'.tr'+r,vars.cols);
						
				}
			}
			
			if (_trs){// tr с данными
				for (var tr in _trs){
					//pr(_trs[tr]['tds']);
					this.addTr(tbody, node_id+'.tr'+tr,0, _trs[tr]);
				}
				
			}
		}catch(e){
			wrong('Ошибка создания таблицы '+node_id, e);
		}
	}; 
	this.addTd=function (_tr_node, _td_id, prprts){
		var td=$$('TD');
		td.id=_td_id;
		
		
		if (prprts){
			for (var prprt in prprts){
				td[prprt]=prprts[prprt];
			}
			
		}
		_tr_node.appendChild(td);
		//pr(td.id);
		
	};
	this.addTr=function(_tbody_node, _tr_id,_cols, _tr){
		var tr=$$('TR');
		tr.id=_tr_id;
		//pr(_tr);
		
		if (_tr['prprts']){
			for (var prprt in _tr['prprts']){
				tr[prprt]=_tr['prprts'][prprt];
			}
		}
		
		for (var c=0; c<_cols; c++){ // пустые td
			this.addTd(tr,_tr_id+''+c);
		}
		
		if (_tr['tds']){ // td с данными
			for(var td in _tr['tds']){
				//pr(_tr['tds'][td]);
				this.addTd(tr,_tr_id+'.td'+td, _tr['tds'][td]);
			}
			
		}
		
		
		
		
		_tbody_node.appendChild(tr);
		
	}; 
	this.createSimple=function(_node_id,_trs){
		try{
			var tbody=this.init(_node_id);
			var _tr_node;
			var _td_node;
			var txt;
			for (var tr in _trs){
				_tr_node=$$('TR');
				
				for (var td in _trs[tr]){
					_td_node=$$('TD');
					txt=document.createTextNode(_trs[tr][td]);
					_td_node.appendChild(txt);
					//_td_node.innerHTML(_trs[tr][td]);
				
					_tr_node.appendChild(_td_node);	
				}
				tbody.appendChild(_tr_node);
			}
			
		}catch(e){
			wrong('Ошибка создания таблицы '+_node_id, e);
		}
	}
}

///////////////////////////////////////////////////////////////////

function setFunctAttribute(el_node, prop, funct_str){
	if (isIE){
		el_node.setAttribute( prop,function() {eval(funct_str)});
	}
	else{
		el_node.setAttribute( prop,funct_str);
	}
			
}
