var opera = (navigator.userAgent.indexOf('Opera') >= 0)? true : false;
var mozilla = (navigator.userAgent.indexOf('Firefox') >= 0)? true : false;
var dom = (document.getElementById && !opera)? true : false;
var ie4 = (document.all && !dom && !opera)? true : false;

function o(nodeName) {
	return document.getElementById(nodeName);
};

function _SetDisplay(nodeName, display) {
    var obj=o(nodeName);
    if (obj) {
        if (display=='block' && obj.tagName=='TR' && (mozilla || opera) ) { 
        	obj.style.display='table-row' ;
        } else {
            obj.style.display=display;
        };
    };
};

function openImage(url, width, height) {
    var sc=(width>screen.width-50 || height>screen.height-50 ? 'yes':'no')
    var ow=(width>screen.width-50 ? screen.width:width*1+50);
    var oh=(height>screen.height-50 ? screen.height:height*1+50);
	window.open(url, '', 'width='+ow+'px, height='+oh+'px, scrollbars='+sc);
	return false;
};

function _patchManualImagesClasses() {
    var images=document.getElementsByTagName('img');
    for(var i=0; i<images.length; i++ ) {
        var id=images[i].id;
        if (images[i].getAttribute('mediaid') != null || images[i].getAttribute('uid') != null ) {
            var _m=images[i];
            var align=_m.getAttribute('align');
            var iClass=_m.getAttribute('className');
            if (iClass == null || iClass.length==0 ) {
                iClass=_m.getAttribute('class');
            };

            if (iClass==null || iClass.length==0 ) {
                _m.setAttribute('class', 'img_'+align);
                _m.setAttribute('className', 'img_'+align);
            };
        };
    };
};

var m_hidden=new Array();
var m_opened=new Array();

function m_show(id) {
	for(var i=0; i<m_opened.length; i++ ) {
		if (m_opened[i] != id ) {
			o(m_opened[i]).style.display='none';			
		};
	};
	var tmp=new Array();
	for(var i=0; i<m_hidden.length; i++ ) {
		if ( m_hidden[i]!=id ) {
			tmp.push( m_hidden[i] );
		};
	};
	m_hidden=tmp;
	o(id).style.display='block';
            if (o(id)!=null && o(id).getAttribute('class') == 'select_list' ) o(id).setAttribute('class', 'select_list_vis' );
            if (o(id)!=null && o(id).getAttribute('className') == 'select_list' ) o(id).setAttribute('class', 'select_list_vis' );
	m_opened=new Array();
	m_opened.push(id);
};

function m_hide(id, flagTP) {
    var flag=0;
	var tmp=new Array();
	for(var i=0; i<m_hidden.length; i++ ) {
		if ( m_hidden[i]==id ) {
			if (o(id)!=null && o(id).getAttribute('class') == 'select_list_vis' ) o(id).setAttribute('class', 'select_list' );
			if (o(id)!=null && o(id).getAttribute('className') == 'select_list_vis' ) o(id).setAttribute('class', 'select_list' );
			o(m_hidden[i]).style.display='none';
			flag=1;
		} else {
			tmp.push( m_hidden[i] );
		};
	};

	for(var i=0; i<m_opened.length; i++ ) {
		if (m_opened[i]==id && flagTP==1) return false;
	};


	if (flag ==0 ) {
		m_hidden.push(id);
		for(var i=0; i<m_opened.length; i++ ) {
			
		};
		if (flagTP!=1 ) {
			window.setTimeout("m_hide('"+id+"', 1)", 1000);
		};
	} else {
		m_hidden=tmp;
		if ( !tmp.length) return false;
	};
};

var dCnt=0;
function debug(msg) {
//	return false;
	dCnt++;
	o('debug').innerHTML=dCnt+':'+msg+'<br/>'+o('debug').innerHTML;
};

function showStory(id) {
	o('link'+id).style.display='none';
	o('story'+id).style.display='block';
};

var reqFields=new Array('form_org', 'form_city', 'form_name', 'form_status', 'form_summ', 'form_zalog', 'form_code');
function checkForm() {
	for(var i=0; i<reqFields.length; i++ ) {
		if (o(reqFields[i])!=null ) {
			if (o(reqFields[i]).value==null || o(reqFields[i]).value.length==0 ) {
				alert('Заполните поле "'+o(reqFields[i]+'_title').innerHTML+'"');
				o(reqFields[i]).focus();
				return false;
			};
		};
	};
	var contacts=o('form_email').value + o('form_phone').value;
	if (contacts.length == 0 ) {
		alert('Заполните одно из двух полей -  "'+o('form_phone_title').innerHTML+'" или "'+o('form_email_title').innerHTML+'"');
		return false;
	};

	o('feedBackForm').submit();
	return false;
};

var formSelects=new Array('form_source', 'form_monthes');
function hideSelects() {
	for(var i=0; i<formSelects.length; i++ ) {
		if (o(formSelects[i]) != null ) {
			if (o(formSelects[i]+'_data').style.display='block' ) {
				o(formSelects[i]+'_data').style.display='none';
			};
		};
	};
	onkeyp=function() {};
};

function onSelect(prefix, obj) {
    o(prefix).value=obj.getAttribute('value');
    o(prefix+'_value').innerHTML=obj.innerHTML;
	o(prefix+'_data').style.display='none';
/*	if (o(prefix+'_cont')!=null ) {
		o(prefix+'_cont').setAttribute('class', 'select_list');
		o(prefix+'_cont').setAttribute('className', 'select_list');
		o(prefix+'_cont').style.display='none';
	};*/
};

function showSelect(prefix) {
	var list=o(prefix+'_data');
	var value=o(prefix).value;
	for(var i=0; i<list.childsNodes; i++ ) {
		if (list.childsNodes[i].tagName == 'A' ) {
			if (list.childsNodes[i].getAttribute('value') == value ) {
				list.childsNodes[i].setAttribute('class', 'now');
				list.childsNodes[i].setAttribute('className', 'now');
			} else {
				list.childsNodes[i].setAttribute('class', '');
				list.childsNodes[i].setAttribute('className', '');
			};
		};
	};
	list.style.display='block';
/*	if (o(prefix+'_cont')!=null && o(prefix+'_cont').getAttribute('className') != 'select_list_vis') {
		o(prefix+'_cont').setAttribute('class', 'select_list_vis');
		o(prefix+'_cont').setAttribute('className', 'select_list_vis');
		debug(1);
		o(prefix+'_cont').style.display='block';
		debug( o(prefix+'_cont').style.display );
		debug(2);
		debug( o(prefix+'_cont').style.display );
	} else {
		o(prefix+'_cont').setAttribute('class', 'select_list');
		o(prefix+'_cont').setAttribute('className', 'select_list');
		hideSelects();
	};*/
};

var formSelects=new Array(
	'searchTree'
);
function initSelects() {	
	for(var i=0; i<formSelects.length; i++ ) {
		if (o(formSelects[i]) != null ) {
			var tmp=document.createElement('DIV');
			tmp.style.display='block';
			tmp.innerHTML=o(formSelects[i]).getAttribute('title');
			onSelect(formSelects[i], tmp);
		};
	};
};


function getActiveChilds(obj, tagName) {
	var result=new Array();
	for(var i=0; i<obj.childNodes.length; i++ ) {
		if (obj.childNodes[i].tagName==tagName ) result.push( obj.childNodes[i] );
	};
	return result;
};

function cleanTree(obj) {
	while(obj.firstChild ) {
		obj.removeChild(obj.firstChild);
	};
};

function cloneTR(src, dst) {
	cleanTree( dst );
	for(var i=0; i<src.childNodes.length; i++ ) {
		if (src.childNodes[i].tagName == 'TD' ) {
			var newTD=document.createElement('TD');
			newTD.innerHTML=src.childNodes[i].innerHTML;
			newTD.colSpan=src.childNodes[i].colSpan;
			newTD.style.display=src.childNodes[i].style.display;
			newTD.id=src.childNodes[i].id;
			newTD.setAttribute('requiredDisplay', src.childNodes[i].getAttribute('requiredDisplay') );
			dst.appendChild(newTD);
		};
	};
};

function createFreeGroup() {
	var table;
	for(var i=0; i<o('newMessageTBL').childNodes.length; i++ ) {
		if ( o('newMessageTBL').childNodes[i].tagName=='TBODY' ) table=o('newMessageTBL').childNodes[i];
	};

   	for(var i=0; i<2; i++ ) {
    	table.appendChild(document.createElement('TR') );
    };

	var index=-1;

	var realElements=getActiveChilds(table, 'TR');

	var i=0;
	while( i < realElements.length && index < 0 ) {
		if (realElements[i].getAttribute('lastRowInMediaGroup') == 1 ) {
			index=i;
			realElements[i].setAttribute('lastRowInMediaGroup', 0);
			o('button'+(curMediaGroupCnt-1)).parentNode.innerHTML='&nbsp';
    	};
    	i++;
    };

    if ( index >= 0 ) {
	    for(var i=realElements.length-1; i>index+2; i-- ) {
	    	cloneTR( realElements[i-2], realElements[i] );
	    };
    };

    //insert html template as DOM
	cleanTree( realElements[index+1] );
	var td=document.createElement('TD');
	realElements[index+1].appendChild( td );
	realElements[index+1].appendChild(document.createElement('TD') );
	cleanTree( realElements[index+2] );
	realElements[index+2].appendChild(document.createElement('TD') );
	realElements[index+2].appendChild(document.createElement('TD') );
	realElements[index+2].appendChild(document.createElement('TD') );

	realElements[index+1].childNodes[0].innerHTML='Путь к фото:';
	realElements[index+1].childNodes[1].colSpan=2;
	realElements[index+1].childNodes[1].innerHTML='<input type="File" name="filetoattach'+curMediaGroupCnt+'"/>';

	realElements[index+2].childNodes[0].innerHTML='Название фото:';
	realElements[index+2].childNodes[1].innerHTML='<input type="Text" class="text_input" name="title'+curMediaGroupCnt+'"/>';
	realElements[index+2].childNodes[2].innerHTML='<input type="Button"  name="button'+curMediaGroupCnt+'"  id="button'+curMediaGroupCnt+'" value=" + " onClick="javascript:createFreeGroup();" />';

    realElements[index+2].setAttribute('lastRowInMediaGroup', 1);

    curMediaGroupCnt++;
};

var loadedFiles=new Array();
function loadFile(src) {
	for(var i=0; i<loadedFiles.length; i++ ) {
		if ( loadedFile[i] == src ) return true ;
	};
	var re=/\.(\w+)$/i;
	var type=src.match(re)[1];
	var ref;
	if (type == 'js' ) {
		ref=document.createElement('SCRIPT');
		ref.setAttribute('type', 'text/javascript');
		ref.src=src;
	} else {
		if (type == 'css' ) {
			ref=document.createElement('LINK');
			ref.setAttribute('rel', 'stylesheet');
			ref.setAttribute('type', 'text/css');
			ref.src=src;
		} else {
			return false;
		};
	};

	if (typeof ref != 'undefined' ) {
		document.getElementsByTagName('HEAD')[0].appendChild(ref);
		return true;
	};

	return false;
};

function loCase(str)
{
    var ru_alpha='АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ';
    lo_ru_alpha='абвгдеёжзийклмнопрстуфхцчшщъыьэюя';
    var res='';
    for (i=0; i<str.length; i++) {
        var c=str.substring(i,i+1);
        var n=ru_alpha.indexOf(c);
        if ( n != -1 ) {
            res = res + lo_ru_alpha[n];
        } else {
            res=res+c;
        };
    };
    return res;
};

var searchRealRows={};
var searchRealRowsID={};

var	searchRows=new Array();
var	searchRowsID=new Array();

var searchCurrentContent=new Array();

var lastStr='';

var _step_by_step_index=0;
var _step_by_step_sources=new Array();

var cancelRightNow=0;

var lastWords=new Array();

function searchKeyUp() {
    var str=document.getElementById('searchText').value;
    if (str.length < 3 ) {
    	o('searchTextVariantsContainer').innerHTML='';
    	o('searchTextVariants').style.display='none';
	    return true;
    };
    str=str.toLowerCase();
    str=loCase(str);

    var re=/\s+/;
    var words=str.split(re);

   	//debug( lastStr.length+','+words.join(' ').length+','+lastStr+','+words.join(' ') );

    if (lastStr==words.join(' ') ) {	
    	return true;
    };
   	lastStr=words.join(' ');

	cancelRightNow=1;

    lastWords=new Array();

    var ru_alpha='абвгдеёжзийклмнопрстуфхцчшщъыьэюя -0123456789abcdefghijklmnopqrstuvwxyz';
    var tr_alpha=new Array('A', 'B', 'V', 'G', 'D', 'E', 'YO', 'J', 'Z', 'I', 'IY', 'K', 'L', 'M', 'N', 'O', 'P', 'R', 'S', 'T', 'U', 'F', 'H', 'TC', 'CH', 'SH', 'SCH', 'TVZNAK', 'bl', 'MZNAK', 'EE', 'YU', 'YA', 'Spacer', 'Minus',
     'd0', 'd1', 'd2', 'd3', 'd4', 'd5', 'd6', 'd7', 'd8', 'd9',
     'eA', 'eB', 'eC', 'eD', 'eE', 'eF', 'eG', 'eH', 'eI', 'eJ', 'eK', 'eL', 'eM', 'eN', 'eO', 'eP', 'eQ', 'eR', 'eS', 'eT', 'eU', 'eV', 'eW', 'eX', 'eY', 'eZ');

    _step_by_step_sources=new Array();
	_step_by_step_index=0;

	searchRealRows={};
	searchRealRowsID={};

	searchRows=new Array();
	searchRowsID=new Array();

	wordsCount=0;
    for(var i=0; i<words.length; i++ ) {
    	if (words[i].length >= 3 ) {
		    var res='/js/search/';
			for(var j=0; j<words[i].length; j++) {
		        var c=words[i].substring(j,j+1);
		        var n=ru_alpha.indexOf(c);
        		if ( n != -1 ) res = res + tr_alpha[n];
		    };
		    res=res+'.js';

			_step_by_step_sources.push(res);
			lastWords.push(words[i]);
			wordsCount++;
		};
	};	
	cancelRightNow=1;
	window.setTimeout('loadStepByStep(0, wordsCount, \'createBlock('+wordsCount+')\')', 50 );
};

function loadStepByStep(onIndex, cnt, afterFinal) {
	if (onIndex==0 ) {
		cancelRightNow=0;
	};	

	if (cancelRightNow==1 ) {
		searchRealRows={};
		searchRealRowsID={};
		return;
	};

	if (_step_by_step_index == onIndex ) {
		loadFile(_step_by_step_sources[_step_by_step_index] );
		if ( onIndex+1 < cnt ) { 
			window.setTimeout('loadStepByStep('+(onIndex*1+1)*1+', '+cnt+', \''+afterFinal+'\')', 50)
		} else {
			window.setTimeout(afterFinal, 50);
		};
//		alert('run '+(onIndex+1)+', '+_step_by_step_index);
	} else {
	    if ( _step_by_step_index < onIndex ) {
			window.setTimeout('loadStepByStep('+onIndex+', '+cnt+', \''+afterFinal+'\')', 50);
		} else {
			window.setTimeout(afterFinal, 50);
		};
	};
};

function searchListReload() {
//	o('searchTextVariantsContainer').innerHTML='';
//	var i;

	if (cancelRightNow==1 ) {
		searchRealRows={};
		searchRealRowsID={};
		return;
	};

    for(var i=0; i<searchRows.length; i++ ) {
		if (cancelRightNow==1 ) {
			return;
		};

		searchRealRows[searchRowsID[i] ]=searchRows[i];
		if ( searchRealRowsID[ searchRowsID[i] ]==null ) {
			searchRealRowsID[ searchRowsID[i] ]=1;
		} else {
			searchRealRowsID[ searchRowsID[i] ]++;
		}
	};

//	o('searchTextVariants').style.display='block';
	searchRows=new Array();
	searchRowsID=new Array();

	_step_by_step_index=_step_by_step_index+1;
};

function createBlock(cnt) {
    searchCurrentContent=new Array();
	for(var i=cnt; i>0; i-- ) {
		var result=new Array();
		var rID=new Array();
		for(var k in searchRealRowsID ) {
			if ( searchRealRowsID[k]==i ) {
				result.push(searchRealRows[k] );
				rID.push(k );
		   	};
		};

		if (cancelRightNow==1 ) {
			searchRealRows={};
			searchRealRowsID={};
			return;
		};

		if (result.length > 0 ) {
			o('searchTextVariantsContainer').innerHTML='';
			for(var i=0; i<Math.min(result.length, 20); i++ ) {
				o('searchTextVariantsContainer').innerHTML+='<A href="'+result[i][3]+'" id="link'+rID[i]+'">'+highlight(result[i][2])+'</A>';
				searchCurrentContent.push(rID[i]);
				if (cancelRightNow==1 ) {
					searchRealRows={};
					searchRealRowsID={};
					o('searchTextVariantsContainer').innerHTML='';
					return;
				};
			};
			o('searchTextVariants').style.display='block';
			return;
		};
	};
};

function highlight(text) {
	for(var i=0; i<lastWords.length; i++ ) {
		var re=new RegExp('('+lastWords[i]+')', 'igm');
		text=text.replace(re, '<b>$1</b>');
	};
	return text;
};

var operationNotFinished=0;

function add2bascket(itemid) {
	var q=o('q'+itemid).value;
	if (operationNotFinished == 1 ) {
		window.setTimeout('add2bascket('+itemid+')', 200);
	} else {
		operationNotFinished=1;
		o('workFrame').src='/cgi-bin/kernel.pl?lib=garbage&method=add2bascket&itemid='+itemid+'&quantity='+q+'&rand='+Math.random();
	};
};

function reloadBascket(itemid, price, quantity, action) {	
	debug('called basket reloader');
	if (action == 'add' ) {
		debug('onAdd');
		if (o('link'+itemid).getAttribute('stableContent') != null ) o('link'+itemid).innerHTML=(o('link'+itemid).getAttribute('afterAdd')==null ? '<img src="/img/all/fig.gif" class="basket_in_on" onclick="document.location=\'/basket/\';" />':o('link'+itemid).getAttribute('afterAdd'));

		if(o('link'+itemid).getAttribute('sw')=='1' ) {
		    o('link'+itemid).style.display='none';
		    debug('switch off link block');
		};

		o('quantity'+itemid).innerHTML=(o('quantity'+itemid).getAttribute('startFrom')==null ? '':(o('quantity'+itemid).getAttribute('startFrom'))+'<b>'+quantity+'</b>');
		o('delete'+itemid).innerHTML='<img src="/img/all/fig.gif" class="delete" onclick="deleteFromBascket('+itemid+')" />';
		if ( o('delete'+itemid).getAttribute('sw')=='1' ) {
		    o('delete'+itemid).style.display='block';
		    debug('switch on delete block');
		};
		if (o('bascketSummP') == null ) {
			o('bascketData').innerHTML='Товаров <b><a href="/basket/" id="bascketSummQ">'+quantity+'</a></b><br/>на сумму <b id="bascketSummP">'+price*quantity/100+'</b> руб.';
		} else {
			o('bascketSummQ').innerHTML=o('bascketSummQ').innerHTML*1+quantity*1
			o('bascketSummP').innerHTML=o('bascketSummP').innerHTML*1+quantity*price/100;
		};
	} else {
		debug('onDelete');
		if (o('link'+itemid).getAttribute('stableContent') != null ) o('link'+itemid).innerHTML=(o('link'+itemid).getAttribute('afterDelete')==null ? '<img src="/img/all/fig.gif" class="basket_add_on" onclick="add2bascket('+itemid+')" />':o('link'+itemid).getAttribute('afterDelete') );
		o('quantity'+itemid).innerHTML=(o('quantity'+itemid).getAttribute('startFrom')==null ? '':(o('quantity'+itemid).getAttribute('startFrom'))+'<input type="Text" class="number_input" id="q'+itemid+'" value="'+quantity+'"/>');
		o('delete'+itemid).innerHTML='&nbsp;';
		if(o('delete'+itemid).getAttribute('sw')=='1' ) {
		    o('delete'+itemid).style.display='none';
		    debug('switch off delete block');
		};

		if(o('link'+itemid).getAttribute('sw')=='1' ) {
		    o('link'+itemid).style.display='block';
		    debug('switch on link block');
		};

		o('bascketSummQ').innerHTML=o('bascketSummQ').innerHTML*1-quantity*1
		o('bascketSummP').innerHTML=o('bascketSummP').innerHTML*1-quantity*price/100;

		if ( o('bascketSummQ').innerHTML == "0" ) {
			o('bascketData').innerHTML='Ваша корзина пуста';
		};
	};
/*	o('basket').style.display='none';
	o('basketExist').style.display='block';
	var tp=o('bascketInfoPrice').innerHTML *1 + (price/100)*o('quantity'+itemid).value;
	var re=/\.\d$/;
	var re2=/\.\d+$/;
	if (re.test(tp ) ) {
		tp+='0';
	} else if (!re2.test(tp) ) {
		tp+='.00';
	};
	o('bascketInfoPrice').innerHTML=tp;
	o('bascketCount').innerHTML=o('bascketCount').innerHTML *1 + o('q'+itemid).value*1;*/
};

function deleteFromBascket(itemid) {
	if (operationNotFinished == 1 ) {
		window.setTimeout('deleteFromBascket('+itemid+')', 200);
	} else {
		operationNotFinished=1;
		o('workFrame').src='/cgi-bin/kernel.pl?lib=garbage&method=deleteFromBascket&itemid='+itemid+'&rand='+Math.random();
	};
};

function createOrderForm() {
	o('workFrame').src='/cgi-bin/kernel.pl?lib=garbage&method=sendBascket&rand='+Math.random();
};

var eFlag=0;
function doOrder(flag) {
	if (eFlag==1) {
		eFlag=0;
		return false;
	};
	if (o('o_name').value == null || o('o_name').value.length==0 ) {
		alert('Поле "Имя" обязательно к заполнению');
		o('o_name').focus();
		eFlag=1;
		return false;
	};

	if ( (o('o_email').value == null || o('o_email').value.length==0 ) && (o('o_phone').value == null || o('o_phone').value.length==0 ) ) {
		alert('Одно из полей "e-mail" или "телефон" обязательно к заполнению');
		o('o_phone').focus();
		eFlag=1;
		return false;
	};

	if (flag ) {
		return true;
	} else {
		o('orderForm').submit();
		return false;
	};

};

var cancel;
var flag=0;
var menuBlocks=new Array();
function menuOver(id) {
	for(var i=0; i<menuBlocks.length; i++ ) {	
		if ('menu'+menuBlocks[i] != id ) {
			if ( o('menu'+menuBlocks[i]) !=null) {
				o('menu'+menuBlocks[i]).style.display='none';
				o('p'+menuBlocks[i]).setAttribute('class', o('p'+menuBlocks[i]).getAttribute('oldClass') );
				o('p'+menuBlocks[i]).setAttribute('className', o('p'+menuBlocks[i]).getAttribute('oldClass') );
			};
		};
	};
	_showMenu(id);
};

function _showMenu(id) {
	cancel=id;
	if ( o('menu'+id ) !=null ) {
	    m_show('menu'+id );
		o('p'+id).setAttribute('class', 'overNow');
		o('p'+id).setAttribute('className', 'overNow');
		if (flag==0 ) window.setTimeout('_hideMenu("'+id+'")', 2000);
	};
	flag=1;
};

function _hideMenu(id) {
	m_hide('menu'+id );
};

document.onkeydown=searchProcessKey;
var position=-1;
function searchProcessKey(e) {
	if (null == e ) e=window.event;
	var code=e.keyCode;

//	debug(cancelRightNow+','+o('searchTextVariants').style.display+','+code);
	if ( cancelRightNow==1 ) return true;
	if ( o('searchTextVariants').style.display=='none' ) return true;
	if ( searchCurrentContent.length == 0 ) return true;


	if ( code==38 || code==40 ) {	
		var nStep=1;
		if ( code==38 ) nStep=-1;
		
		debug('pos='+position+',sCC='+searchCurrentContent.length+',nS='+nStep+','+code+',sCC[pos]='+searchCurrentContent[position]);

		if ( position+nStep == -1 || position+nStep>=searchCurrentContent.length ) return true;
		
		if (position >= 0 && position < searchCurrentContent.length ) {
			o('link'+searchCurrentContent[position]).setAttribute('class', '');
			o('link'+searchCurrentContent[position]).setAttribute('className', '');
		};
		position=position+nStep;		
		o('link'+searchCurrentContent[position]).setAttribute('class', 'overNow');
		o('link'+searchCurrentContent[position]).setAttribute('className', 'overNow');
	};
	if ( code == 13 ) {
		if ( position >=0  ) {
			document.location=o('link'+searchCurrentContent[position]).getAttribute('href');
		} else {
			searchAccept();
		};
	};
	return true;
};

var tabs=new Array();
function _getTab(len) {
	if (tabs[len]!=null ) {
	} else {	
		var tab='';
		for(var j=0; j<len; j++ ) {
			tab+='--';
			if (j>1 ) {
				tab+='--'
			};
		};
		tabs[len]=tab;
	};
	return tabs[len];
};

function searchBuildTree() {
	for(var i=0; i<searchTree.length; i++ ) {
		var a=document.createElement('A');
		a.innerHTML=_getTab(searchTree[i][4])+searchTree[i][0];
		a.setAttribute('value', searchTree[i][2] );
		a.id='searchTreeLink'+searchTree[i][2];
		o('searchTree_data').appendChild(a);
		a.onclick=new Function('var prefix="searchTree"; var obj=o("searchTreeLink'+searchTree[i][2]+'"); onSelect(prefix, obj); ');
	};
	initSelects();
};

function searchAccept() {	
	var loc='/catalog/?'+(o('searchTree').value!=0 && o('searchTree').value!=2395 ? 'categoryid='+o('searchTree').value:'')+'&CGI_FILTER_SET_Default_FIELD_title='+o('searchText').value;
	document.location=loc;
};

function doSubscribe() {
	o('workFrame').src='/cgi-bin/kernel.pl?lib=garbage&method=doSubscribe&email='+o('subscribeEmail').value+'&rand='+Math.random();
};

function utf8_encode(s) {
    var n = s.length, i, a = Array(), ch;
    for (i = 0; i < n; i++) {
        ch = s.charCodeAt(i);
        if (!(ch >> 7)) a[a.length] = ch; // один байт
        else if (!(ch >> 11)) {
            // два байта
            a[a.length] = 0xc0 | (ch >> 6);
            a[a.length] = 0x80 | (ch & 0x3f);
        } else if (!(ch >> 16)) {
            // три байта
            a[a.length] = 0xe0 | (ch >> 12);
            a[a.length] = 0x80 | ((ch >> 6) & 0x3f);
            a[a.length] = 0x80 | (ch & 0x3f);
        } else {
            // четыре байта
            a[a.length] = 0xf0 | (ch >> 18);
            a[a.length] = 0x80 | ((ch >> 12) & 0x3f);
            a[a.length] = 0x80 | ((ch >> 6) & 0x3f);
            a[a.length] = 0x80 | (ch & 0x3f);
        }
    }
    return a;
}

function base64_encode(a) {
    a=utf8_encode(a);
    var chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'.split('');
    var i,j, n = a.length, tmp = 0, s = Array();
    i = j = 0;
    while (i < n) {
        tmp = (tmp << 8) | a[i];
        if (i % 3 == 2) {
            s[s.length] = chars[(tmp >> 18) & 0x3f];
            s[s.length] = chars[(tmp >> 12) & 0x3f];
            s[s.length] = chars[(tmp >> 6) & 0x3f];
            s[s.length] = chars[tmp & 0x3f];
            j += 4;
//            if (j % 76 == 0) s[s.length] = '\r\n';
            tmp = 0;
        }
        i++;
    }
    switch (i % 3) {
    case 1 :
        s[s.length] = chars[(tmp >> 2) & 0x3f];
        s[s.length] = chars[(tmp << 4) & 0x3f];
        s[s.length] = '=';
        s[s.length] = '=';
        break;
    case 2 :
        s[s.length] = chars[(tmp >> 10) & 0x3f];
        s[s.length] = chars[(tmp >> 4) & 0x3f];
        s[s.length] = chars[(tmp << 2) & 0x3f];
        s[s.length] = '=';
        break;
    }
    return s.join('');
};


var bids=new Array();

function showBascketData(bid) {
	for(var i=0; i<bids.length; i++ ) {
		if (bids[i]!=bid ) {
			o('bid'+bids[i]).style.display='none';
		} else {
			_SetDisplay('bid'+bids[i], 'block');
		};
	};
	if (o('dataContainer'+bid).innerHTML!='' ) {
	} else {
		o('dataContainer'+bid).innerHTML='Идёт загрузка данных...';
		o('workFrame').src='/cgi-bin/kernel.pl?lib=garbage&method=getBascketRows&bid='+bid+'&rand='+Math.random();
	};
};