// script.js for mobcast.jp

(function($) {

  $(function() {
  
    $('a, area').linkType();
    $('.external, .pdf').openWindow();
    $('.rollover').rollover();
    $('.tabs').tabs();
    $('.crumbs')
      .find('.root').prepend('+ ')
        .find('li').prepend('> ');
    
  });

  $.fn.linkType = function(options) {
    var o = $.extend({
      externalClass: 'external',
      sslClass: 'ssl',
      pdfClass: 'pdf',
      zipClass: 'zip'
    }, options);
    this.each(function() {
      $(this)
        .filter('[href^="http"]').each(function() {
          if (this.hostname != window.location.hostname) {
            $(this).addClass(o.externalClass);
          }
        }).end()
        .filter('[href^="https"]').addClass(o.sslClass).end()
        .filter('[href$=".pdf"]').addClass(o.pdfClass).end()
        .filter('[href$=".zip"]').addClass(o.zipClass);
    });
    return this;
  };

  $.fn.openWindow = function() {
    this.click(function() {
      window.open(this.href);
      return false;
    });
    return this;
  };

  $.fn.rollover = function(options) {
    var o = $.extend({
      rolloverPostfix: '-h'
    }, options);
    this.each(function() {
      this.originalSrc = $(this).attr('src');
      this.rolloverSrc = this.originalSrc.replace(new RegExp('(' + o.rolloverPostfix + ')?(\.gif|\.jpeg|\.jpg|\.png)$', 'i'), o.rolloverPostfix + '$2');
      this.rolloverImg = new Image;
      this.rolloverImg.src = this.rolloverSrc;
    }).hover(function() {
      $(this).attr('src', this.rolloverSrc);
    }, function() {
      $(this).attr('src', this.originalSrc);
    });
    return this;
  };

  $.fn.tabs = function(options) {
    var o = $.extend({
      nav: '.tabs-nav',
      panel: '.tabs-panel',
			navSelectedClass: 'tabs-nav-selected',
      selected: 0
    }, options);
    this.each(function(i) {
      var cookieName = 'c' + (i + 1);
      var nav = $(this).find(o.nav);
      var panel = $(this).find(o.panel);
			var selected = o.selected;
      $(nav).children().find('[href^="#"]').click(function() {
        selectTabs($(nav).children().index($(this).parent()));
        return false;
      });
      selectTabs(selected);
      function selectTabs(index) {
        $(panel).hide();
        $(nav)
          .children('.' + o.navSelectedClass).removeClass(o.navSelectedClass).end()
          .children().eq(index).addClass(o.navSelectedClass);
        $($(nav).find('.' + o.navSelectedClass + ' a').attr('href')).show();
      }
    });
    return this;
  };

})(jQuery);
