$(function() {
  $("body").addClass("jsEn");
  
  // Cufon.replace(".din-font, h2, #ticker-title", {
  //   hover: true
  // });

	
  $("a[href^='http://']")
  	.not("[href^='"+MIYOLib._conf.siteBaseURL+"']")
  	.each(function() {
  			this.target = "_blank";
  	});
  
  $("a.external").each(function() {
    this.target = "_blank";
  });
  
  $('.left-search-arrow').live('click', function(e){
    slideLeft( $(this).parent().find('.search-column-holder') );
    e.preventDefault();
  });

  $('.right-search-arrow').live('click', function(e){
    slideRight( $(this).parent().find('.search-column-holder') );
    e.preventDefault();
  });
  
  $('#js-news').ticker({
    titleText: 'Latest: ',
    speed: 0.1,
    controls: false
  });
	
	placeAudio();
	initExpandableSections();
});

function initSearchCriteriaCarosel() {
	$(".search-column-holder").each(function() {
    column_count = 0;
    var $container = $(this);
    var $parent = $container.parent();
    column_count = $container.find('ul').length;
    $container.data('columns', column_count);
    if(column_count>3) {
      $left = $('<div class="left-search-arrow" />').appendTo( $parent );
      $leftArrow = $('<a href="#" />').appendTo( $left ).click(function(e){
        slideLeft( $container );          
        e.preventDefault();
      });

      $right = $('<div class="right-search-arrow" />').appendTo( $parent );
      $rightArrow = $('<a href="#" />').appendTo( $right ).click(function(e){
        slideRight( $container );
        e.preventDefault();
      });
    }
	});
}

function slideLeft( $element ) {
  if( $element.css('left') != '0px' ) {
    $element.animate({left: '+=760px'}, 500);
  }
}

function slideRight( $element ) {
  var cols = $element.children('ul').length;
  if( Math.abs(parseInt($element.css('left'))) < ((cols-3)*190) ) {
    $element.animate({left: '-=760px'}, 500);
  }
}

function placeAudio() {
  $(".audio-player-hold").each(function () {
    var audPlayHold = this;
    audPlayHold.$barHold = $(audPlayHold).children(".audio-player-bar-hold");
    audPlayHold.$fileHold = $(audPlayHold).find(".audio-download-button:last");
    
    if(audPlayHold.$barHold.length > 0 && audPlayHold.$fileHold.length > 0) {
      audPlayHold.$playerTarg = audPlayHold.$barHold.children(":first");
      if(audPlayHold.$playerTarg.length > 0) {
        audPlayHold.playerTargID = audPlayHold.$playerTarg.attr('id');
        audPlayHold.playerTargFile = audPlayHold.$fileHold.attr('href');
        
        if(audPlayHold.playerTargFile) {
          jwplayer(audPlayHold.playerTargID).setup({
        		flashplayer: "/js/atm/jwplayer/player.swf",
        		file: '/'+audPlayHold.playerTargFile,
        		skin: "/js/atm/jwplayer/glow/glow.zip",
        		controlbar: 'bottom',
        		'width': 224,
        		'height': 21
        	});
    	  }
      }
    }
  });
}

function initExpandableSections() {
  $(".expandable-content").each(function() {
    var parentHold = this;
    parentHold.collapseOthers = false;
    
    if($(parentHold).hasClass("collapse-others")) {
      parentHold.collapseOthers = true;
      parentHold.$otherExpandables = $(parentHold).parent().find(".expandable-content");
    }
    
    parentHold.$blockHead = $(parentHold).find(".expand-trigger, .expand-header").not(".sub-expandable .expand-trigger, .sub-expandable .expand-header")
      .css("cursor", "pointer")
      .click(function() {
        var headerRef = this;
        headerRef.originallyHadClass = true;
        
        if(!$(parentHold).hasClass("open")) {
          $(parentHold).find(".initial-content").css("display", "none");
          headerRef.originallyHadClass = false;
          
          if(parentHold.collapseOthers) {
            if(parentHold.$otherExpandables.length > 0) {
              parentHold.$otherExpandables.each(function() {
                var expandElement = this;
                
                if($(expandElement).hasClass("open")) {
                  $(expandElement).find(".expanded-content:first").slideToggle(600, function() {
                    $(expandElement).removeClass("open");
                    $(expandElement).find(".initial-content").css("display", "block");
                  });
                }
              });
            }
          }
        }
        
        $(parentHold).find(".expanded-content:first").slideToggle(600, function() {
          if(headerRef.originallyHadClass && $(parentHold).hasClass("open")) {
            $(parentHold).removeClass("open");
            $(parentHold).find(".initial-content").css("display", "block");
          } else if(!headerRef.originallyHadClass && !$(parentHold).hasClass("open")) {
            $(parentHold).addClass("open");
          }
        });
        
        return false;
      });
  });
  
  $(".sub-expandable").each(function() {
    var subExpandHold = this;
    subExpandHold.collapseOthers = false;

    if($(subExpandHold).hasClass("collapse-others")) {
      subExpandHold.collapseOthers = true;
      subExpandHold.$otherExpandables = $(subExpandHold).parent().find(".sub-expandable");
    }

    subExpandHold.$blockHead = $(subExpandHold).find(".expand-trigger, .expand-header")
      .css("cursor", "pointer")
      .click(function() {
        var subHeaderRef = this;
        subHeaderRef.originallyHadClass = true;

        if(!$(subExpandHold).hasClass("open")) {
          $(subExpandHold).find(".initial-content").css("display", "none");
          subHeaderRef.originallyHadClass = false;
          
          if(subExpandHold.collapseOthers) {
            if(subExpandHold.$otherExpandables.length > 0) {
              subExpandHold.$otherExpandables.each(function() {
                var expandElement = this;

                if($(expandElement).hasClass("open")) {
                  $(expandElement).find(".sub-expand-content:first").slideToggle(600, function() {
                    $(expandElement).removeClass("open");
                    $(expandElement).find(".initial-content").css("display", "block");
                  });
                }
              });
            }
          }
        }

        $(subExpandHold).find(".sub-expand-content:first").slideToggle(600, function() {
          if(subHeaderRef.originallyHadClass && $(subExpandHold).hasClass("open")) {
            $(subExpandHold).removeClass("open");
            $(subExpandHold).find(".initial-content").css("display", "block");
          } else if(!subHeaderRef.originallyHadClass && !$(subExpandHold).hasClass("open")) {
            $(subExpandHold).addClass("open");
          }
        });

        return false;
      });
  });
}
