var scroll; var firstrun = 0; function firstload() { var output = document.location; $('jscomm').innerHTML = output; output = $('jscomm').innerHTML.split("#"); if(output[1]) { firstrun = 1; loadsite(output[1]); } } function doflajax(url, data) { var req = new Request({ url: url, method: 'post', onRequest: $('fl_loading').style.display = "block", onSuccess: function(response) { ajaxflresponse(url, response); } }); req.send(data); } function loadsite(site) { if(site != 0) window.location.hash = site; parameters = "ajax=1&specsite=" + site; doflajax("cmsplus/portfolio.inc.php", parameters); if($('thumb_' + site)) { var thumbid; for(var i = 0; i < $('portthumbs').childNodes.length; i++) { if($('portthumbs').childNodes[i].tagName == "A") $('portthumbs').childNodes[i].className = "portfolionu_thumb"; } $('thumb_' + site).className = "portfolionu_thumb currentthumb"; } } function ajaxflresponse(url, response) { $('fl_loading').style.display = "none"; $('siteinfo').innerHTML = response; if(firstrun == 1) firstrun = 0; else scroll.toElement('sitedesc'); } var highlight; var current; var myFade; var isvis; function setmenu(menuid) { var menu = $(menuid); current = menu.getElement('li.current'); menu.getElements('li').each(function(item){ item.addEvent('mouseover', function(e){ new Event(e).stop(); this.moveBg(item); }.bind(this)); item.addEvent('mouseout', function(e){ new Event(e).stop(); this.moveBg(this.current); }.bind(this)); item.addEvent('click', function(e){ this.setCurrent(this); }.bind(this)); }.bind(this)); highlight = new Element('li').addClass('background').adopt(new Element('div').addClass('left')).injectInside(menu); if(current) setCurrent(current); myFade = new Fx.Morph(highlight, { duration: 700, transition: 'back:out', link: 'cancel', onClick: Class.empty }); } function setCurrent(el) { highlight.setStyles({left: (el.offsetLeft)+'px', width: (el.offsetWidth)+'px'}); var myFx = new Fx.Morph(highlight, { duration: 300 }); if(isvis != 1) { myFx.start({ 'opacity': [0, 1] }); isvis = 1; } current = el; } function moveBg(to) { if(!current) { setCurrent(to); return; } myFade.start({ 'width': [highlight.offsetWidth, to.offsetWidth], 'left': [highlight.offsetLeft, to.offsetLeft] }); } // Change these var rotatetime = 5000; // Time for each image to be displayed in milliseconds var fadetime = 1000; // Time for cross-fade in milliseconds // Don't touch these! var rotateimgs = new Array(); var pos = 0; var go; var inprogress = 0; function getimages(div) { var container = $(div); for(var i = 0; i < container.childNodes.length; i++) { if(container.childNodes[i].nodeName == "A") { container.childNodes[i].id = "fadeimg_" + i; $('fadeimg_' + i).style.display = "none"; rotateimgs[rotateimgs.length] = container.childNodes[i]; if(rotateimgs.length == 1) container.childNodes[i].style.display = "block"; } } if(rotateimgs.length > 1) go = setInterval(rotateimages, rotatetime + fadetime); } function rotateimages() { if(!rotateimgs[pos + 1]) var newpos = 0; else var newpos = pos + 1; fadeimg(rotateimgs[newpos], rotateimgs[pos]); pos = newpos; } function fadeimg(el, oldel) { var myFade = new Fx.Tween($(el.id), { duration: fadetime, onStart: function() { inprogress = 1; }, onComplete: function() { oldel.style.display = "none"; inprogress = 0; } }); myFade.set('opacity', 0); el.style.display = "block"; oldel.style.zIndex = 4; el.style.zIndex = 5; myFade.start('opacity', 1); } function fadeto(newpos) { if(newpos != pos && inprogress != 1) { fadeimg(rotateimgs[newpos], rotateimgs[pos]); pos = newpos; clearInterval(go); } else if(newpos == pos) window.location = $('featlink' + pos).href; } window.addEvent('domready', function() { if($('fancymenu')) setmenu('fancymenu'); if($('featrotate')) getimages('featrotate'); scroll = new Fx.Scroll(window, { wait: false, duration: 250, transition: Fx.Transitions.Quad.easeInOut }); });