function CreatePopUpWindowFull(uri,cmd)
{
    var height=964, width=891, top = (screen.height - height)/2, left = (screen.width - width)/2;
    window.name='MainWindow';
    SecondWindow=window.open(uri,cmd,"top="+top+",left="+left+",height="+height+",width="+width+",title=no,scrollbars=yes,toolbar=no,menubar=no,location=no,directories=no,status=no");
    if (!SecondWindow)
    {
        alert('Включено блокирование всплывающих окон!\nВыключите блокирование и повторите команду.');
    }
}
function CreatePopUpWindow(uri)
{
    window.name='MainWindow';
    SecondWindow=window.open(uri,'PopWindow',"title=no,scrollbars=yes,toolbar=no");
}
function CreateShortPopUpWindow(uri)
{
    window.name='MainWindow';
    fakewindow=window.open(uri,'PopWindow',"height=400,width=400,dependent=yes,alwaysRaised=yes,title=no,scrollbars=no,toolbar=no");
}
//var Scroll = true;
var Prefix = "";
var Cookies = new Object();
var CnFlexTables = -1;	//сколько резиновых DIV
var divs;		//массив из всех объектов DIV
var ndivs;		//массив из № резиновых DIV
var hdivs;		//массив из их внутренних высот + scrollbar
var fixHeight;	//Занято не резиной
function headline(divnode)	//Удержание шапки таблицы при скроллинге
{
	divnode.firstChild.rows[0].style.top = divnode.scrollTop;
}
function OnWindowLoad(n_Divs)
{
	CnFlexTables = 0;
	divs = document.getElementsByTagName('DIV');
	ndivs = new Array();
	hdivs = new Array();
	fixHeight = (document.body.scrollHeight > document.body.clientHeight)?document.body.scrollHeight:document.body.clientHeight;
	for(var i=0; i<divs.length; i++)
		if(divs[i].id == 'Flex' && divs[i].style.display != "none")
		{
			ndivs.push(i);
			hdivs.push(divs[i].firstChild.scrollHeight+19);	//На полосу горизонтальной прокрутки
			fixHeight -= divs[i].offsetHeight;
			divs[i].value = CnFlexTables++;
		}
	var cc = document.cookie.split(";");
	for (var i=0; i<cc.length; i++)
	{
		var c = cc[i].replace(/^\s+|\s+$/g,"").split("=");
		if (c[0] == "Prefix")
			Prefix = c[1];
		else
			Cookies[c[0]] = c[1];
	}
}
function OnWindowResize()
{
	// if(typeof window['resize_window'] == 'function')	//Определена ли внутренняя ф-я resize_window() на дочерней странице
		// resize_window();
	// else
	if(CnFlexTables>0)	//Кол-во гибких таблиц на странице > 0
	{
		var yAvail = document.body.clientHeight - fixHeight;	//Осталось на резину
		var k;
		for(var i=0, j=CnFlexTables; j>0; i++)
		{
			k=Math.max(150,(yAvail/j--));
			k=Math.min(hdivs[i],k);
			yAvail-=k;
			divs[ndivs[i]].style.width=document.body.clientWidth-20;
			divs[ndivs[i]].style.height=k;
			divs[ndivs[i]].scrollTop = Cookies[CookieName("Scroll_"+i)];
			headline(divs[ndivs[i]]);
		}
	}
}
function CookieName(Name)	//сформировать имя куки
{
	return Prefix + Name + "_" + html_form_file + (document.all.pagination_current ? "_" + pagination_current.innerText : '');
}
function OnWindowUnload()	//запомнить положения прокрутки всех скроллируемых таблиц в куки
{
	for(var i=0; i<CnFlexTables; i++)
		document.cookie=CookieName("Scroll_"+i)+"="+divs[ndivs[i]].scrollTop+'; path=/';
}
function toggleOverflow()	//Переключатель режима скроллинга
{
	for(var i=0; i<CnFlexTables; i++)
		divs[ndivs[i]].style.overflow=(Scroll)? "visible" : "auto";
	Scroll = !Scroll;
}

var wasSelected = "";		//То, что было выбрано мышью левой кнопкой
function CheckSelection()	//по событию onMouseUp запоминаем выделение в собственный буфер
{
	if (this.event.button == 1)
		wasSelected = document.selection.createRange().text;
	return true;
}
function myCopy()			//по событию onMouseDown копируем свой буфер в Clipboard
{
	if (wasSelected.length && this.event.button == 1)
	{
		document.selection.empty();
		window.clipboardData.setData('Text',wasSelected);
	}
	return 1;
}

