var Framework = {
  ychart : function(){
    var cls = 'yfi_syn_data';
    var el  =  document.id('ychart');
    if(!el) return;

    new Request.HTML({
      url : 'chart.php',
      onSuccess : function(rTree, rElements, rHTML, rJavaScript){
        el.adopt(rTree);
        return;
        var link = el.getElement('link');
        var table = el.getElement('.' + cls);
        if(link && table){
          link.clone().inject(document.head);
          var t = table.clone();
          el.empty();
          t.inject(el);
        }
      }
    }).get();
  },

  commodities : function(){
    var el  =  document.id('commodities-table');
    if(!el) return;

    new Request.HTML({
      url : 'chart.php',
      onSuccess : function(rTree, rElements, rHTML, rJavaScript){
        var css = new Asset.css('css/data_design.css', {id: 'commoditiesStyles', title: 'commoditiesStyles'});
        css.inject(document.head, 'top');
        el.set('html', rHTML);
      }
    }).get({'quote' : 'commodities'});
  },

  quotecom : function(){
    var cls = 'datagrid';
    var url = 'chart.php';
    var el  =  document.id('quotes');
    if(!el) return;

    new Request.HTML({
      url : url,
      onSuccess : function(rTree, rE, rH, rS){
        el.empty();
        el.hide();
        el.set('html', rH);
        var grid = el.getElement('.' + cls);
        if(grid){
          new Element('script', {'type':'text/javascript', 'html':rS}).inject(document.head);
          el.getElements('link').each(function(css){css.inject(document.head);});
          //el.getElements('script').each(function(js){ console.info('Moving JS: %o', js); js.inject(document.head); });
          var elgrid = grid.clone();
          el.empty();
          el.adopt(elgrid);
          elgrid.getElements('table').each(function(table, i){
            if(i === 0){
              var tr = table.getElement('tr');
              tr.destroy();
            }
            if(i > 4) table.destroy();
          })
          el.show();
        }
        return;
      }
    }).get();
  },

  banners : function(){
    var el = document.id(document.body).getElement('.banner');
    if(!el) return;
    this.images = el.getElements('img');
    this.images.each(function(im){im.fade('hide');});
    this.images_pos = 0;
    this.banner_loop();
  },
  banner_loop : function(){
    var dur    = 1000;
    var toShow = this.images[this.images_pos];
    var toHide = this.images[(this.images_pos == 0) ? this.images.length -1 : this.images_pos-1];
    new Fx.Tween(toHide, {duration:dur}).start('opacity', 0);
    new Fx.Tween(toShow, {duration:dur, onComplete : this.banner_loop.delay(5000, this)}).start('opacity', 1);
    this.images_pos = (this.images_pos+1 == this.images.length) ? 0 : this.images_pos +1;
  }
}

window.addEvent('domready', function(){
  //Framework.ychart();
  Framework.quotecom();
  Framework.commodities();
});