dojo.provide("igldesigns.imageSlider");

dojo.require('dijit._Widget');
dojo.require('dijit._Templated');
dojo.require("dojo.fx");

dojo.declare(
  'igldesigns.imageSlider',
  null,
  {
    imgs: "",
    id: "imageSliderContainer",
    index: 0,

    constructor: function(/* Object */args){
      dojo.safeMixin(this, args);

      this.imgs = dojo.fromJson(this.imgs);
      
      var imageSliderContainer = dojo.create("img", {src: this.imgs[this.index]}, this.id, "first");
        
      this.getNextImage(this);  
      if (this.index > 0) {
        this.index = 0;
        this.startFading(imageSliderContainer, this);
      }
    },
    
    getNextImage: function(self) {
        var index = parseInt(self.index) + 1;
        
        if (self.imgs[index]) {
            self.index = index;
        } else {
            self.index = 0;
        }
    },
    
    startFading: function(container, self) {
        dojo.fx.chain([
            dojo.fadeIn({
                node: container,
                duration: 500
            }), 
            dojo.fadeOut({
                node: container,
                duration: 500,
                delay: 5000,
                onEnd: function() {
                    self.getNextImage(self);
                    container.src = self.imgs[self.index];
                    self.startFading(container, self);
                }
            }), 
        ]).play();
    }
});

