// -----------------------------------------------------------------------------------
//
//	Ajax Loader v0.1
//
//	author Slavisa Miljanovic <slavisa.miljanovic@softserbia.com>
//
// -----------------------------------------------------------------------------------
    
    function AjaxOverlay(content, container) {
        // Manage arguments and assign defaults 
	    if (typeof container == 'undefined' ) container = document.body;
	    if (null == (this.container = $(container))) throw("Container is not valid");

	    // Assign instance variables
	    this.content = content;
	    this.ajax_overlay = new Element('div', {id:'ajax_overlay', 'class':'ajax_overlay' }).hide();
	    this.ajax_image_bg = new Element('div', {id:'ajax_image_bg', 'class': 'ajax_image_bg' }).hide();
	    
        var arrayPageSize = getPageSize();
        this.ajax_overlay.setStyle({ width: arrayPageSize[0] + 'px', height: arrayPageSize[1] + 'px' });
        this.ajax_image_bg.setStyle({ width: 252 + 'px', height: 188 + 'px', top: 40 + '%' });

	    // Insert the elements into the DOM
	    this.ajax_image_bg.insert(this.content);
	    this.container.insert(this.ajax_overlay);
	    this.container.insert(this.ajax_image_bg);

	    // Content may have been hidden if it is embedded in the page
	    content.show();
	    this.ajax_image_bg.hide();
    }

    AjaxOverlay.prototype.show = function() {
     
      // position of horizontal, vertical scroll bar
      // arrayPageScroll[0] - horizontal
      // arrayPageScroll[1] - vertical
      var arrayPageScroll = document.viewport.getScrollOffsets();
        
      //var scrollTop = parseInt(arrayPageScroll[1] + (document.viewport.getHeight() / 10));
      var scrollTop = parseInt(arrayPageScroll[1]);
      
      windowSize = windowScreenSize();

      //parseInt(document.getElementById('ajax_image_bg').style.top)
      var currentTop = parseInt((windowSize[1] * 40) / 100);
      var newTop = scrollTop + currentTop;

      document.getElementById('ajax_image_bg').setStyle({ top: newTop + 'px'});   
      
    
	    new Effect.Appear(this.ajax_overlay, { duration: 0,  to: 0.7 });
	    new Effect.Appear(this.ajax_image_bg, { duration: 0,  to: 0.8 });

	    //this.ajax_image_bg.show();
      //setTimeout('document.images["ajax_image"].src = document.images["ajax_image"].src;', 50);

	    return this;
    };
    
    AjaxOverlay.prototype.hide = function(event) {
	    this.ajax_image_bg.hide();
	    this.ajax_overlay.hide();
	    return this;
    };

