// Copyright 2005-2008 Enzon
// design by Enzon.cz [http://www.enzon.cz]

function preload(file)
{
	img = new Image();
	img.src = file;
}
function bodypreload()
{
	
}

function confirmMessage(text){
	if(!confirm(text)){
		return false;
	}		
}


var color=0;
var changeTimer;
var waitTimer;
var changeStep = 0;
var semafor = 1;
var darkGreen = new Array("#6ac12e","bodyBgDarkGreen.png","mHeaderBgDarkGreen.jpg");
var green = new Array("#91c926","bodyBgGreen.png","mHeaderBgGreen.jpg");
var blue = new Array("#26b2c9","bodyBgBlue.png","mHeaderBgBlue.jpg");
var red = new Array("#c54d2a","bodyBgRed.png","mHeaderBgRed.jpg");
var yellow = new Array("#d5d717","bodyBgYellow.png","mHeaderBgYellow.jpg");
var purple = new Array("#bd32a4","bodyBgPurple.png","mHeaderBgPurple.jpg");
var brown = new Array("#b4783a","bodyBgBrown.png","mHeaderBgBrown.jpg");
var grey = new Array("#626962","bodyBgGrey.png","mHeaderBgGrey.jpg");
var colors = new Array(green,darkGreen,blue,yellow,red,grey,purple,brown);

function nextColor(){
	newColor = color+1;
	if(newColor>=colors.length) newColor=0;
	changeStyle(newColor);
}
function changeStyle(newColor){
	
	if(color!=newColor){
		
		clearInterval(changeTimer);
		delete changeTimer;
		changeStep = 0;
		semafor = 1;				
		if(semafor){
			semafor = 0;
			color = newColor;
			//body
			var layoutBodyFull = document.getElementById('layoutBodyFull');
			layoutBodyFull.style.background = colors[color][0]+" url('./styles/nature/img/"+colors[color][1]+"') repeat-x 0px 0px";
			Element.setOpacity("layoutBodyFull", 0);
			//body END
			
			//Header
			var mHeader2 = document.getElementById('mHeader2');
			mHeader2.style.background = "transparent url('./styles/nature/img/"+colors[color][2]+"') no-repeat 0px 0px";
			Element.setOpacity("mHeader2", 0);
			//Header END
			
			changeTimer = setInterval("changeStyleMore("+color+")", 65);
		}
	}
}
function changeStyleMore(color){
	changeStep=changeStep+2;
	//alert(changeStep);
	//var mHeader2 = document.getElementById('mHeader2');
	Element.setOpacity("mHeader2", (changeStep/10));
	//mHeader2.style.opacity = (changeStep/10);
	//var layoutBodyFull = document.getElementById('layoutBodyFull');
	//layoutBodyFull.style.opacity = (changeStep/10);
	Element.setOpacity("layoutBodyFull", (changeStep/10));
		
	if(changeStep>=10){
		clearInterval(changeTimer);
		delete changeTimer;
		
		document.body.style.background = colors[color][0]+" url('./styles/nature/img/"+colors[color][1]+"') repeat-x 0px 0px";
		Element.setOpacity("layoutBodyFull", 0);
		
		var mHeader = document.getElementById('mHeader');
		mHeader.style.background = "transparent url('./styles/nature/img/"+colors[color][2]+"') no-repeat 0px 0px";
		Element.setOpacity("mHeader2", 0);

		changeStep = 0;
		semafor = 1;
	}

}

/* ------------- element ext -------------- */  
 
// converts rgb() and #xxx to #xxxxxx format,  
// returns self (or first argument) if not convertable  
String.prototype.parseColor = function() {  
  var color = '#';  
  if(this.slice(0,4) == 'rgb(') {  
    var cols = this.slice(4,this.length-1).split(',');  
    var i=0; do { color += parseInt(cols[i]).toColorPart() } while (++i<3);  
  } else {  
    if(this.slice(0,1) == '#') {  
      if(this.length==4) for(var i=1;i<4;i++) color += (this.charAt(i) + this.charAt(i)).toLowerCase();  
      if(this.length==7) color = this.toLowerCase();  
    }  
  }  
  return(color.length==7 ? color : (arguments[0] || this));  
}

Element.collectTextNodes = function(element) {  
  return $A($(element).childNodes).collect( function(node) {
    return (node.nodeType==3 ? node.nodeValue : 
      (node.hasChildNodes() ? Element.collectTextNodes(node) : ''));
  }).flatten().join('');
}

Element.collectTextNodesIgnoreClass = function(element, className) {  
  return $A($(element).childNodes).collect( function(node) {
    return (node.nodeType==3 ? node.nodeValue : 
      ((node.hasChildNodes() && !Element.hasClassName(node,className)) ? 
        Element.collectTextNodes(node) : ''));
  }).flatten().join('');
}

Element.setStyle = function(element, style) {
  element = $(element);
  for(k in style) element.style[k.camelize()] = style[k];
}

Element.setContentZoom = function(element, percent) {  
  Element.setStyle(element, {fontSize: (percent/100) + 'em'});   
  if(navigator.appVersion.indexOf('AppleWebKit')>0) window.scrollBy(0,0);  
}

Element.getOpacity = function(element){  
  var opacity;
  if (opacity = Element.getStyle(element, 'opacity'))  
    return parseFloat(opacity);  
  if (opacity = (Element.getStyle(element, 'filter') || '').match(/alpha\(opacity=(.*)\)/))  
    if(opacity[1]) return parseFloat(opacity[1]) / 100;  
  return 1.0;  
}

Element.setOpacity = function(element, value){  
  element= $(element);  
  if (value == 1){
    Element.setStyle(element, { opacity: 
      (/Gecko/.test(navigator.userAgent) && !/Konqueror|Safari|KHTML/.test(navigator.userAgent)) ? 
      0.999999 : null });
    if(/MSIE/.test(navigator.userAgent))  
      Element.setStyle(element, {filter: Element.getStyle(element,'filter').replace(/alpha\([^\)]*\)/gi,'')});  
  } else {  
    if(value < 0.00001) value = 0;  
    Element.setStyle(element, {opacity: value});
    if(/MSIE/.test(navigator.userAgent))  
     Element.setStyle(element, 
       { filter: Element.getStyle(element,'filter').replace(/alpha\([^\)]*\)/gi,'') +
                 'alpha(opacity='+value*100+')' });  
  }   
}  
 
Element.getInlineOpacity = function(element){  
  return $(element).style.opacity || '';
}  

Element.childrenWithClassName = function(element, className) {  
  return $A($(element).getElementsByTagName('*')).select(
    function(c) { return Element.hasClassName(c, className) });
}

Array.prototype.call = function() {
  var args = arguments;
  this.each(function(f){ f.apply(this, args) });
}

/*--------------------------------------------------------------------------*/
