//////////////////
// время - дата //
//////////////////

var Flag = 1;
var dTime = 0;

function timerstart(serv_tm) {
	month_r = Array("января",
			        "фeвраля",
			        "марта",
			        "апреля",
			        "мая",
			        "июня",
			        "июля",
			        "августа",
			        "сентября",
			        "октября",
			        "ноября",
			        "декабря");

	  dow_r = Array("воскресенье",
	                "понедельник",
	                "вторник",
	                "среда",
	                "четверг",
	                "пятница",
                    "суббота");

	var time = new Date();
	if (serv_tm != undefined)
	{
		dTime = serv_tm * 1000 - time.getTime();
		AssignProgramList('list_prog');
	}
	time = new Date(time.getTime() + dTime);
	var year=time.getYear();
	var month=time.getMonth();
	var dow=time.getDay();
 	var date=time.getDate();
	var hour = time.getHours();
	var minute = time.getMinutes();
	var second = time.getSeconds();

	year = year % 100;
	year = ((year < 50) ? (2000 + year) : (1900 + year));

    tempTime = hour;
	tempTime += ((minute < 10) ? ":0" : ":") + minute;

//	tempTime += ((second < 10) ? ":0" : ":") + second;

	temp = date + " " + month_r[month] + " " + year;

	idT = setTimeout("timerstart();", 1000);

	document.getElementById("idKrasnTime").innerHTML  = tempTime;
	parent.header.document.getElementById("idKrasnDate").innerHTML  = "<NOBR>" + temp + "</NOBR>";
	document.getElementById("idWeek").innerHTML  = dow_r[dow];
}

///////////////////////////////
// загрузка программы в слой //
///////////////////////////////
var DatePro = new Array();   // дата передачи
var DateProEnd = new Array();// дата окончания передачи
var TimePro = new Array();   // время передачи в формате hh:mm
var NamePro = new Array();   // название передачи
var _N = 4;                  // количество строк в списке программы
var _pos = 0;                // текущая позиция
var _start = 0;              // начало списка
var _end = _N;               // конец списка


// заполняем массив данных
function SetData(_y1, _m1, _d1, _h1, _min1, _y2, _m2, _d2, _h2, _min2, _name)
{
	var _today = new Date(_y1, _m1-1, _d1, _h1, _min1, 0);
	_nd = _today.getTime();
	DatePro.push(_nd);
	_today = new Date(_y2, _m2-1, _d2, _h2, _min2, 0);
	_ndend = _today.getTime();
	DateProEnd.push(_ndend);
	_time = _h1;
	_time += ((_min1 < 10) ? ":0" : ":") + _min1;
	TimePro.push(_time);
	NamePro.push(_name);
	_end = (_N <= DatePro.length - 1)?_N:(DatePro.length - 1);
}

// создаем список программ
function CreateList(_blank_)
{
	var _txt = "";
	if ((_end > 0) && (_pos < DatePro.length))
	{
		while ((_pos > _start) && (_end < DatePro.length))
		{
			_start ++;
		}
		_end = (_start + _N <= DatePro.length - 1)?(_start + _N):(DatePro.length - 1);
		_txt = "<table id='prog'>";
		for (var i = _start; i < _end; i++)
		{
			if (NamePro[i].length > 26) {_end--; if ((i >= _end)&&(i > _N - 1)) break;}          // ?????
			_sel = (((i == _pos) && !_blank_)?"sel":"");
			if (_sel == "sel")
			{                _txt += "<tr><td class='sel_prog_1'></td><td class='sel'></td><td class='sel'></td><td class='sel_prog_2'></td></tr>";
                _txt += "<tr class='sel'><td></td><td class='prog_tm_sel'>" + TimePro[i] + "</td><td>" + NamePro[i] + "</td><td></td></tr>";
                _txt += "<tr><td class='sel_prog_4'></td><td class='sel'></td><td class='sel'></td><td class='sel_prog_3'></td></tr>";
			}
			else
			{
				_txt += "<tr><td></td><td class='prog_tm'>" + TimePro[i] + "</td><td>" + NamePro[i] + "</td><td></td></tr>";
			}
		}
		_txt += "</table>";
	}
	return _txt;
}


// выводим текст в слой программы передач
function AssignProgramList(_div_id)
{
	if ((_pos < DatePro.length - 1) && (DatePro.length > 0))
	{
        var _today = new Date();
        var nowTime = _today.getTime() + dTime;
        var _blank_ = false;
		while (DatePro[_pos + 1] <= nowTime)
        {
        	_pos ++;
        	if (_pos == DatePro.length - 1) break;
        }

        if (((DateProEnd[_pos] <= nowTime) && (DatePro[_pos + 1] > nowTime)) || ((DateProEnd[_pos] > nowTime) && (DatePro[_pos] > nowTime)))
       	{
        	if ((_pos < DatePro.length - 1) && (DateProEnd[_pos] <= nowTime)) _pos ++;
         	_blank_ = true;
       	}

        var _txt = CreateList(_blank_);
        document.getElementById(_div_id).innerHTML = _txt;

        if (_pos < DatePro.length - 1)
        {
	       	if (_blank_)
	       	{
	       		dt_prog = DatePro[_pos] - nowTime;
	       	}
	       	else
	       	{
	       		dt_prog = DateProEnd[_pos] - nowTime;
	       	}
        	idProg = setTimeout("AssignProgramList('list_prog')", dt_prog);
        }
        else
        {
        	clearTimeout(idProg);
        	document.location="../_modules/navi.php";
        }
	}
}

// выводим текст в слой банера
function AssignToDIV(_div_id, _txt)
{
	document.getElementById(_div_id).innerHTML = _txt;
}

////////////////////////////////////////////////////////////////////////////////
//                    Тематическая картинка в заголовке                       //
////////////////////////////////////////////////////////////////////////////////
// загрузка картинок
function preLoad(N, FName, w, h, FNameX, xw, xh, attrib)
{
	if (document.images)
	{
        if (top.header.oldSection == undefined)
        {
        	top.header.oldSection = 0;
        	top.header.Section = 0;
        	top.header.imgItem = new Object();
        	top.header.imgItemX = new Object();
        	top.header.imgArr = new Array();
        	top.header.imgArrX = new Array();
        	top.header.imgFl = new Array();
        	top.header.imgW = new Array();
        	top.header.imgH = new Array();
        	top.header.imgWX = new Array();
        	top.header.imgHX = new Array();
        	top.header.Attrib = new Array();
        }
        top.header.imgW[N] = w;
        top.header.imgH[N] = h;
        top.header.imgWX[N] = xw;
        top.header.imgHX[N] = xh;
        top.header.imgArr[N] = FName;
        top.header.imgArrX[N] = FNameX;

        top.header.imgFl[N] = (FNameX == "NULL")?-1:-2;
        top.header.Attrib[N] = attrib;

    }
}

function imgAssign(N)
{
    if (document.images)
	{
    	if (top.header.imgFl[N] == -2)
    	{
    		top.header.imgItemX[N] = new Image(top.header.imgWX[N], top.header.imgHX[N]);
    		top.header.imgItemX[N].src = top.header.imgArrX[N];
    	}

    	top.header.imgItem[N] = new Image(top.header.imgW[N], top.header.imgH[N]);
    	top.header.imgItem[N].onload = EvSet;
    	top.header.imgItem[N].name = "imgItem" + N;
    	top.header.imgItem[N].src = top.header.imgArr[N];

    	top.header.imgFl[N] = Math.abs(top.header.imgFl[N]);
	}
}
function EvSet()
{
	SetTitleSection(top.header.Section, 1);
	return true;
}

function ItemInSection(_num)
{
	switch(_num) {
		case 1:
			tmp = 1;
			break;
		case 2:
			tmp = 1;
			break;
		case 3:
			tmp = 1;
			break;
		case 10:
			tmp = 10;
			break;
		case 11:
			tmp = 10;
			break;
		case 20:
			tmp = 20;
			break;
		case 21:
			tmp = 20;
			break;
		case 22:
			tmp = 20;
			break;
		case 24:
			tmp = 24;
			break;
		case 25:
			tmp = 24;
			break;
		case 26:
			tmp = 24;
			break;
		default:
            tmp = _num;
	}
	return tmp;
}

// выводим картинку раздела в заголовке
// _num - номер картинки
// attr: 1 - разрешение на смену
function SetTitleSection(_num, attr)
{
  if ((document.getElementById))
  {
	  if (top.header.imgFl[_num] > 0)
	  {
		if ((ItemInSection(_num) != ItemInSection(top.header.oldSection))||(attr == 1))
		{
			_txt = "<img id='img_item' src='"+top.header.imgItem[_num].src+"' width='"+top.header.imgItem[_num].width+"' height='"+top.header.imgItem[_num].height+"'>"
	//		parent.header.document.getElementById('img_item').src = imgItem[_num].src;
			parent.header.document.getElementById('LogoItem').innerHTML = _txt;

	        top.header.oldSection = _num;

	        if (top.header.imgFl[_num] == 2)
	    	{
	        	_sel = (top.header.Attrib[_num] == 1)?" class='transp_item' ":"";
	        	_txt = "<img id='img_itemX'"+_sel+"src='"+top.header.imgItemX[_num].src+"' width='"+top.header.imgItemX[_num].width+"' height='"+top.header.imgItemX[_num].height+"'>"
	     	}
	     	else _txt = "";
	     	parent.header.document.getElementById('LogoItemX').innerHTML = _txt;

	     	// смена головных картинок страницы    /////////////////////////////////
	     	_tm_intrv = 12000;


	     	top.header.clearTimeout(top.header.old_idItem);
	     	top.header.old_idItem = -1;
	     	// зацикливание
	     	switch(_num) {
				case 1:
	        		idItem = top.header.setTimeout("SetTitleSection("+(_num+1)+", 1)", _tm_intrv);
	        		break;
	    		case 2:
	                idItem = top.header.setTimeout("SetTitleSection("+(_num+1)+", 1)", _tm_intrv);
	        		break;
	    		case 3:
	                idItem = top.header.setTimeout("SetTitleSection("+1+", 1)", _tm_intrv);
	      			break;
	      		case 10:
	                idItem = top.header.setTimeout("SetTitleSection("+(_num+1)+", 1)", _tm_intrv);
	      			break;
	      		case 11:
	                idItem = top.header.setTimeout("SetTitleSection("+10+", 1)", _tm_intrv);
	      			break;
	      		case 20:
	                idItem = top.header.setTimeout("SetTitleSection("+(_num+1)+", 1)", _tm_intrv);
	      			break;
	      		case 21:
	                idItem = top.header.setTimeout("SetTitleSection("+(_num+1)+", 1)", _tm_intrv);
	      			break;
	      		case 22:
	                idItem = top.header.setTimeout("SetTitleSection("+20+", 1)", _tm_intrv);
	      			break;
	      		case 24:
	                idItem = top.header.setTimeout("SetTitleSection("+(_num+1)+", 1)", _tm_intrv);
	      			break;
	      		case 25:
	                idItem = top.header.setTimeout("SetTitleSection("+(_num+1)+", 1)", _tm_intrv);
	      			break;
	      		case 26:
	                idItem = top.header.setTimeout("SetTitleSection("+24+", 1)", _tm_intrv);
	      			break;
	//    		default:
			}
	        top.header.old_idItem = idItem;
	        ////////////////////////////////////////////////////////////////////////
		}
	  }
	  else
	  {
	     imgAssign(_num);
	     top.header.Section = _num;
	  }
  }
}
////////////////////////////////////////////////////////////////////////////////
var posAnn = 0;
var nAnn = 0; // всего анонсов
var annItem = new Array();
var annImg = new Object();
var first = true;
var i = 0;

// загрузка анонсов
function preLoadAnn(tx1, FName, tx2)
{
    nAnn++;
    annImg[nAnn] = new Image();
    annImg[nAnn].src = FName;

    annItem[nAnn] = tx1 + annImg[nAnn].src + tx2;
}

// выводим анонсы
function SetAnnonces(N_ann)
{
	if (document.getElementById)
	{
    	if (first)
    	{
    	for (i = 1; i <= N_ann; i++)
    	{
        	posAnn = ((posAnn < nAnn)?(posAnn+1):1);
            document.getElementById("idAnn" + i).innerHTML = annItem[posAnn];
    	}
    	first = false;
    	}
    	else
    	{
    		posAnn = ((posAnn < nAnn)?(posAnn+1):1);
    		i = ((i < N_ann)?(i+1):1);
            document.getElementById("idAnn" + i).innerHTML = annItem[posAnn];
    	}
		tm_int = ((i == N_ann)?((Math.round(Math.random() * 5) + 5) * 1000):(200));
    	idProg = setTimeout("SetAnnonces("+N_ann+")", tm_int);
	}
}

////////////////////////////////////////////////////////////////////////////////
//
function Href_over(id)
{
	id.className="href_mid_sel";
}

//
function Href_out(id)
{
	id.className="href_mid";
}


function openWin(windowURL, windowName, windowFeatures)
{
    return window.open(windowURL, windowName, windowFeatures) ;
}