Changeset 26748

Show
Ignore:
Timestamp:
17.01.2013 21:11:09 (6 years ago)
Author:
davidb
Message:

Basic functionality of generating a collection space frameset is now complete.

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • gs3-extensions/html-to-expeditee/trunk/src/src/cgi-bin/generate-collection-space.pl.in

    r26747 r26748  
    6060     
    6161    <script type="text/javascript"> 
    62         var clLinks = []; 
    63         var numClLinks; 
     62        var clPages = []; 
     63        var numClPages; 
    6464     
    6565        \$(function(){ 
     
    8484                } 
    8585                 
    86                  
    87                  
    88                  
    89             return false; 
     86                var gs2 = $isGSDL2; 
     87                 
     88                var url; 
     89                if(gs2){ 
     90                    url = "library.cgi"; 
     91                    url += "?c=" + collect + "&a=d&cl=" + cl; 
     92                }else{ 
     93                    url = "library"; 
     94                    url += "?c=" + collect + "&a=b&rt=s&s=ClassifierBrowse&cl=" + cl; 
     95                    url += "&excerptid=gs_content"; 
     96                } 
     97                 
     98                /* processing animation */ 
     99                 
     100                clPages = []; 
     101                var outstandingURLs = []; 
     102                var visitedURLs = {}; 
     103                 
     104                outstandingURLs.push(url); 
     105                visitedURLs[url] = 1; 
     106                 
     107                while(outstandingURLs.length>0){ 
     108                     
     109                    url = outstandingURLs.shift(); 
     110                     
     111                    var clHtml = urlGetSync(url); 
     112                     
     113                    var aElems; 
     114                    var workingTrav = document.getElementById("workingTraverse"); 
     115                    workingTrav.innerHTML = clHtml; 
     116                    aElems = workingTrav.getElementsByTagName("a"); 
     117                     
     118                    var actionRE = new RegExp("(\\\\/)(?:document|browse)(\\\\/)"); 
     119                    var clRE = new RegExp("(\\\\/)browse\\\\/" + cl + "(\\\\/\\\\d+)+(\$)"); 
     120                    var docRE = new RegExp("(?:\\\\/)document\\\\/(.*?)(?:\$)"); 
     121           
     122                    for(var i = 0; i < aElems.length; i++){ 
     123                        var aElem = aElems[i]; 
     124                        var href = aElem.href; 
     125                         
     126                        if(href && href.match(actionRE)){ 
     127                            if(href.match(clRE)){ 
     128                                if(!visitedURLs[href]){ 
     129                                    var clPage = href; 
     130                                    console.log("Found a new cl link: " + clPage); 
     131                                    visitedURLs[clPage] = 1; 
     132                                    clPages.push(clPage); 
     133                                } 
     134                            } 
     135                        } 
     136                    } 
     137                } 
     138                 
     139                numClPages = clPages.length; 
     140                 
     141                var iframe = document.getElementById("iframe"); 
     142                 
     143                var url = clPages.shift(); 
     144                 
     145                iframe.src = url; 
     146                 
     147                var progressbar = document.getElementById("progressbar"); 
     148                progressbar.style.dispay = "block"; 
     149                 
     150                 
     151            return false; }); 
    90152        }); 
    91153         
     
    120182                 
    121183                //Need to change htmlToExpeditee code to account for links 
    122                 var expFrameTre = htmlToExpeditee(gsContent); 
     184                var expFrameTree = htmlToExpeditee(gsContent); 
     185                var expFrame = JSON.stringify(expFrameTree); 
    123186                 
    124187                var collect = document.getElementById("collect").value; 
     
    148211                    var gs2 = $isGSDL2; 
    149212                     
    150                     var url; 
    151                      
    152                     var url; 
    153                      
    154                     if(gs2){ 
    155                         url = "library.cgi"; 
    156                         url += "?c=" + collect + "&a=d&d=" + docOID; 
    157                     }else{ 
    158                         url = "library"; 
    159                         url += "?c=" + collect + "&a=d&d=" + docOID; 
    160                     } 
    161                      
    162                     iframe.src = url; 
     213                    iframe.src = clPage; 
     214                    console.log("iframe url: " + iframe.src + " ****"); 
    163215                }else{ 
    164216