﻿Cookies = (function() {
	return {
		set:function(name,value,min) {
			if (min) {
				var date = new Date();
				date.setTime(date.getTime()+(min*60*1000));
				var expires = "; expires="+date.toGMTString();
			}
			else var expires = "";
			document.cookie = name+"="+value+expires+"; path=/";
		},
		get:function(name) {
			var nameEQ = name + "=";
			var ca = document.cookie.split(';');
			for(var i=0;i < ca.length;i++) {
				var c = ca[i];
				while (c.charAt(0)==' ') c = c.substring(1,c.length);
				if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
			}
			return null;
		},
		rem:function(name) {
			set(name,"",-1);
		}
	}
})();
NumberChanger = (function() {
	var prv = {
		matrix:{
			'3':[
				[0,0,1,1,1,1,1,0,0],
				[0,1,1,1,1,1,1,1,0],
				[1,1,1,0,0,0,1,1,1],
				[0,0,0,0,0,0,1,1,1],
				[0,0,0,1,1,1,1,1,1],
				[0,0,0,1,1,1,1,1,1],
				[0,0,0,0,0,0,1,1,1],
				[1,1,1,0,0,0,1,1,1],
				[0,1,1,1,1,1,1,1,0],
				[0,0,1,1,1,1,1,0,0]
			],
			'6':[
				[0,0,1,1,1,1,1,0,0],
				[0,1,1,1,1,1,1,1,0],
				[1,1,1,0,0,0,1,1,1],
				[1,1,1,0,0,0,0,0,0],
				[1,1,1,1,1,1,1,0,0],
				[1,1,1,1,1,1,1,1,0],
				[1,1,1,0,0,0,1,1,1],
				[1,1,1,0,0,0,1,1,1],
				[0,1,1,1,1,1,1,1,0],
				[0,0,1,1,1,1,1,0,0]
			],
			'0':[
				[0,0,1,1,1,1,1,0,0],
				[0,1,1,1,1,1,1,1,0],
				[1,1,1,0,0,0,1,1,1],
				[1,1,1,0,0,0,1,1,1],
				[1,1,1,0,0,0,1,1,1],
				[1,1,1,0,0,0,1,1,1],
				[1,1,1,0,0,0,1,1,1],
				[1,1,1,0,0,0,1,1,1],
				[0,1,1,1,1,1,1,1,0],
				[0,0,1,1,1,1,1,0,0]
			]
		},
		images:[
			'/_common/images/dots/g.gif',
			'/_common/images/dots/o.gif',
			'/_common/images/dots/o2g.gif',
			'/_common/images/dots/g2o.gif'
		]
	};
	var pbl = {
		set:false,
		init:function() {
			var d = document.getElementById('bigimage');
			if (d) {
				var lastNum = Cookies.get('bignum');
				var newNum = d.title;
				if (lastNum && lastNum!=newNum) {
					this.setMatrix(d,this.difMatrix(prv.matrix[lastNum],prv.matrix[newNum]),prv.images,100);
				} else {
					this.setMatrix(d,prv.matrix[newNum],prv.images);
				}
				Cookies.set('bignum',newNum,60);
			}
		},
		setMatrix:function(elm,mtrx,imgs,delay) {
			this.traceMatrix(mtrx);
			var c = 1;
			for (var i=0,j=mtrx.length;i<j;i++) {
				for (var k=0,l=mtrx[i].length;k<l;k++) {
					var id = 'm-'+i+'-'+k;
					if (!this.set) {
						var n = document.createElement('img');
						n.id = id;
						n.className = 'dot';
						elm.appendChild(n);
					} else {
						var n = document.getElementById(id);
					}
					var me = mtrx[i][k];
					if ((me+'')!==n.alt) {
						/*if (delay && me>1) {
							setTimeout(this.genChange(n,imgs,me),c*delay);
							c = c+1;
						} else {*/
							n.src = imgs[me];
							n.alt = me;
						//}
					}
				}
			}
			this.set = true;
		},
		genChange:function(elm,imgs,me) {
			return function() {
				elm.src = imgs[me];
				elm.alt = me;
				setTimeout(function() {elm.src = imgs[me-2];},500);
			}
		},
		difMatrix:function(from,to) {
			for (var i=0,j=from.length;i<j;i++) {
				for (var k=0,l=from[i].length;k<l;k++) {
					if (from[i][k]==1 && to[i][k]==0) to[i][k] = 2;
					else if (from[i][k]==0 && to[i][k]==1) to[i][k] = 3;
				}
			}
			return to;
		},
		traceMatrix:function(mtrx) {
			var s = '';
			for (var i=0,j=mtrx.length;i<j;i++) {
				for (var k=0,l=mtrx[i].length;k<l;k++) {
					s += mtrx[i][k];
				}
				s += '\n';
			}
		}
	};
	return pbl;
})();

function addEvent(obj,type,fn) {
	if (obj.addEventListener) obj.addEventListener(type,fn,false);
	else if (obj.attachEvent)	{
		obj["e"+type+fn] = fn;
		obj[type+fn] = function() {obj["e"+type+fn](window.event);}
		obj.attachEvent("on"+type, obj[type+fn]);
	}
}
String.prototype.trim = function() {
	var str = this;
	while (str.substr(0,1)==' ') str = str.substr(1);
	while (str.substr(str.length-1,1)==' ') str = str.substr(0,str.length-1);
	return str;
}
hasClass = function(elm,findclass) {
	if (!elm || !elm.className) return null;
	return (' '+elm.className+' ').indexOf(' '+findclass+' ')+1;
}
changeClass = function(elm,oldclass,newclass) {
	if (!elm || elm.className=='undefined') return null;
	var c = elm.className.split(' ');
	for (var i=0;i<c.length;i++) {
		c[i] = c[i].trim();
		if (c[i]==oldclass || c[i]==newclass || c[i]=='') c.splice(i,1);
	}
	c.push(newclass);
	elm.className = c.join(' ').trim();
}
actActive = function(elm,tags) {
	if (!elm) return;
	for (var j=0;j<tags.length;j++) {
		var as = elm.getElementsByTagName(tags[j]);
		for (var i=0;i<as.length;i++) {
			if (hasClass(as[i],'active')) {
				if (as[i].parentNode.id=='navig') continue;
				clearInterval(window.hi);
				var e = as[i].getElementsByTagName('a')[0];
				var t = [12,14.25,16.75,19.55,22.7,26.1,29.8,33.8,38.1,42.7,47.55,52.75,58.25,64,62.1,60.55,59.35,58.5,58,58.55,59.75,61.55,64];
				var f = function() {
					var p = t.shift();
					e.style.paddingTop = p+'px';
					if (t.length==0) clearInterval(window.hi);
				}
				window.hi = setInterval(f,20);
			}
		}
	}
}

onload = function() {
	NumberChanger.init();
	actActive(document.getElementById('navig'),['li']);
}
