jQuery.preloadImages = function() {
  for(var i = 0; i<arguments.length; i++)  {
    jQuery("<img>").attr("src", arguments[i]);
  }
}

var Script = {
  start : function() {
    var documentWidth = documentHeight = 0;
    document.body.className = 'js';
    this.improveInterface();
    this.scrollingLinks();
   
  },
  
  improveInterface: function() {
    
    var ajaxLoader = document.createElement('div');
    $(ajaxLoader).addClass('ajaxLoader');
    $('#mC').append(ajaxLoader);
    documentWidth = $(window).width();
    documentHeight = $(window).height();
  },
   
  scrollingLinks: function() {
     
    function showLoader() {$('.ajaxLoader').css('display','block');};
    function hideLoader() {$('.ajaxLoader').css('display','none');};
    function clearActive(link) {$(link).parents('ul:first').find('a').removeClass('active').end().end().addClass('active');}
    
    var fn = function() {
        
      $(this).hover(function() {
         $(this).animate({paddingLeft : '5px'},200);
      }, function() {
        $(this).animate({paddingLeft: '0'},200);
      });
          
      $(this).click(function() {
      
        $('.ajaxLoader').ajaxStart(function() {
          $(this).show();
        }).ajaxStop(function() {
          $(this).hide();
        });
        
        var next = $(this).attr('id');
        var newDiv = document.createElement('div');
        $(newDiv).hide();
        var slogan = $('img.slogan');
        slogan.hide().attr('src','images/'+next+'Txt.png').fadeIn();
        
        $(newDiv).addClass('content '+next);
        var nWidth = $('#contentContainer').width() + 980;
        $('#contentContainer').css('width',nWidth+'px');  
         showLoader();
        $.ajax({
          url: 'tpl/'+next+'.tpl',
          dataType: 'html',
          success: function (html) {
             
              $(newDiv).html(html);
              $('#contentContainer').append(newDiv);
              $(newDiv).show('fast',function() { 
              $('#mainContainer').scrollTo($(newDiv), 300, {axis:'x'});
            });
           }
        });
           
        $(this).unbind('click');
        $(this).bind('click',function() {
          var destination = $(this).attr('id');
          $('#mainContainer').stop().scrollTo('div.'+destination, 300, {axis:'x'});
          activeLink = $('ul#mainMenu').find('#'+destination);
          clearActive(activeLink);
          return false;
        });
        return false;
      });   
    };
    
    var fn1 = function() {
      var destination = $(this).attr('id');
      clearActive(this);
      $('#mainContainer').scrollTo('div.'+destination, 300, {axis:'x'});
      return false;
    };
    
    var fn3 = function() {
      $('#borderContainer,.slogan').hide();
      $('#borderContainer,.slogan, ul#mainMenu').remove();
      $('#mC').css('background','none');
      $('body').addClass('last');
    };
    
    var fn4 = function() {
      var liEl = $(this);
      var title = $(liEl).attr('title');  
      liEl.hover(function(e) {
        $(liEl).attr('title','').addClass('active');
        $('p.skillDetails').hide().html(title).addClass('details').fadeIn('fast');
        
      },function() {
        $(liEl).attr('title',title).removeClass('active');
        pTitle = $('.skillDetails').attr('title');
        $('p.skillDetails').removeClass('details').html(pTitle);
      });
    };
    
    var fn5 = function() {
      $(this).accordion({
        header : 'h3',
        autoheight : true
      });
    };
    
    var fn6 = function() {
      window.open( $(this).attr('href') ); 
      return false; 
    }
    
    var fn7 = function() {
      $('span.deleteText').remove();
      $('ul#mainMenu').css('display','block').appendTo('#mC');
    }
    
    $('.scrollLink').livequery(fn);
    $('#mainMenu li a').livequery('click',fn1);
    $('a.close').livequery('click',fn3);
    $('ul.skills li').livequery(fn4);
    $('div#portfolioList').livequery(fn5);
    $('a[@rel="external"]').livequery('click',fn6);
    $('a.create').livequery('click',fn7);

  }
}

function init() {
  $.preloadImages("../images/homePageTitle.png", "../images/aboutPageTitle.png","../images/skillsPageTitle.png","../images/portfolioPageTitle.png","../images/knowBetter.png","../images/brilliant.png","../images/someStuff.png","../images/stillInterested.png","../images/me4.jpg");
  Script.start()
} 

$().ready(init);



