﻿/* Global JavaScript (requires Mootools v1.2)
 *
 * Original Author: Chris Martin, Webexpectations.com
 * Last updated: 2008/06/18
 *
 */

/* - Initialisation (runs functions common to all pages) - */

window.addEvent('domready', function() {
  attachExternals(); // Make external links open in a new window.
  attachPopups(); // Attach accessible popups.
  attachSliders(); // Attach slider show/hide effects.
  activeInput(); // adds background colour to form input/textarea when clicked
  menuOvers(); //hover fix for ie
  adjustNavbars();//adjust navbars for mac ff and safari
  mvt_bounce();
  var images = [
    '/_images/back-home-contactus-hover.gif',
    '/_images/back-home-contactus-a-hover.gif',
    '/_images/back-contactus-hover.jpg',
    '/_images/back-send-l-hover.jpg',
    '/_images/back-send-r-hover.jpg',
    '/_images/back-navbar-li-ul-li-ul-a.gif',
    '/_images/back-navbar-li-ul-li-ul-hover.gif',
    '/blog/wp-content/themes/webex2/_images/back-submit-small-hover.png',
    '/_images/services/design/regus-h.jpg',
    '/_images/services/design/regus.jpg',    
    '/_images/services/design/spring-global-mail.jpg',
    '/_images/services/design/spring-global-mail-h.jpg',
    '/_images/services/design/mizuno-h.jpg',    
	'/_images/services/design/mizuno.jpg',
	'/_images/services/design/mizuno-h.gif',    
	'/_images/services/design/mizuno.gif',
	'/_images/services/design/ccs-h.gif',    
	'/_images/services/design/ccs.gif',
	'/_images/services/design/regus-h.gif',    
	'/_images/services/design/regus.gif',
	'/_images/services/design/spring-h.gif',    
	'/_images/services/design/spring.gif',
	'/_images/back-send-l-hover.png',
    '/_images/back-send-r-hover.png',
	'/_images/back-send-l.jpg',
    '/_images/back-send-r.jpg',
	'/_images/services/design/helibeds-h.gif',    
	'/_images/services/design/realwine-h.gif',   
	'/_images/services/design/charlton-h.gif'		    
  ];
  preloadImages(images); // Preload specific images (usually for hover states).
  new SmoothScroll(); // Enable smooth scrolling for anchors.
});

/* - Functions - */

function adjustNavbars() {
if  (Browser.Platform.mac && Browser.Engine.gecko) {
    var navbars = $$('ul#navbar li ul.main');
      navbars.each(function(navbar){
        navbar.setStyle('top','3.7em');
        });
	var clients = $$('ul#navbar li ul.clients');
      clients.each(function(client){
        client.setStyle('width','14.8em');
        });
    }
  if (Browser.Engine.webkit) {
    var navbars = $$('ul#navbar li ul.main');
      navbars.each(function(navbar){
        navbar.setStyle('top','3.7em');
        });
    var onelevels = $$('ul#navbar li ul.onelevel');
      onelevels.each(function(onelevel){
        onelevel.setStyle('width','6.85em');
        });
    var clients = $$('ul#navbar li ul.clients');
      clients.each(function(client){
        client.setStyle('width','14.45em');
        });
    var clients = $$('ul#navbar li ul.main');
      clients.each(function(client){
        client.setStyle('top','3.9em');
        });
  }
 }

function attachExternals() {
  var extLinks = $$('a.external');
  extLinks.each(function(extLink, i){
    extLink.setProperty('target','_blank');
  });
}

function attachPopups() {
  var width = 640;
  var height = 480;
  var popups = $$('a.popup');
  popups.each(function(popup, i) {
    if (rel = popup.getProperty('rel')) {
      var parts = rel.split(',');
      var dimensions = false;
      parts.each(function(part,j){
        if (part.trim().test("[0-9]+x[0-9]+", 'i')) { dimensions = j; }
      });
      if ($chk(dimensions)) {
        var dimensions = parts[dimensions].trim().split('x');
        width = dimensions[0];
        height = dimensions[1];
      }
    }
    popup.addEvent('click', function() {
      window.open(popup.href,'_blank','width='+width+',height='+height+',resizable=yes,scrollbars=yes,toolbar=no,status=no,directories=no');
      if (window.focus) popup.focus();
      return false;
    });
  });
}

function activeInput () {
    var inputs = $$('input.text','textarea');
    inputs.each(function(input){
      input.addEvent('focus',function(){
        input.addClass('activeinput');
       });
      input.addEvent('blur',function(){
        input.removeClass('activeinput');
      });
    });
}

function attachSliders() {
  var sliders = $$('.slider');
  sliders.each(function(slider,i){
    var theslider = new Fx.Slide(slider, {duration:500});
    theslider.hide();
    var toggler = slider.getParent().getPrevious();
    toggler.addClass('toggler');
    toggler.addEvent('click',function(){
     theslider.toggle();
    });

    toggler.addEvent('mouseenter',function(){
      toggler.addClass('hover');
    });

    toggler.addEvent('mouseleave',function(){
      toggler.removeClass('hover');
    });

    theslider.addEvent('onComplete',function(){
      toggler.toggleClass('open');
    });
  });
}

function menuOvers () {
  var lis = $$('ul#navbar li','div.contactus','div.back-send-l','div.security','div.staffmember img','div#homepg div#homeconversions a','div#google a');
  lis.each(function(li){
    li.addEvent('mouseenter',function(){
      li.addClass('over');
    });
    li.addEvent('mouseleave',function(){
      li.removeClass('over');
    });
  });
}

function preloadImages (imagearray) {
  imagearray.each(function(image){
    var preloader = new Element('div', {'class': 'preloader'});
    preloader.inject($('holder'),'bottom');
    preloader.setStyle('background','url(' + image + ')');
  });
  (function(){ $$('div.preloader').destroy(); }).delay(1000);
}

function getStartTime() {
  var Begin = new Date();
  var Start = Begin.getTime();
  return Start;
}

function getFinishTime() {
  var End = new Date();
  var Stop = End.getTime();
  return Stop;
}

function mvt_bounce() {
  $$('a').addEvent('click', function() {
    var gwoTracker=_gat._getTracker("UA-9784014-1");
    gwoTracker._trackPageview("/0497954887/goal");
  });
}