
/*	#########	Begin: Глобальные переменные	########	*/
var $cnf_Ext = {
	'debug': '6destroy'
	,'flDebug': 1
	,'parentLev': 4
	,'lang': 'eng'
	,'zTime': 1000
	,'rTimerID': null
	,'DOM_Ready': null
	,'par': null
	,'env': {}
	,'uSess': null
	,'tmp': {
		'nodesArr': []
		,'nodesHash': {}
	},'fn': {}
	,'mouse': { 'move': {}, 'up': {} }
	,'animate': { 'Refr': 100, 'init': null, 'tmp': {} }
	,'drag': {}
};
/*	#########	End: Глобальные переменные	########	*/

/*	#########	Begin: Обьект sJs	########	*/
function sJs(iObj, par) {	//	
	this.argLen = sJs.arguments.length;
	this.tComHash = {};
	if(typeof(iObj) == 'string') {
		this.tComHash = _mNodesName(iObj);
	}
	if(par && typeof(par.dID) == 'string') {
		this.tComHash.dest = _mNodesName(par.dID);
		this.tComHash.dest.dx = par.dx || 0;
		this.tComHash.dest.dy = par.dy || 0;
	}
	$cnf_Ext.tmp.nodesArr.push(this.tComHash);

//alert('aas = ' +iObj);
//	iObj = document.body;
	if(!iObj) return this;
	this.iObj = iObj;
	this.par = par;

//var tstr = Dumper(2, this.tComHash.dest, '$cnf_Ext.tmp');
//alert('tstr22=' + tstr);

//	this.iObj = iObj;
//	var c_debug = 'browser';
//alert('s444ss=');

	function _mNodesName(iNames) {		// структура nodeID текущего вызова
		var res = { prf:'', flClass:1, arr:[] };
		var resArr = [];
		var it = iNames.match(/^#(\w+)/);
		if(it) {
			res.flClass = 0;
			res.prf = it[1];
		} else {
			it = iNames.match(/^(\w+)/);
			if(it) res.prf = it[1];
			else return { prf:'', flClass:0, arr:[] };
		}

		it = iNames.match(/\[([^\]]+)/);
		if(it) {
			var ca = it[1].split(',');
			for(var i=0;i<ca.length;i++) {
				var bn = ca[i]; var en = bn;
				it1 = ca[i].match(/(\d+)-(\d+)/);
				if(it1) { bn = it1[1]; en = it1[2]; }
//alert(it1 + ' xx ' + bn + ' s444ss= ' + en);
				for(var j=bn;j<=en;j++) {
					res.arr.push(res.prf + j);
				}
			}
		} else res.arr.push(res.prf);
	return res;
	}
	this._mNodesName = _mNodesName;
return this;
}


function mMouseExt(e) {
	var tEv = e || event;
	if(tEv) {
		var x = tEv.pageX || tEv.clientX;
		var y = tEv.pageY || tEv.clientY;
		var iObj = tEv.currentTarget || tEv.srcElement;
		$cnf_Ext.mouse.move = { x: x, y: y, iObj:iObj };
//alert( ' mMouse iObj.id = ' + $cnf_Ext.drag.dragObj);
	}
//	if($cnf_Ext.drag.mDown && $cnf_Ext.drag._dragMove(tEv, 1)) return false;
//	if($cnf_Ext.drag.dragObj && $cnf_Ext.drag.dragObj._dragMove(tEv, 1)) return false;
//	if($cnf_Ext.drag.mDown && $cnf_Ext.drag.dragObj && $cnf_Ext.drag.dragObj._dragMove(tEv, 1)) return false;
}

function mUpExt(e) {
	var tEv = e || event;
	if(tEv) {
		var x = tEv.pageX || tEv.clientX;
		var y = tEv.pageY || tEv.clientY;
		var iObj = tEv.currentTarget || tEv.srcElement;
		$cnf_Ext.mouse.up = { x: x, y: y, iObj:iObj };
//		if($cnf_Ext.drag.mDown && $cnf_Ext.drag._dragUp(tEv)) return true;
	}
}



function iMouseEvents_Ext(par) {	//	open/close Events
}


function sJsInit(e) {	//	Init DOM

	var imgObj = document.getElementById('sJsButton');
	if(imgObj) {
		imgObj.src = imgObj.src.replace('_off', '');
		imgObj.alt = 'Поиск по цвету...';
	}
	if($cnf_Ext.DOM_Ready) return;

	for(var i=0; i<$cnf_Ext.tmp.nodesArr.length; i++) {
		var nHash = $cnf_Ext.tmp.nodesArr[i];
		if(nHash.initFN) nHash.initFN(nHash);
	}

$cnf_Ext.DOM_Ready = 1;

	if($cnf_Ext.browser.msie && document.readyState != 'complete') return;

//	iMouseEvents_Ext({ 'tObj':document, 'evHash':{'mousemove': mMouseExt} });

//var tstr = Dumper(2, $cnf_Ext.tmp, '$cnf_Ext.tmp');
//alert('tstr1=' + tstr);

}

var t1 = new Date(); $cnf_Ext.tm = t1.getTime();
$cnf_Ext.browser = _browser_Ext();
//alert('dddddddd= ' + $cnf_Ext.browser);
_gParam_Ext();

//var $ = sJs;

if($cnf_Ext.browser.mozilla) {
	document.addEventListener( "DOMContentLoaded", sJsInit, false );
	window.addEventListener( "unload", _destroy, false );
} else if($cnf_Ext.browser.msie){
	document.onreadystatechange = sJsInit;
	window.onbeforeunload = _destroy;
} else {
	document.onload = sJsInit;
}


function _destroy() {	//	Clean
	var cd = 'destroy';
//	saveServCook('logout');
	if($cnf_Ext.flDebug && $cnf_Ext.debug == cd) alert('_destroy: 1');

	delete $cnf_Ext.browser;
	delete $gHash;
	if($cnf_Ext.flDebug && $cnf_Ext.debug == cd) alert('_destroy: 2');
	delete $cnf_Ext;
}

/*		Bak

*/