// interface.js - interface for site
// written by Alexander Milkov (http://milkov.ru)

var infostring="";

// start list vars
var scrolltimer; var scrollreset; var scrollstep=0; var scrollimit=0; var scrollspeed=10; var scrollcur=-1;
var phototimer; var CURRENTPHOTO = 0; var photointime = 0;
// vitrina vars
var STARTINDX; var CURRENTPAGE; var TOTALPAGES;

// data arrays
var listdata = new Array();
var photodata = new Array();

var pagedata = new Array();
var pageindx = new Array();
var pagerndx = new Array();

// =================================================================== start list unique subs

function listpush(str){
	var i=listdata.length;
	listdata[i]=str;
	return;
}

function photopush(str){
	var i=photodata.length;
	photodata[i]=str;
}

function gostep(){
	var pos = parseInt(document.getElementById('iscroll').style.top); if(isNaN(pos)) pos=0
	if (scrollstep<0){
		if(pos>scrollimit){
			pos+=scrollstep;
			document.getElementById('iscroll').style.top=pos+"px";
			if(pos>scrollimit) scrolltimer = setTimeout('gostep()', scrollspeed)
		}
	} else {
		if(pos<scrollimit){
			pos+=scrollstep;
			document.getElementById('iscroll').style.top=pos+"px";;
			if(pos<scrollimit) scrolltimer = setTimeout('gostep()', scrollspeed)
		}
	}
}

function gover(num,speed){
	if (!speed) speed=10
	// reset all startovers
	for (i=0;i<listdata.length;i++){
		document.getElementById("sport_"+i).className='start';
	}
	
	document.getElementById("sport_"+num).className='startover';
	// calculate scrollstep and scrollimit
	var pos =  parseInt(document.getElementById('iscroll').style.top); if(isNaN(pos)) pos=0 
	scrollimit=-num*150;
	scrollstep=(pos>scrollimit?-speed:speed);
	clearTimeout(scrollreset);
	scrolltimer = setTimeout('gostep()', scrollspeed);
}
function gout(num){
	clearTimeout(scrollreset);
	document.getElementById("sport_"+num).className='start';
	if(scrollcur>=0){
		scrollreset=setTimeout('gover('+scrollcur+','+50+')', 3000);
	}
}

function gclick(num){
	var datasplit=new Array();
	datasplit=listdata[num].split("|");
	document.getElementById('sport').innerHTML = datasplit[0];
	document.getElementById('abstract').innerHTML = datasplit[2]+"<div class=s8 align=left><a class=linksel href='"+datasplit[3]+"'>&nbsp;ПЕРЕЙТИ &gt;&nbsp;</a></div>";
	scrollcur=num;
}

// ========================== loads

function start_album(){
	if (!photodata.length) return;
	if (!photointime){
		document.getElementById('playphoto').innerHTML = "&nbsp;";
		CURRENTPHOTO=0;
	}
	photointime = 1;
	var str = photodata[CURRENTPHOTO];
	var re = /\'([^\']*)\'/gi;
	var r = str.match(re);
	switchimg('',  eval(r[0]),  eval(r[1]));
	document.getElementById('imgalt').innerHTML = eval(r[2]);
	
	if (CURRENTPHOTO<photodata.length-1) CURRENTPHOTO++
	else CURRENTPHOTO=0
	
	if (photodata.length>1) phototimer = setTimeout('start_album()', 3000);
}

function load_photo(){
	for(i=0;i<listdata.length;i++){
		var tmp = new Array();
		tmp = listdata[i].split("|");
		if (tmp[4]){
			var tmp2 = new Array();
			tmp2 = tmp[4].split("<br>");
			for (j=0;j<tmp2.length;j++){
				if (tmp2[j]) photopush(tmp2[j]);
			}
		}
	}
}

function load_scroller(){
	var out="<div class=inscroller id=iscroll><table width=150 cellpadding=0 cellspacing=0 border=0>";
	for(i=0;i<listdata.length;i++){
		var tmp=new Array();
		tmp=listdata[i].split("|");
		out+="<tr><td width=150 height=150 background='/imgs/bg_cell.gif' align=center class=tdscroller><a href='"+tmp[3]+"'><img border=0 src='"+tmp[1]+"' alt='"+tmp[0]+"'></a></td></tr>";
	}
	out+="</table></div>";
	document.getElementById('cscroll').innerHTML = out;
}

function load_list(){
	
	var out="<table width=450 cellpadding=0 cellspacing=0 border=0>";
	out+="<tr><td width=150 height=450 valign=top>";
	for(i=0;i<listdata.length;i++){
		var datasplit=new Array();
		datasplit=listdata[i].split("|");
		out+="<div class=start id='sport_"+i+"' onmouseover='gover("+i+",10)' onmouseout='gout("+i+")' onclick='gclick("+i+")'>"+datasplit[0]+"</div>";
	}
	out+="</td><td width=150 height=450 valign=top><div id='cscroll' class=scroller></div></td><td width=150 height=450 valign=top><div id=sport class=catalog align=left>Категория</div><div class=rscroller id=abstract>Выберите категорию товара из списка слева.</div><div class=rscroller><br><a href=/gh.pdf><img src=/imgs/pdf.gif border=0><br>Скачать новый каталог'2011</a><br>(формат PDF, 31Mb)</div></td></tr>";
	
	out+="</table>";
	//alert(out);
	document.getElementById('vitrina').innerHTML = out;
	
}

function load_listdata(){
	
	var out="<table width=450 cellpadding=0 cellspacing=0 border=0 class=bgpreview>";
	out+="<tr><td colspan=3 height=20 width=450><div class=title align=right>Фотоальбом</div><div id=playphoto class=fronts align=right>&nbsp;</div></td></tr>";
	out+="<tr><td valign=top width=450 colspan=3 align=left><table border=0 cellpadding=0 cellspacing=0 width=100%><tr>";
	// default
	out+="<td valign=top width=85><div class=extraimg>";
	for(i=0;i<photodata.length;i++){
		out+=photodata[i];
	}
	out+="</div></td>";
	
	out+="<td valign=top width=350 colspan=2 height=292><div class=frontpreview align=right valign=top><img border=0 name='pageimg' src='/imgs/tr.gif' width=350 height=250></div><div id='imgalt' class=fronts align=right>&nbsp;</div></td>";
	
	out+="</tr></table></td></tr>";
	out+="<tr>";
	out+=infostring;
	out+="</tr>";
	
	out+="</table>";
	
	document.getElementById('largeview').innerHTML = out;
	setTimeout('start_album()', 100);
}

// =================================================================== vitrina unique subs

function pagepush(str){
	var i=pagedata.length;
	var tmp = new Array();
	tmp=str.split("=>");
	pagedata[i]=tmp[1];
	pageindx[i]=tmp[0];
	return;
}

// reverse data array
function reverse_dataindx(){
	for(i=0;i<pageindx.length;i++){
		pagerndx[pageindx[i]]=i;
	}
	//STARTINDX=pageindx[0];
}
// swiching image's decoration on vitrina
function switchimg(ref, obj, url){
	document.pageimg.src=url;
	allimg=document.images;
	for(i=0;i<allimg.length;i++){
		if(allimg[i].name.substr(0, 5)=="thumb"){
			eval("document."+allimg[i].name).className='nobordered';
		}
	}
	eval("document."+obj).className='bordered';
	// ref.blur();
	// v2.0 edition
	if (ref) {
		ref.blur();
		clearTimeout(phototimer);
		if (photointime){
			document.getElementById('playphoto').innerHTML = "<a href='#' onclick='start_album();return false;'>слайд-шоу</a>";
			photointime = 0;
		}
	}
}
// recalc thumb image url
function icon2thumb(str){
	//return "imgs/555.jpg";
	var re;
  	re = /small/i;
  	return str.replace(re, "thumb");
}
// recalc full image url
function icon2full(str){
	//return "imgs/55.jpg";
	var re;
  	re = /small/i;
  	return str.replace(re, "full");
}

function pageback(){
	if(CURRENTPAGE<=1) return;
	CURRENTPAGE--;
	load_vitrina();
	load_pagedata("", 0);
}
function pagefwrd(){
	if(CURRENTPAGE>=TOTALPAGES) return;
	CURRENTPAGE++;
	load_vitrina();
	load_pagedata("", 0);
}

// ========================== loads


// load vitrina - fix with pages!!!
function load_vitrina(){
	var start = (CURRENTPAGE-1)*9;
	var end = (pageindx.length<CURRENTPAGE*9?pageindx.length:CURRENTPAGE*9);
		
	var out="<table width=450 cellpadding=0 cellspacing=0 border=0>";
	var cnt=0;
	for (i=start;i<end;i++){
		if (!cnt % 3) {
			out+="<tr>";
		}
		var datasplit = pagedata[i].split("|");
		out+="<td width=150 height=150 background='/imgs/bg_cell.gif' align=center id='cell_"+pageindx[i]+"'><div class=icon>";
		out+="<div class=iconimg><a href='#' onclick='load_pagedata(this, "+pageindx[i]+");return false;'><img alt='"+datasplit[0]+"' border=0 src='"+datasplit[3]+"'></a></div>";
		out+="<div class=iconart id='art_"+pageindx[i]+"'>"+datasplit[1]+"</div></div></td>";
		cnt++;
		if(cnt % 3==0) {
			out+="</tr>";
		}
	}
	var pass=cnt;
	while (cnt % 3 !=0){
		out+="<td width=150 height=150 align=center></td>";
		cnt++;
	}
	if (pass<cnt) out+="</tr>"
	if (cnt<6) {out+="<tr><td colspan=3 height=150></td></tr>";cnt+=3;}
	if (cnt<9) {out+="<tr><td colspan=3 height=150></td></tr>";}

	out+="</table>";
	document.getElementById('vitrina').innerHTML = out;
	
	// pages
	var foo = "";
	if (CURRENTPAGE>1) foo+="<a href='#' onclick='pageback();return false;'><img border=0 src='/imgs/back.gif' align=absmiddle></a>"
	else foo+="<img border=0 src='/imgs/back0.gif' align=absmiddle>"
	foo+=" Стр. "+CURRENTPAGE+"/"+TOTALPAGES+" ";
	if (CURRENTPAGE<TOTALPAGES) foo+="<a href='#' onclick='pagefwrd();return false;'><img border=0 src='/imgs/forward.gif' align=absmiddle></a>"
	else foo+="<img border=0 src='/imgs/forward0.gif' align=absmiddle>"
	
	document.getElementById('pages').innerHTML = foo;
	// pages <img border=0 src=imgs/back.gif align=absmiddle> Стр. 1/3 <img border=0 src=imgs/forward.gif align=absmiddle>
	
}
// load preview
function load_pagedata(ref, num){
	
	if (!num) num=pageindx[(CURRENTPAGE-1)*9]
	var datasplit = pagedata[pagerndx[num]].split("|");
	var out="<table width=450 cellpadding=0 cellspacing=0 border=0 class=bgpreview>";
	out+="<tr><td colspan=2 height=20 width=450><div class=title align=right>"+datasplit[0]+"</div><div class=artical align=right>Артикул: "+datasplit[1]+"</div></td></tr>";
	out+="<tr><td valign=top width=100 align=left><div class=extraimg>";
	// default
	out+="<a href='#' onclick='switchimg(this, \"thumb_"+num+"\",\""+icon2full(datasplit[3])+"\");return false;'><img src='"+icon2thumb(datasplit[3])+"' class=bordered name='thumb_"+num+"' border=0></a><br>";
	
	out+=datasplit[4]+"</div></td><td width=350><div class=preview align=right valign=bottom><img name='pageimg' src='"+icon2full(datasplit[3])+"'></div></td></tr>";
	out+="<tr><td colspan=2 width=450><div class=description align=left><b>Описание:</b><br>"+datasplit[2]+"</div></td></tr>";
	out+="</table>";
	
	document.getElementById('largeview').innerHTML = out;
	
	
	var start = (CURRENTPAGE-1)*9;
	var end = (pageindx.length<CURRENTPAGE*9?pageindx.length:CURRENTPAGE*9);
	// clear iconart
	for(i=start;i<end;i++){
		document.getElementById("art_"+pageindx[i]).className='iconart';
		document.getElementById("cell_"+pageindx[i]).style.backgroundImage='url("/imgs/bg_cell.gif")';
	}
	document.getElementById("art_"+num).className='iconartsel';
	document.getElementById("cell_"+num).style.backgroundImage='url("/imgs/bg_sel.gif")';
	if (ref) ref.blur()
}

// =================================================================================================================

function load_default(){

	if (pagedata.length || listdata.length){
		// for list
		if (listdata.length){
			load_list();
			load_photo();
			load_scroller();
			load_listdata();
		} else {	// for page
			reverse_dataindx();
			TOTALPAGES = Math.ceil(pagedata.length/9);
			// check for hash value
			var hashvalue = parseInt(document.location.hash.substr(1));
			CURRENTPAGE = 1;
			if (isNaN(hashvalue)) {
				hashvalue=0;
			} else {
				if(!pagerndx[hashvalue]) hashvalue=0
				else CURRENTPAGE=Math.ceil(pagerndx[hashvalue]/9)
			}
			//alert(CURRENTPAGE);
			// load it!
			load_vitrina();
			load_pagedata("", hashvalue);
		}
		return;
	}
	// process errors!!!
	return;
}


