(function() {
  var gid, _ref;
  if ((_ref = window.console) == null) {
    window.console = {
      log: function() {}
    };
  }
  gid = function(el) {
    return document.getElementById(el);
  };
  $(function() {
    var $slide_nav, partnersSetup, sliderHandler, sliderSetup;
    $slide_nav = $("#slide_nav");
    sliderHandler = function(ev, idx, el) {
      var $arrow_left, $changeColor, colour, colours, _i, _len;
      $slide_nav.find(".selected").removeClass("selected");
      $slide_nav.find("[data-id='" + idx + "']").addClass("selected");
      if (textSlider.index !== idx) {
        textSlider.slide(idx);
      }
      $changeColor = $("");
      colours = [null, "purple", "blue", "red"];
      for (_i = 0, _len = colours.length; _i < _len; _i++) {
        colour = colours[_i];
        $changeColor.removeClass(colour);
      }
      if (colours[idx]) {
        $changeColor.addClass(colours[idx]);
      }
      $arrow_left = $(".arrow_left");
      if (idx !== 0) {
        return $arrow_left.fadeIn("slow");
      }
    };
    sliderSetup = function() {
      var $slide_text, $slider, arrSlides, cls, defaultOpts, htmlStr, i, slide, sliderOpts, textSliderOpts, _len;
      if (window.Swipe) {
        window.screenSlider = new Swipe(gid('slider'), {
          callback: function(ev, idx, el) {},
          width: 256 //breite der Bilder
        });
        $("#slider").bind("slideEvent", function(ev, idx) {
          return sliderHandler(ev, idx);
        });
        if (window.innerWidth > 480) {
          window.textSlider = new Trans(gid('slide_text'));
        } else if (window.innerWidth <= 480) {
          window.textSlider = new Swipe(gid('slide_text'), {
            callback: function(ev, idx, el) {
              return sliderHandler(ev, idx);
            }
          });
        }
      } else if ($.Widget) {
        $slide_text = $('#slide_text ul');
        $slider = $('#slider ul');
        defaultOpts = {
          slide: {
            interval: 300
          },
          pagination: false,
          navigation: false
        };
        sliderOpts = {
          height: 384,//höhe der Bilder
          width: 256, //breite der Bilder
          navigateEnd: function(current) {
            screenSlider.index = current - 1;
            return sliderHandler(null, current - 1);
          }
        };
        sliderOpts = $.extend(sliderOpts, defaultOpts);
        textSliderOpts = {
          responsive: true,
          autoHeight: true,
          navigateEnd: function(current) {
            return textSlider.index = current - 1;
          }
        };
        textSliderOpts = $.extend(textSliderOpts, defaultOpts);
        $slider.slides(sliderOpts);
        $slide_text.slides(textSliderOpts);
        window.screenSlider = {
          index: 0,
          length: $slider.slides("status").total,
          next: function() {
            return $slider.slides("next");
          },
          prev: function() {
            return $slider.slides("previous");
          },
          slide: function(idx) {
            return $slider.slides("slide", idx + 1);
          }
        };
        window.textSlider = {
          index: 0,
          length: $slide_text.slides("status").total,
          next: function() {
            return $slide_text.slides("next");
          },
          prev: function() {
            return $slide_text.slides("previous");
          },
          slide: function(idx) {
            return $slide_text.slides("slide", idx + 1);
          }
        };
      }
      htmlStr = "";
      arrSlides = [];
      arrSlides.length = screenSlider.length;
      for (i = 0, _len = arrSlides.length; i < _len; i++) {
        slide = arrSlides[i];
        cls = i === 0 ? "selected" : "";
        htmlStr = htmlStr + ("<li data-id='" + i + "' class='" + cls + "'></li>");
      }
      return $slide_nav.html(htmlStr);
    };
    Modernizr.load({
      test: Modernizr.csstransforms,
      yep: ["javascripts/libs/touch.js", "javascripts/compiled/trans.js", "javascripts/compiled/swipe.js"],
      nope: "javascripts/libs/slide.js",
      complete: function() {
        return sliderSetup();
      }
    });
    $slide_nav.delegate("li", "click", function() {
      var $this, data;
      $this = $(this);
      data = $this.data();
      screenSlider.slide(data.id);
      $slide_nav.find("li").removeClass("selected");
      return $this.addClass("selected");
    });
    $(".arrow_right").show();
    $(".arrow_right").bind("click", function() {
      return screenSlider.next();
    });
    $(".arrow_left").bind("click", function() {
      return screenSlider.prev();
    });
    $("#easter_egg").bind("click", function() {
      return screenSlider.next();
    });
    $(document).bind("keyup", function(e) {
      switch (e.keyCode) {
        case 39:
          return screenSlider.next();
        case 37:
          return screenSlider.prev();
      }
    });

/*    
    return Modernizr.load({
      load: "shoutflow_landing/javascripts/app/partners.js",
      complete: function() {
        return partnersSetup();
      }
    });
*/    
  });
}).call(this);

