var single = -1;
var lists = new Array();
var start_k = 0;
var end_k = 0;
var book_div;
var book_list = new Array();
var book_div_visible = false;
var num_edge = false;
var readed_news = new Array();

window.onerror = function (a, b, c) {
	//alert("Ошибка JavaScript\n"+a+"\n"+b+"\n"+c+"\n");
	return true;
}

function load_row(rr,nn) {
if (nn == -1) {
	obj = document.getElementById('cont_'+rr+'_left');
	obj.innerHTML = '';
	obj = document.getElementById('cont_'+rr+'_middle');
	obj.innerHTML = '';
	obj = document.getElementById('cont_'+rr+'_right');
	obj.innerHTML = '';
	
	}else{
	obj = document.getElementById('cont_'+rr+'_left');
	text_fetch(obj,'num='+nn+'&row='+rr+'&type=full');
	obj = document.getElementById('cont_'+rr+'_middle');
	text_fetch(obj,'num='+Number(Number(nn)-1)+'&row='+rr);
	obj = document.getElementById('cont_'+rr+'_right');
	text_fetch(obj,'num='+Number(Number(nn)-2)+'&row='+rr);
	}	
}

document.onclick = function (event) {
event = event ? event : window.event;
if (book_div && !book_div_visible) {book_div.style.display = 'none';}
book_div_visible = false;
}

function load_last_num() {
var HTTPObject = false;
if (window.XMLHttpRequest) {HTTPObject = new XMLHttpRequest();}else
if (window.ActiveXObject) {HTTPObject = new ActiveXObject('Microsoft.XMLHTTP');}
if (HTTPObject) {	
	HTTPObject.open('POST','/view.php');
	HTTPObject.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	HTTPObject.onreadystatechange = function () {			
		if (HTTPObject.readyState == 4 && HTTPObject.status == 200) {
		str = HTTPObject.responseText;
		a = str.split(':');
		first_num = a[0];last_num = a[1];		
		}
	}
	HTTPObject.send('type=last_num');
}
}

function init() {
//Прочитанные статьи
sstt = document.cookie;
	if (sstt.indexOf(';') != -1){ 
	ar = sstt.split('; ');
	nn = -1;
	for (i=0;i<ar.length;i++)
		if (ar[i].split('=')[0] == 'readednews') {
			if (ar[i].split('=')[1]) {nn = ar[i].split('=')[1];
			nn = nn.split(',');
			for (j=0;j<nn.length;j++) readed_news[nn[j]] = 1;}}
	}
//Закладки
	getbookmarks();
//Запуск часов
	clockk();
//Динамическое заполнение меню
	var obj = new Object();
	obj = document.getElementById('num_left');
	if (obj) {
	num = obj.title;
	for (row = 1; row<15; row++) {
		load_row(row, num);
	}} else {
	obj	= document.getElementById('chap_menu');
	if (obj) {
		num = obj.title;
		text_fetch(obj, 'num='+num+'&type=chap_menu&open='+opened_chap_menu);
		}
	}
// Проверка на последний номер
	hgh = false;
	obj = document.getElementById('num_left'); if (obj) {hgh=3}
	obj = obj ? obj : document.getElementById('chap_menu');
	if (obj) {
	if (hgh) {}else{hgh=1;}
	test_last_but(obj.title,hgh);
	}
// Динамическое заполнение контента	
	if (document.getElementById('chap_text1')) {
	hh = 300;
	var obj = new Object(), obj1 = new Object(), obj2 = new Object();
	obj = document.getElementById('chap_cont');
	obj1 = document.getElementById('chap_text1');
	obj2 = document.getElementById('chap_text2');	
	obj1.innerHTML = obj.innerHTML;

	var heights = new Array();
	k = 0;lists[k] = '';heights[k] = 0;

	for (i = 0; i<obj1.childNodes.length; i++) {
			if (obj1.childNodes[i].offsetHeight)
			if (heights[k]+obj1.childNodes[i].offsetHeight< hh)
			{
			lists[k] += obj1.childNodes[i].className == 'image' ? '<div class=image>' : '<div>';
			lists[k] += obj1.childNodes[i].innerHTML+'</div>';
			heights[k] += obj1.childNodes[i].offsetHeight;
			//alert('k= '+k+' h= '+heights[k]+' html= '+lists[k]);
			}
			else{
			k++;lists[k] = '';heights[k] = 0;
			lists[k] += obj1.childNodes[i].className == 'image' ? '<div class=image>' : '<div>';
			lists[k] += obj1.childNodes[i].innerHTML+'</div>';
			heights[k] += obj1.childNodes[i].offsetHeight;
			}
	}
	obj1.innerHTML = lists[0];

	obj2.innerHTML = lists[1];
	start_k = 0;
	end_k = k;
	
	obj1.height = hh+50;
	obj2.height = hh+50;

	if (k > 1) {
		temp3 = document.getElementById('chap_text_next');
		temp3.style.visibility = 'visible';
		}else{if (k < 1) obj2.style.display = 'none'}
	}
}
window.onload = function () {
//Прочитанные статьи
sstt = document.cookie;
	if (sstt.indexOf(';') != -1){ 
	ar = sstt.split('; ');
	nn = -1;
	for (i=0;i<ar.length;i++)
		if (ar[i].split('=')[0] == 'readednews') {
			if (ar[i].split('=')[1]) {nn = ar[i].split('=')[1];
			nn = nn.split(',');
			for (j=0;j<nn.length;j++) readed_news[nn[j]] = 1;}}
	}
//Закладки
	getbookmarks();
//Запуск часов
	clockk();
//Динамическое заполнение меню
	var obj = new Object();
	obj = document.getElementById('num_left');
	if (obj) {
	/*num = obj.title;
	for (row = 1; row<15; row++) {
		load_row(row, num);
	}*/} else {
	obj	= document.getElementById('chap_menu');
	if (obj) {
		num = obj.title;
		text_fetch(obj, 'num='+num+'&type=chap_menu&open='+opened_chap_menu);
		}
	}
// Проверка на последний номер
	hgh = false;
	obj = document.getElementById('num_left'); if (obj) {hgh=3}
	obj = obj ? obj : document.getElementById('chap_menu');
	if (obj) {
	if (hgh) {}else{hgh=1;}
	test_last_but(obj.title,hgh);
	}
// Динамическое заполнение контента	
	if (document.getElementById('chap_text1')) {
	hh = 300;
	var obj = new Object(), obj1 = new Object(), obj2 = new Object();
	obj = document.getElementById('chap_cont');
	obj1 = document.getElementById('chap_text1');
	obj2 = document.getElementById('chap_text2');	
	obj1.innerHTML = obj.innerHTML;

	var heights = new Array();
	k = 0;lists[k] = '';heights[k] = 0;

	for (i = 0; i<obj1.childNodes.length; i++) {
			if (obj1.childNodes[i].offsetHeight)
			if (heights[k]+obj1.childNodes[i].offsetHeight< hh)
			{
			lists[k] += obj1.childNodes[i].className == 'image' ? '<div class=image>' : '<div>';
			lists[k] += obj1.childNodes[i].innerHTML+'</div>';
			heights[k] += obj1.childNodes[i].offsetHeight;
			//alert('k= '+k+' h= '+heights[k]+' html= '+lists[k]);
			}
			else{
			k++;lists[k] = '';heights[k] = 0;
			lists[k] += obj1.childNodes[i].className == 'image' ? '<div class=image>' : '<div>';
			lists[k] += obj1.childNodes[i].innerHTML+'</div>';
			heights[k] += obj1.childNodes[i].offsetHeight;
			}
	}
	obj1.innerHTML = lists[0];

	obj2.innerHTML = lists[1];
	start_k = 0;
	end_k = k;
	
	obj1.height = hh+50;
	obj2.height = hh+50;

	if (k > 1) {
		temp3 = document.getElementById('chap_text_next');
		temp3.style.visibility = 'visible';
		}else{if (k < 1) obj2.style.display = 'none'}
	}
}

function updateBookStr() {
	temp5 = document.getElementById('unreaded_bookmarks');
	if (temp5 == null) return false;
	aa = 0;
	for (i = 0; i<book_list.length; i++) {
	a = book_list[i].split('=');
	if (readed_news[a[0]] != 1) aa++;
	}
	temp5.innerHTML = aa;
	temp5 = document.getElementById('all_bookmarks');
	if (temp5 == null) return false;
	temp5.innerHTML = book_list.length;

	temp5 = document.getElementById('word_bookmarks');
	if (temp5 == null) return false;
	cc = book_list.length;
	if ((cc % 10 > 1)&&(cc % 10 < 5)) {word = 'ьи';}else{
	if ((cc % 10 == 1)) {word = 'ья';}else{word = 'ей';}
	}
	if ((cc > 9)&&(cc < 21)) {word = 'ей';}
	temp5.innerHTML = word;
	
	temp5 = document.getElementById('word1_bookmarks');
	if (temp5 == null) return false;
	if (aa % 10 == 1) {word = 'а';}else{word = 'ы';}
	temp5.innerHTML = word;
}

function getbookmarks () {
var HTTPObject = false;
if (window.XMLHttpRequest) {HTTPObject = new XMLHttpRequest();}else
if (window.ActiveXObject) {HTTPObject = new ActiveXObject('Microsoft.XMLHTTP');}
if (HTTPObject) {	
	HTTPObject.open('POST','/bookmarks.php');
	HTTPObject.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	HTTPObject.onreadystatechange = function () {			
		if (HTTPObject.readyState == 4 && HTTPObject.status == 200) {
		var str = new String(HTTPObject.responseText);
				
		if (str != '') {
		temp2 = str.split(';');
		book_list = [];
		while(temp2.length > 0) {
			a = temp2.shift();
			book_list.push(a);
			}
		}
		updateBookStr();
		if (preaded != -1) {read_news(preaded);}	
		}
	}
	HTTPObject.send('type=get');
}
}

function delbookmarks(idd) {
a = book_list[idd].split('=');
itemm = a[0];

elem = document.getElementById(a[0]);
if (elem) 
	for (i = 0; i<elem.parentNode.childNodes.length; i++) 
	if (elem.parentNode.childNodes[i].tagName == 'IMG') elem.parentNode.childNodes[i].style.visibility = 'visible';
elem = document.getElementById('hh_'+a[0]);
if (elem)
	for (i = 0; i<elem.parentNode.childNodes.length; i++) 
	if (elem.parentNode.childNodes[i].tagName == 'IMG') elem.parentNode.childNodes[i].style.visibility = 'visible';


var temp = new Array;
i = 0;
while(book_list.length > 0) {
			a = book_list.shift();
			if (i != idd) {temp.push(a);}
			i++;
		}
book_list = temp;

updateBookStr();
syncCookie();
}

function text_fetch (obj, params) {
obj.innerHTML = '<font style=\'font-family: Tahoma; font-size: 11px; color: #890001;\'>Загрузка...</font>';
var HTTPObject = false;
if (window.XMLHttpRequest) {HTTPObject = new XMLHttpRequest();}else
if (window.ActiveXObject) {HTTPObject = new ActiveXObject('Microsoft.XMLHTTP');}
if (HTTPObject) {	
	HTTPObject.open('POST','/view.php');
	HTTPObject.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	HTTPObject.onreadystatechange = function () {			
		if (HTTPObject.readyState == 4 && HTTPObject.status == 200) {
		var str = new String(obj.id);
		if ((single == -1)||(single == str.substring(5,str.lastIndexOf('_')))||(str.charAt(0) == 'n'))
		obj.innerHTML = HTTPObject.responseText;
		}
	}
	HTTPObject.send(params);
}
}

function next(elem, delta, newnum) {
	//Обновление последнего номера издания
	//load_last_num();
	//Основная часть
	if (elem.parentNode.tagName == 'TD') {
			single = -1;
			var obj = new Object();
			obj = document.getElementById('num_left');
			num = newnum ? Number(newnum) : Number(obj.title)+Number(delta);
			test_last_but(num,3);
			obj.title = num;
			text_fetch(obj, 'num='+num+'&type=date');
			obj = document.getElementById('num_middle');
			text_fetch(obj, 'num='+Number(Number(num)-1)+'&type=date');
			obj = document.getElementById('num_right');
			text_fetch(obj, 'num='+Number(Number(num)-2)+'&type=date');
			for (row = 1; row<15; row++) {
					load_row(row, num);
			}
	} else {
		if ((elem.parentNode.tagName == 'DIV')&&(elem.parentNode.className == 'polosa')) {
			var str = new String(elem.parentNode.id);
			var obj = new Object();
			obj = document.getElementById('num_left');
			num = newnum ? Number(newnum) : Number(obj.title)+Number(delta);
			test_last_but(num,3);
			obj.title = num;
			text_fetch(obj, 'num='+num+'&type=date');
			obj = document.getElementById('num_middle');
			text_fetch(obj, 'num='+Number(Number(num)-1)+'&type=date');
			obj = document.getElementById('num_right');
			text_fetch(obj, 'num='+Number(Number(num)-2)+'&type=date');
			for (row = 1; row<15; row++) {
				if (row == Number(str.substr(4))) {
					load_row(row, num);}else{load_row(row,-1);}
			}
			single = Number(str.substr(4));
			}else {
				if ((elem.parentNode.tagName == 'DIV')&&(elem.parentNode.className == 'header')) {
					var obj = new Object();
					obj = document.getElementById('chap_menu');
					num = newnum ? Number(newnum) : Number(obj.title)+Number(delta);
					test_last_but(num,1);
					obj.title = num;
					text_fetch(obj, 'num='+num+'&type=chap_menu');
					obj = document.getElementById('chap_menu_header');
					text_fetch(obj, 'num='+num+'&type=date');
				}
				}
		}
}

function fast_next (elem,dd) {
/*for (i = 0; i < elem.parentNode.childNodes.length; i++) {
	if (elem.parentNode.childNodes[i].tagName == 'INPUT') val = elem.parentNode.childNodes[i].value;
	}*/
if(preaded != -1) dd=0;
val = elem;
aa = Number(dd)+Number(first_num);
if (val < aa) val=aa;
if (val > last_num) return false;
for (i = 0; i < document.images.length; i++) {
	if ((document.images[i].alt == '<<')||(document.images[i].alt == '>>')) {next(document.images[i], null, val); return true;}
}
}

// Динамическое заполнение контента	
function dyn_text_prev() {
	if (start_k-2 < 0) return false;
	obj1 = document.getElementById('chap_text1');
	obj2 = document.getElementById('chap_text2');
	obj1.innerHTML = lists[start_k-2] ? lists[start_k-2] : start_k-2;
	obj2.innerHTML = lists[start_k-1] ? lists[start_k-1] : start_k-1;
	if (start_k-2 == 0) {
		temp = document.getElementById('chap_text_prev');
		temp.style.visibility = 'hidden';}
	temp = document.getElementById('chap_text_next');
	temp.style.visibility = 'visible';
	start_k--;start_k--;	
}
function dyn_text_next() {
	if (start_k+2 > end_k) return false;
	obj1 = document.getElementById('chap_text1');
	obj2 = document.getElementById('chap_text2');
	obj1.innerHTML = lists[start_k+2] ? lists[start_k+2] : '';
	obj2.innerHTML = lists[start_k+3] ? lists[start_k+3] : '';
	if (start_k+3 >= end_k) {
		temp = document.getElementById('chap_text_next');
		temp.style.visibility = 'hidden';}
	temp = document.getElementById('chap_text_prev');
	temp.style.visibility = 'visible';
	start_k++;start_k++;
}

//Закладки
function bookmark_add(elem) {
	
for (i = 0; i<elem.parentNode.childNodes.length; i++) 
	if (elem.parentNode.childNodes[i].tagName == 'A')
		{
		idd = elem.parentNode.childNodes[i].id;
		reff = elem.parentNode.childNodes[i].href;
		rr = false;
		if (idd.indexOf('hh_') != -1) {idd = idd.slice(3); obj = document.getElementById(idd); reff = obj.href; 
			for (j = 0; j<obj.parentNode.childNodes.length; j++) 
			if (obj.parentNode.childNodes[j].tagName == 'IMG') obj.parentNode.childNodes[j].style.visibility = 'hidden';
			}
		obj = document.getElementById('hh_'+elem.parentNode.childNodes[i].id);
		if (obj) {for (j = 0; j<obj.parentNode.childNodes.length; j++) if (obj.parentNode.childNodes[j].tagName == 'IMG') 
			obj.parentNode.childNodes[j].style.visibility = 'hidden';}
		
		indexx = book_list.push(idd+'='+elem.parentNode.childNodes[i].innerHTML+'='+reff);
		//addbookmarks (elem.parentNode.childNodes[i].id);
		syncCookie();
		updateBookStr();
		}
elem.style.visibility = 'hidden';
}

function bookmark_view_1(ev,elem) {
if (!book_div) 
	{
		book_div = document.createElement('DIV');
		book_div.className = 'bookmark_menu';
	}else {
		if (book_div.style.display != 'none') 
			{book_div.style.display = 'none';return false;}
			else{book_div.style.display = 'block';}}
book_div.style.top = ev.clientY+10;
book_div.style.top = book_div.style.top ? book_div.style.top : ev.clientY+10+'px;';
book_div.style.left = ev.clientX;
book_div.style.left = book_div.style.left ? book_div.style.left : ev.clientX+'px;';

book_div.innerHTML = "";
for (i = 0; i<book_list.length; i++) {
	a = book_list[i].split('=');
	book_div.innerHTML += readed_news[a[0]] != 1 ? "<p class='unread'><span title='удалить закладку' id='"+i+"' onclick='delbookmarks(this.id)'>x</span><a href="+a[2]+">"+a[1]+"</a></p>" : "<p><span title='удалить закладку' id='"+i+"' onclick='delbookmarks(this.id)'>x</span><a href="+a[2]+">"+a[1]+"</a></p>";
	}
if (book_list.length == 0) {book_div.innerHTML = "<p>&nbsp;&nbsp;Закладок нет</p>"}
document.body.appendChild(book_div);
book_div_visible = true;
}

function test_last_but (num,tt) {
//alert(last_num+'>'+first_num+' '+num_edge);
if (num_edge) {
	for (i = 0; i < document.images.length; i++) {
	if ((document.images[i].alt == '<')||(document.images[i].alt == '<<')||(document.images[i].alt == '>')||(document.images[i].alt == '>>')) document.images[i].style.visibility = 'visible';
	}
	num_edge = false;
	}
if ((Number(num)+1) > last_num) {a = '<';}else{
	if (num-tt < first_num) {a = '>';}else{return false}}

for (i = 0; i < document.images.length; i++) {
	if ((document.images[i].alt == a)||(document.images[i].alt == a+''+a)) document.images[i].style.visibility = 'hidden';
	}
num_edge = true;
}

function syncCookie() {
var str = new String();
str = '';
for (i = 0; i < book_list.length; i++) {
str += book_list[i].split('=')[0];
if (i < book_list.length-1) str += ',';
}
var curdate = new Date();
curdate.setYear(2100);
document.cookie = "bookmarks="+str+"; expires=" +curdate.toGMTString();
str = '';
for (i=0;i<readed_news.length;i++) if (readed_news[i] == 1) str += i+',';
str = str.substr(0,str.length-1);
document.cookie = "readednews="+str+"; expires=" +curdate.toGMTString();
}

function read_news(idd) {
	readed_news[idd] = 1;
	updateBookStr();
	syncCookie();
}

function unread_news(elem) {
	for (i = 0;i<elem.childNodes.length;i++) if (elem.childNodes[i].tagName == 'IMG') {obj = elem.childNodes[i];}
	if (elem.title == 'checked') {
		readed_news[preaded] = 0;
		obj.src='/images/hat_check.gif'; obj.alt = '()';
		elem.title = 'unchecked';
	}else{
	if (elem.title == 'unchecked') {
		readed_news[preaded] = 1;
		obj.src='/images/hat_check_sel.gif'; obj.alt = '(\/)';
		elem.title = 'checked';
	}}
	updateBookStr();
	syncCookie();
}

