// overriding ajax caller in base version of gallery lightbox
//Lightbox.prototype.addImages = function(elem) {
  
//}


// load image strip on side, no need to reload via ajax since we're already loading it in.
// this just mimics the existing carousel functional
Lightbox.prototype.loadImageStrip = function() {
  //alert(this.selImage.classNames());
  //this.selImage.innerHTML;
  var json = this.imageArray[this.activeImage][1].evalJSON();
  var gallery = $$('.gallery-' + json.lightboxid)[0];
  var set = Element.select(gallery, '.imageset');
  
  
  $('javascroll').innerHTML = '';
  var cont = Builder.node('div', {'className':'carousel-container'}, [
    Builder.node('ul', {'className':'carousel-items'}, [
              
      ])  
    ]);
  
  
  
  $('javascroll').appendChild(cont);
  
  
  $$('.carousel-items')[0].innerHTML = set[0].innerHTML;
  
  
  //Element.select(cont, '.carousel-items')[0].innerHTML = this.selImage.innerHTML;
  var els = Element.select(cont, 'li');
  
  
  
  // change li class to carousel-panel to carousel-panel
 // 
  //
  
  
  els.each(function(li) {
    li.addClassName('carousel-panel');
    li.rel = 'lightbox[carousel-popup]';
  });
  
  
  
  // change rel to carousel-popup
  this.bindNavigation();
  
  
  // load Lightbox again to register side images.
  
}

Lightbox.prototype.loadImageStrip = function() {
  
}


///////// DEBUG STARTS HERE

Lightbox.prototype.showImage = function(){
   this.loading.hide();
   
   
    
    
   var imageNum = 0;
   var imageLink = $('lightboxImage').getAttribute('src'); 
   
   
   //alert(this.imageArray[imageNum][0]);
   for(var i = 0; i < this.imageArray.length; i++) {
      
      if (this.imageArray[i][0] == imageLink) {
        //console.log(this.imageArray[i][0] + ' vs ' + imageLink);
        imageNum++;
        break;
      }
   }
   
   
   this.activeImage = imageNum;
   

       
   
    var json = this.imageArray[this.activeImage][1].evalJSON();
    
    
    if (json.type == 'Video') {
        
        this.showVideo(json);
      
    }
           

    
    
    new Effect.Appear(this.lightboxImage, { 
        duration: this.resizeDuration, 
        queue: 'end', 
        afterFinish: (function(){
            
           // need to update activeImage because it's lost for some reason
           
          
          this.updateDetails();
          
        }).bind(this) 
    });
    this.preloadNeighborImages();
    
}    


 


modules.loadActions.prototype.ScrollGallery = function(){
  ScrollGallery = this.ScrollGallery;
  
    
  
  ScrollGallery.load = function(params, container, historyActions) {
    
    
    
    var pfx = SiteVars.path_to_top;
    
    
    if (container.title) {
      container.json = container.title;
      container.removeAttribute('title');
    }
    
    var json = container.json.evalJSON();
    var searchurl = ''; 
    
    
    
    params += '&lightboxid=' + json.lightboxid + '&tags=' + SiteVars.islandId + '&islandId=' + SiteVars.islandId;
    
    
    if ((typeof CoreSiteVars != null && typeof CoreSiteVars != 'undefined')) {
      if ( CoreSiteVars.cmscontext == 'staging' ) {
        pfx = '/' + CoreSiteVars.cmscontext;
      }
    }
    
    
    
    
    if (Element.hasClassName(container, 'media-container')) {
      searchurl =  pfx + '/internal/gallery/load-media-content?searchTerm=' + json.searchTerm;  
    } else {
      searchurl =  pfx + '/internal/gallery/load-scrollable-content';
    }
    
    if(SiteVars.currentLocale.indexOf('en')==-1){
      searchurl += '&pageSize=14'
    }
    
    
    var opts = {
      url: searchurl,
      sendMethod:'get',
      params:params
    };
    
    /* opts.onLoad = function(){
      
    } */
    
    opts.onComplete = function(r) {
      
      if((historyActions) && ('historyAdd' in container)){
        AjaxHistory.hashAlert = false;
        container.historyAdd({params:'pageNumber=' + historyActions.usePageNumber + '&contentType=' + historyActions.useContentType + historyActions.useExtra});
      }
      
      container.innerHTML = '';
      
      
      var elem = new Element('div');
      elem.innerHTML = r.responseText;
      var content = Element.select(elem, '.imageset')[0];
      var paging  = Element.select(elem, '.paging')[0];
      
      Element.insert(container, {bottom: paging});
      Element.insert(container, {bottom: content});
      
      // reload the lbox
      
      if (content.innerHTML == '') {
        content.parentNode.innerHTML = SiteVars.modules.gallery.phrases.noresults;
      } else {
        
        var temp_panels = Element.select(container, '.panel');
        temp_panels.each(function(item) {
            item.json = item.title;
            item.removeAttribute('title');
        });
        
        
        
      }
      
    }
    
    modules.sendAsync(opts);
    
  }
  
  // paginate
  ScrollGallery.Page = function(pageNumber, container, searchTerm) {
    
    var contentType = 'Image';
    var extra = '';
    
    if (container == 'video-container') {
      contentType = 'Video'
    }
    
    if (searchTerm) {
      extra = '&searchTerm=' + searchTerm;
      contentType = '';
    }
    
    if(SiteVars.currentLocale.indexOf('en')==-1){
      //alert(SiteVars.currentLocale);
      extra += '&pageSize=14'
    }
    
    if((location.hash!='') && (location.hash.indexOf('"id" : "'+$(container).id)==-1) && (AjaxHistory.enabledElems.length>1)){
      var useNum = (pageNumber > 0) ? pageNumber-1 : 0;
      AjaxHistory.hashAlert = false;
      $(container).historyAdd({params:'pageNumber=' + useNum + '&contentType=' + contentType + extra});
    }
    
    $(container).innerHTML = '<img src="/template_images/loading.gif">';
    ScrollGallery.load('pageNumber=' + pageNumber + '&contentType=' + contentType + extra, $(container), {usePageNumber:pageNumber, useContentType:contentType, useExtra:extra});
  }
  
  ScrollGallery.bindSearch = function() {
    //$('gallerystf')
    
    $('gallerysbtn').onclick = function() {
      $$('#video-container')[0].innerHTML = '<img src="/template_images/loading.gif">';
      $$('#image-container')[0].innerHTML = '<img src="/template_images/loading.gif">';
      ScrollGallery.load('contentType=Video&searchTerm=' + $('gallerysb').value, $$('#video-container')[0]);
      ScrollGallery.load('contentType=Image&searchTerm=' + $('gallerysb').value, $$('#image-container')[0] );
    }
    
  }
   
   
  if($$('#video-container')[0]){
    
    ScrollGallery.load('contentType=Video', $$('#video-container')[0]);
  }
  
  

  
  
  if($$('.media-container')[0]) {
        //searchurl = SiteVars.path_to_top + '/load-media-content' + '?context=' + setting.island + '&async=true&galleryInit=true&xmlGallery=' + setting.path + setting.classctx + '&lightboxid=' + setting.id + '&searchTerm=' + setting.searchTerm;
     
    ScrollGallery.load('',$$('#image-container')[0] );
  } else if($$('#image-container')[0]){
    
    ScrollGallery.load('contentType=Image',$$('#image-container')[0] );
  }
  
  Event.observe($('image-container'), 'ajax:history-action', function(e){
      var myJsonHash = $('image-container').jsonHash
      //console.log(myJsonHash.params);
      $('image-container').innerHTML = '<img src="/template_images/loading.gif">';
      ScrollGallery.load(myJsonHash.params, $('image-container'));
  });
  
  // bind search box
  ScrollGallery.bindSearch();
  
  
}

