// jQuery.bbrk.home.ticker.js

(function ($) {
  
  if (typeof $.bbrk === "undefined") {
    $.bbrk = {};
  }
  
  if (typeof $.bbrk.home === "undefined") {
    $.bbrk.home = {};
  }
  
  $.bbrk.home.ticker = function () {
    
    var $ticker;
    var $label;
    var $slider;
    var $info;
    
    var infoItems = [];
    var infoTexts = [];
    
    var xmlPath = $.bbrk.home.ticker.XML_PATH;
    
    var currentInfo = 0;
    var timer;
    
    var transitions = $.simpleSlider.transitions;
    var directions = $.simpleSlider.directions;
    
    
    $ticker = $("<div>", {
      "class": "ticker"
    });
    
    $label = $("<div>", {
      "class": "label"
    });
    
    $label.html("<img src=\"./assets/img/text/information.png\">");
    
    $info = $("<div>", {
      "class": "info"
    });
    
    $.ajax({
      url: xmlPath,
      dataType: "xml",
      cache: false,
      success: onXMLLoad
    });
    
    function onXMLLoad(data, textStatus, jqXHR) {

      var $data = $(data);
      var $items = $data.find("infobar items item");
      var contents = [];
      
      $items.each(function (i) {
        
        var $this = $(this);
        var $item = $("<a href=\"" + $this.children("link").text() + "\"></a>");
        var $image = $("<img src=\"http://www.bearbrick.com/" + $this.children("image").attr("src") + "\" width=\"25\" height=\"25\">");
        var $text = $.randomText($this.children("date").text() + "　" + $this.children("text").text());
        
        $item.html($text);
        
        console.log($this.children("image").attr("src"));
        
        contents.push($image);
        
        infoItems.push($item);
        infoTexts.push($text);

      });
      
      $slider = $.simpleSlider(25, 25, contents, transitions.SLIDE, directions.BOTTOM);
      
      $slider.addClass("thumb");
      
      $info.html(infoItems[0]);
      
      infoTexts[0].shuffle();
    
      $ticker.append($label, $slider, $info);
      
      timer = setInterval(loop, 6000);
    }
    
    function loop() {
      
      var next = currentInfo + 1;
      
      if (next >= infoItems.length) {
        next = 0;
      }
      
      $info.html(infoItems[next]);
      
      infoTexts[next].shuffle();
      
      $slider.slideNext(400);
      
      currentInfo = next;
    }
    
    return $ticker;
  };
  
  $.bbrk.home.ticker.XML_PATH = "./information/infobar.xml";
  
})(jQuery);

