Changeset 26212

Show
Ignore:
Timestamp:
19.09.2012 11:10:22 (6 years ago)
Author:
sjm84
Message:

The paged-image slider will now try harder to load images if they fail

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • main/trunk/greenstone3/web/interfaces/default/js/document_scripts.js

    r26205 r26212  
    768768    } 
    769769     
    770     var getImage = function(page) 
     770    var getImage = function(page, attemptNumber) 
    771771    { 
    772772        var ajax = gs.functions.ajaxRequest(); 
     
    824824                $(image).error(function() 
    825825                { 
    826                     page.isLoading = false; 
    827                     page.noImage = true; 
    828                     image.setAttribute("src", gs.imageURLs.blank); 
     826                    if(!attemptNumber || attemptNumber < 3) 
     827                    { 
     828                        setTimeout(function(){getImage(page, ((!attemptNumber) ? 1 : attemptNumber + 1));}, 500); 
     829                    } 
     830                    else 
     831                    { 
     832                        page.isLoading = false; 
     833                        page.noImage = true; 
     834                        image.setAttribute("src", gs.imageURLs.blank); 
     835                    } 
    829836                }); 
    830837                image.setAttribute("src", href); 
     
    834841                var title = text.substring(titleStart, titleEnd); 
    835842            } 
    836             else if (ajax.readyState == 4 && !page.failed) 
     843            else if (ajax.readyState == 4) 
    837844            { 
    838845                page.failed = true; 
    839                 getImage(page); 
     846                if(!attemptNumber || attemptNumber < 3) 
     847                { 
     848                    setTimeout(function(){getImage(page, ((!attemptNumber) ? 1 : attemptNumber + 1));}, 500); 
     849                } 
     850                else 
     851                { 
     852                    var image = document.createElement("IMG"); 
     853                    image.setAttribute("src", gs.imageURLs.blank); 
     854                    page.link.innerHTML = ""; 
     855                    page.link.appendChild(image); 
     856                    page.isLoading = false; 
     857                    page.noImage = true; 
     858                } 
    840859            } 
    841860        }