// javascript for matthewhollett.com

// initialize jquery functions
jQuery(document).ready(function($){

 // initialize portfolio menu thumbnails and panels (create ids)
 $('.portfoliomenu li').each(function(i){$(this).attr('id', 'portfoliomenuli' + ++i);});
 $('.thumbs li').each(function(i){$(this).attr('id', 'thumb' + ++i);});
 $('.panel').each(function(i){$(this).attr('id', 'panel' + ++i);});
 
 // light first portfoliomenuli and switch tagline
 $('#portfoliomenuli1').addClass('portfoliomenuli-lit');
 var tagline = $('#portfoliomenuli1').find('.tagline').html();
 $('#tagline').html(tagline);
  
 $('#thumb1').addClass('thumb-lit');
 $('#portfoliomenuli1 .thumbs').show();
 $('#panel1').show();

 // when each '.portfoliomenu li' is clicked (if is currently lit, don't do anything)
 $('.portfoliomenu > li').click(function(){
  if ($(this).hasClass('portfoliomenuli-lit')) { return false; }
  
  // hide all visible .portfoliomenu li uls and remove 'lit' class.
  $('.portfoliomenu li ul:visible').parent().removeClass('portfoliomenuli-lit');
  if ($.browser.msie) {
   $('.portfoliomenu li ul:visible').hide(); // more complex transition causes a visual glitch in ie.
  } else {
   $('.portfoliomenu li ul:visible').hide('200');
  }
  
  // add 'lit' class and slide down child ul.
  $(this).addClass('portfoliomenuli-lit');
  $(this).find('ul:first').slideDown('200');
  
  // switch tagline
  var tagline = $(this).find('.tagline:first').html();
  $('#tagline').html(tagline);
  
  // remove lit class from child thumbs, add lit class to first child thumb, and show panel corresponding to thumb's id.
  $(this).find('li').removeClass('thumb-lit');
  $(this).find('li:first').addClass('thumb-lit');
  $(this).find('li:first').each(function(){
   var paneltoshow = '#'+this.id.replace('thumb','panel');
   $('.panel:visible').hide();
   if ($.browser.msie) {
    $(paneltoshow).show(); // fadeIn causes ie to lose text smoothing.
   } else {
    $(paneltoshow).fadeIn('200');
   }
  });
 })

 // when each '.thumbs li' is moused over (if is currently lit, don't do anything)
 $('.thumbs li').click(function(){
  if ($(this).hasClass('.thumb-lit')) { return false; }
  $('.thumbs li').removeClass('thumb-lit');
  $(this).addClass('thumb-lit');
  var paneltoshow = '#'+this.id.replace('thumb','panel');
  $('.panel:visible').hide();
  $(paneltoshow).show();
 })
 
 // links with 'fancybox' class open using jquery fancybox plugin.
 // Documentation: http://fancybox.net/
 $('a.fancybox').fancybox();

});



// generates e-mail link, hides address from spammers; linktext and addclass are optional
// <script type="text/javascript">mailto('user','domain.com');</script>
function mailto(user,domain,linktext,addclass){
 address = user + '@' + domain;
 if (linktext == undefined) linktext = address;
 if (addclass == undefined) addclass = '';
 document.write('<a href="mailto:' + address + '" class="' + addclass + '">' + linktext + '</a>');
}
