/* Teksanska masakra javascriptem ver. 0.7 */
var extender = {
  // All divs in document:
  objQueries:null,
  // Container:
  objContent:null,
  // Handler for setInterval function:
  timeHandler:null,
  // Temp object:
  objTmp:null,
  // Get main container and all div elements:
  getContainer:function() {
    this.objContent = document.getElementById('text_container');
    this.objQueries = this.objContent.getElementsByTagName('div');
  },
  // Parse content and select propper method:
  parseArt:function() {
    var intCount = this.objQueries.length;
    for(var i=0; i<intCount; i++) {
      if(this.objQueries[i].className=='quote') {
       // this.extenders(i);
      }
      else if(this.objQueries[i].className=='gallery') {
        this.galleries(i);
        intCount += 2;
      }
    }
  },
  // External script init:
  init:function() {
    this.getContainer();
  },
  // Private text extender method:
  extenders:function(intNum) {
    var tmpObj = this.objQueries[intNum].getElementsByTagName('span');
    tmpObj[1].className = 'hide';
    tmpObj[0].className = 'extender';
    tmpObj[0].innerHTML += ' (pokaż więcej)';
    tmpObj[0].setAttribute('title', 'Kliknij by rozwinąć');
    tmpObj[0].onclick = function() {
      var tmpObj = this.parentNode.getElementsByTagName('span')[1];
      var tmpStr = this.innerHTML;
      if(tmpObj.className == 'show') {
        tmpObj.className = 'hide';
        var intOccur = tmpStr.indexOf(' (u');
        this.innerHTML = tmpStr.substr(0, intOccur) + ' (pokaż więcej)';
        this.setAttribute('title', 'Kliknij by rozwinąć');
      }
      else {
        tmpObj.className = 'show';
        var intOccur = tmpStr.indexOf(' (p');
        this.innerHTML = tmpStr.substr(0, intOccur) + ' (ukryj)';
        this.setAttribute('title', 'Kliknij by zwinąć');
      }
    }    
  },
  // Private create gallery method:
  galleries:function(intNum) {
    var navLeft = document.createElement('div');
    var navRight = document.createElement('div');
    var galContainer = this.objQueries[intNum].getElementsByTagName('div')[0];

    var imgHrefs = galContainer.getElementsByTagName('a');
    for(var i=0; i<imgHrefs.length; i++) {
      imgHrefs[i].onmouseover = function() {
        extender.setOpacity(this, 7);
      }
      imgHrefs[i].onmouseout = function() {
        extender.setOpacity(this, 10);
      }
    }
    galContainer.className = 'with_nav';
    navLeft.className = 'gall_nav_left';
    navLeft.innerHTML = '<img src="grafika/navi_left.gif" />';
    navRight.className = 'gall_nav_right';
    navRight.innerHTML = '<img src="grafika/navi_right.gif" />'
    navRight.onmouseover = function() {
      extender.objTmp = this.previousSibling;
      extender.timeHandler = setInterval(function() {  
        extender.galScrollRight();
      }, 30);
    }
    navRight.onmouseout = function() {
      clearInterval(extender.timeHandler);
    }
    
   navLeft.onmouseover = function() {
      extender.objTmp = this.nextSibling;
      extender.timeHandler = setInterval(function() {  
        extender.galScrollLeft();
      }, 30);
    }  
    navLeft.onmouseout = function() {
      clearInterval(extender.timeHandler);
    }
    galContainer.parentNode.insertBefore(navLeft, galContainer);
    galContainer.parentNode.insertBefore(navRight, galContainer.nextSibling);
  },
  // Submethods of gallery generator:
  galScrollRight:function() {
    if(this.objTmp.scrollLeft<this.objTmp.scrollWidth) {
			this.objTmp.scrollLeft += 4;
		}
  },
  // Private submethods of gallery generator:
  galScrollLeft:function() {
		if(this.objTmp.scrollLeft>0) {
			this.objTmp.scrollLeft -= 4;
		} 
  },
  // Set object opacity:
	setOpacity:function(object, value) {
		object.style.opacity = value/10;
		object.style.filter = "alpha(opacity=" + value*10+ ")";
    object.style.MozOpacity = (value / 10);
    object.style.KhtmlOpacity = (value / 10);
	},
	// AntySPAM
	modifyEAdresses:function() {
    var arrSpans = document.getElementsByTagName('span');
    var strTmp = null;
    var arrParts = Array();
    var strPrefix = null;
    var strSuffix = null;
    var objHref = null;
    for(var i=0; i<arrSpans.length; i++) {
      if(arrSpans[i].className == 'mailto') {
        strTmp = new String(arrSpans[i].innerHTML)
        arrParts = strTmp.split('@');
        strPreffix = arrParts[0];
        strSuffix = arrParts[1].substr(8);
        objHref = document.createElement('a');
        objHref.setAttribute('href', 'mailto:'+strPreffix+'@'+strSuffix);
        objHref.setAttribute('title', 'Wciśnij by otworzyć standardowego klienta poczty');
        objHref.innerHTML = strPreffix+'@'+strSuffix;
        arrSpans[i].parentNode.replaceChild(objHref, arrSpans[i]);
        --i;
      }
    }
  },
  initHiders:function() {
  	for(var i=0; i<this.objQueries.length; i++) {
		
	}
  }
}