var _section = '';
var _currentImage = 0;
var _nrOfImages = 0;
var _imageloader = null;


// Returns array with page width, height and window width, height
// Core code from - quirksmode.org
// Edit for Firefox by pHaez
Position.getPageSize = function() {
  var xScroll, yScroll;

  if (window.innerHeight && window.scrollMaxY) {  
    xScroll = document.body.scrollWidth;
    yScroll = window.innerHeight + window.scrollMaxY;
  } else if (document.body.scrollHeight > document.body.offsetHeight){ // all but Explorer Mac
    xScroll = document.body.scrollWidth;
    yScroll = document.body.scrollHeight;
  } else { // Explorer Mac...would also work in Explorer 6 Strict, Mozilla and Safari
    xScroll = document.body.offsetWidth;
    yScroll = document.body.offsetHeight;
  }

  var windowWidth, windowHeight;
  if (self.innerHeight) { // all except Explorer
    windowWidth = self.innerWidth;
    windowHeight = self.innerHeight;
  } else if (document.documentElement && document.documentElement.clientHeight) { // Explorer 6 Strict Mode
    windowWidth = document.documentElement.clientWidth;
    windowHeight = document.documentElement.clientHeight;
  } else if (document.body) { // other Explorers
    windowWidth = document.body.clientWidth;
    windowHeight = document.body.clientHeight;
  } 

  // for small pages with total height less then height of the viewport
  pageHeight = Math.max(windowHeight, yScroll);

  // for small pages with total width less then width of the viewport
  pageWidth = Math.max(windowWidth, xScroll);

  return { page: { width: pageWidth, height: pageHeight }, window: { width: windowWidth, height: windowHeight } };
}
function updatePanelPosition() {
  var p = Position.getPageSize();
  $('panel').style.marginTop = (p.page.height - 585)/2 + 'px';
}




function openPortfolio(section) {

  _section = section;
  var image = arguments[1] || 0;
  var url = 'portfolio.asp';
  var pars = 'image=' + image + '&section=' + section;
  
  ['people','events','places','references','contact'].each(function(e){
      Element.removeClassName(e,'active');
  });
  Element.addClassName(section,'active');
  
  		var myAjax = new Ajax.Request(
			url, 
			{
				method: 'get', 
				parameters: pars
			});
  
}

function openPage(page) {
  new Ajax.Request(page+'.asp');
  ['people','events','places','references','contact'].each(function(e){
    Element.removeClassName(e,'active');
  });
  Element.addClassName(page,'active');
}

function prevImage() {
  if(Ajax.activeRequestCount>0 || _imageloader) return;
  openPortfolio(_section, _currentImage == 0 ? _nrOfImages-1 : _currentImage-1);
}

function nextImage() {
  if(Ajax.activeRequestCount>0 || _imageloader) return;
  openPortfolio(_section, _currentImage == (_nrOfImages-1) ? 0 : _currentImage+1);
}

var _show = false;

function reveal() {
  if(_show) return;
  new Effect.Scale('s1',0.1, { 
    scaleContent: false,
    scaleMode: {originalWidth:888, originalHeight:453},
    scaleX:false, scaleY:true, scaleFrom:100.0, duration:1,
    afterUpdate:function(effect){
      Element.setOpacity('s1',1-effect.position)
    },
    afterFinish:function(){ _show = true }
  });
}

function hide() {
 if(!_show) return;
  new Effect.Scale('s1',100, { 
    scaleContent: false,
    scaleMode: {originalWidth:888, originalHeight:453},
    scaleX:false, scaleY:true, scaleFrom:0.1, duration:1,
    afterUpdate:function(effect){
      Element.setOpacity('s1',effect.position)
    },
    afterFinish:function(){ _show = false }
  });
}