Changeset 25462

Show
Ignore:
Timestamp:
24.04.2012 13:09:10 (7 years ago)
Author:
sjm84
Message:

Fixes to map_scripts and also changed the on-page editing that it reloads the page with the expanded view. Later we will probably make the page reload unnecessary. Also fixed the preferences page.

Location:
main/trunk/greenstone3/web/interfaces/oran
Files:
6 modified

Legend:

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

    r25441 r25462  
    9191                if(sectionsStart == 0 || sectionsEnd == -1 || sectionsEnd <= sectionsStart) 
    9292                { 
    93                     callback(""); 
     93                    callback(" "); 
     94                    return; 
    9495                } 
    9596                 
    9697                var sections = response.substring(sectionsStart, sectionsEnd); 
    97                 sections = sections.replace(/href=".*?#top"/g, "href=\"" + gs.requestInformation.fullURL + "#top\""); 
    98                  
    9998                callback(sections); 
    10099            } 
     
    138137                if(text) 
    139138                {    
     139                    var nodeID = sectionID.replace(/\./g, "_"); 
     140                    if(text.search("wrap" + nodeID) != -1) 
     141                    { 
     142                        document.getElementById("zoomOptions").style.display = "table-row"; 
     143                    } 
    140144                    getSubSectionsForSection(sectionID, function(sections) 
    141                     { 
     145                    {                    
    142146                        if(sections) 
    143147                        { 
    144148                            var textElem = document.getElementById("doc" + sectionID); 
    145                             textElem.innerHTML = text + sections; 
     149                            $(textElem).html(text + sections); 
    146150                             
    147151                            docElem.setAttribute("class", docElem.getAttribute("class").replace(/\bnoText\b/g, "")); 
     
    282286                } 
    283287                startCounter++; 
    284                  
     288 
    285289                var toggleFunction = function(tid) 
    286290                { 
  • main/trunk/greenstone3/web/interfaces/oran/js/map-scripts.js

    r25369 r25462  
    3636        else 
    3737        { 
    38             document.getElementById("map_canvas").style.display = "none"; 
     38            document.getElementById("map_canvas").style.visibility = "hidden"; 
    3939        } 
    4040    } 
     
    149149     
    150150    var ajax = new gs.functions.ajaxRequest(); 
    151     ajax.open("GET", _baseURL + "a=q&s=RawQuery&rt=rd&c=" + gs.cgiParams.c + "&s1.rawquery=" + query + "&excerptid=jsonNodes", true); 
     151    ajax.open("GET", gs.xsltParams.library_name + "?a=q&s=RawQuery&rt=rd&c=" + gs.cgiParams.c + "&s1.rawquery=" + query + "&excerptid=jsonNodes", true); 
    152152    ajax.onreadystatechange = function() 
    153153    { 
     
    323323    google.maps.event.addListener(marker, 'click', function() 
    324324    { 
    325         document.location.href = _baseURL + "a=d&ed=1&c=" + gs.cgiParams.c + "&d=" + nodeID + "&dt=hierarchy&p.a=b&p.sa=&p.s=ClassifierBrowse"; 
     325        document.location.href = gs.xsltParams.library_name + "?a=d&ed=1&c=" + gs.cgiParams.c + "&d=" + nodeID + "&dt=hierarchy&p.a=b&p.sa=&p.s=ClassifierBrowse"; 
    326326    }); 
    327327} 
     
    400400{ 
    401401    var ajax = new gs.functions.ajaxRequest(); 
    402     ajax.open("GET", _baseURL + "a=b&rt=s&s=ClassifierBrowse&c=" + gs.cgiParams.c + "&cl=" + sectionID + "&excerptid=jsonNodes", true);      
     402    ajax.open("GET", gs.xsltParams.library_name + "?a=b&rt=s&s=ClassifierBrowse&c=" + gs.cgiParams.c + "&cl=" + sectionID + "&excerptid=jsonNodes", true);       
    403403    ajax.onreadystatechange = function() 
    404404    { 
     
    420420                } 
    421421                 
    422                 document.getElementById("map_canvas").style.display = "block"; 
     422                document.getElementById("map_canvas").style.visibility = "visible"; 
    423423            } 
    424424             
     
    482482     
    483483    var ajax = new gs.functions.ajaxRequest(); 
    484     ajax.open("GET", _baseURL + "a=q&s=RawQuery&rt=rd&c=" + gs.cgiParams.c + "&s1.rawquery=" + query + "&excerptid=nearbyDocs&ilt=" + inlineTemplate.replace(/ /, "%20"), true);         
     484    ajax.open("GET", gs.xsltParams.library_name + "?a=q&s=RawQuery&rt=rd&c=" + gs.cgiParams.c + "&s1.rawquery=" + query + "&excerptid=nearbyDocs&ilt=" + inlineTemplate.replace(/ /, "%20"), true);      
    485485    ajax.onreadystatechange = function() 
    486486    { 
     
    650650            sectionToggle.setAttribute("src", gs.imageURLs.loading); 
    651651 
    652             var url = document.URL; 
    653             url = url.replace(/(&|\?)cl=[a-z\.0-9]+/gi, "$1cl=" + sectionID + "&excerptid=div" + sectionID); 
     652            var url = gs.xsltParams.library_name + "/collection/" + gs.cgiParams.c + "/browse/" + sectionID.replace(/\./g, "/") + "?excerptid=div" + sectionID; 
    654653 
    655654            if(gs.cgiParams.berryBasket == "on") 
  • main/trunk/greenstone3/web/interfaces/oran/style/core.css

    r25458 r25462  
    667667/* -------- SEARCH ------- */ 
    668668.paramLabel { 
     669    margin: 2px; 
    669670    float: left; 
    670671    min-width: 250px; 
    671672} 
    672673.paramValue { 
     674    margin: 2px; 
    673675    float: left; 
    674676} 
     
    755757} 
    756758 
    757 #map_canvas{ 
     759.map_canvas_full{ 
    758760    margin:0px auto; 
    759761    width:900px;  
     762    height:500px; 
     763} 
     764 
     765.map_canvas_half{ 
     766    float: right; 
     767    width:450px;  
    760768    height:500px; 
    761769} 
  • main/trunk/greenstone3/web/interfaces/oran/transform/pages/classifier.xsl

    r25144 r25462  
    173173     
    174174    <xsl:template name="mapFeaturesMap"> 
    175         <div id="map_canvas" style="margin:0px auto; width:450px; height:500px; float:right;"><xsl:text> </xsl:text></div> 
     175        <div id="map_canvas" class="map_canvas_half"><xsl:text> </xsl:text></div> 
    176176    </xsl:template> 
    177177</xsl:stylesheet> 
  • main/trunk/greenstone3/web/interfaces/oran/transform/pages/document.xsl

    r25433 r25462  
    191191            <script type="text/javascript" src="interfaces/{$interface_name}/js/documentmaker_scripts.js"><xsl:text> </xsl:text></script> 
    192192            <script type="text/javascript" src="interfaces/{$interface_name}/js/documentmaker_scripts_util.js"><xsl:text> </xsl:text></script> 
     193            <script type="text/javascript"> 
     194                <xsl:text disable-output-escaping="yes"> 
     195                    $(window).load(function() 
     196                    { 
     197                        if(gs.cgiParams.docEdit == "1") 
     198                        { 
     199                            readyPageForEditing(); 
     200                        } 
     201                    }); 
     202                </xsl:text> 
     203            </script> 
    193204            <gsf:metadata name="all"/> 
    194205        </xsl:if> 
     
    302313                    </div> 
    303314                    <div style="margin:5px;" class="ui-state-default ui-corner-all"> 
    304                         <a id="editContentButton" style="padding: 3px; text-decoration:none;" href="javascript:readyPageForEditing();"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'doc.edit_content')"/></a> 
     315                        <a id="editContentButton" style="padding: 3px; text-decoration:none;"> 
     316                            <xsl:attribute name="href"> 
     317                                <xsl:value-of select="$library_name"/> 
     318                                <xsl:text>/collection/</xsl:text> 
     319                                <xsl:value-of select="$collName"/> 
     320                                <xsl:text>/document/</xsl:text> 
     321                                <xsl:value-of select="/page/pageResponse/document/documentNode/@nodeID"/> 
     322                                <xsl:if test="not(/page/pageRequest/paramList/param[@name = 'docEdit']/@value = '1')"> 
     323                                    <xsl:text>?ed=1&amp;docEdit=1</xsl:text> 
     324                                </xsl:if> 
     325                            </xsl:attribute> 
     326                            <xsl:choose> 
     327                                <xsl:when test="/page/pageRequest/paramList/param[@name = 'docEdit']/@value = '1'"> 
     328                                    <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'doc.hide_editor')"/> 
     329                                </xsl:when> 
     330                                <xsl:otherwise> 
     331                                    <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'doc.edit_content')"/> 
     332                                </xsl:otherwise> 
     333                            </xsl:choose> 
     334                        </a> 
    305335                    </div> 
    306336                </div> 
     
    320350                    <gslib:berryBasket/> 
    321351 
    322                     <!-- the book's cover image --> 
    323                     <div id="coverImage"> 
    324                         <xsl:attribute name="class"> 
    325                             <xsl:choose> 
    326                                 <xsl:when test="not(/page/pageResponse/format[@type='display']/gsf:option[@name='coverImage']) or /page/pageResponse/format[@type='display']/gsf:option[@name='coverImage']/@value='true'">visible</xsl:when> 
    327                                 <xsl:otherwise>hidden</xsl:otherwise>     
    328                             </xsl:choose> 
    329                         </xsl:attribute> 
    330                         <gslib:coverImage/><xsl:text> </xsl:text> 
    331                     </div> 
     352                    <!-- Need to be in the context of the top-level documentNode rather than the document for the gsf:metadata call to work --> 
     353                    <xsl:for-each select="documentNode"> 
     354                        <xsl:variable name="hasCover"><gsf:metadata name="hascover"/></xsl:variable> 
     355                        <xsl:if test="$hasCover = '1'"> 
     356                            <!-- the book's cover image --> 
     357                            <div id="coverImage"> 
     358                                <xsl:attribute name="class"> 
     359                                    <xsl:choose> 
     360                                        <xsl:when test="not(/page/pageResponse/format[@type='display']/gsf:option[@name='coverImage']) or /page/pageResponse/format[@type='display']/gsf:option[@name='coverImage']/@value='true'">visible</xsl:when> 
     361                                        <xsl:otherwise>hidden</xsl:otherwise>     
     362                                    </xsl:choose> 
     363                                </xsl:attribute> 
     364                                <gslib:coverImage/><xsl:text> </xsl:text> 
     365                            </div> 
     366                        </xsl:if> 
     367                    </xsl:for-each> 
    332368 
    333369                    <!-- the contents (if enabled) --> 
     
    439475                <script type="text/javascript"> 
    440476                    <xsl:text disable-output-escaping="yes"> 
    441                         $(window).load(function() 
    442477                        { 
    443478                            var nodeID = "</xsl:text><xsl:value-of select="@nodeID"/><xsl:text disable-output-escaping="yes">"; 
     479                            nodeID = nodeID.replace(/\./g, "_"); 
     480 
    444481                            var bigHeight = </xsl:text><xsl:value-of select="$imageHeight"/><xsl:text disable-output-escaping="yes">; 
    445482                            var smallHeight = </xsl:text><xsl:value-of select="$screenImageHeight"/><xsl:text disable-output-escaping="yes">; 
    446                              
    447                             nodeID = nodeID.replace(/\./g, "_"); 
     483 
    448484                            var multiplier = bigHeight / smallHeight; 
    449485 
     
    456492                                speedMultiplier:multiplier    
    457493                            });  
    458                         }); 
     494                        } 
    459495                    </xsl:text> 
    460496                </script> 
     
    720756            </td> 
    721757        </tr> 
    722         <xsl:if test="count(//documentNode/metadataList/metadata[@name = 'Screen']) > 0 and count(//documentNode/metadataList/metadata[@name = 'Source']) > 0"> 
    723             <tr> 
    724                 <td style="width:40%;"> 
    725                     <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'doc.zoom')"/><input id="zoomToggle" type="checkbox"/> 
     758        <tr id="zoomOptions"> 
     759            <xsl:attribute name="style"> 
     760                <xsl:choose> 
     761                    <xsl:when test="count(//documentNode/metadataList/metadata[@name = 'Screen']) > 0 and count(//documentNode/metadataList/metadata[@name = 'Source']) > 0"> 
     762                        <xsl:text>display: table-row;</xsl:text> 
     763                    </xsl:when> 
     764                    <xsl:otherwise> 
     765                        <xsl:text>display: none;</xsl:text> 
     766                    </xsl:otherwise> 
     767                </xsl:choose> 
     768            </xsl:attribute> 
     769            <td style="width:40%;"> 
     770                <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'doc.zoom')"/><input id="zoomToggle" type="checkbox"/> 
     771                <script type="text/javascript"> 
     772                    <xsl:text disable-output-escaping="yes"> 
     773                        $("#zoomToggle").change(function() 
     774                        { 
     775                            _imageZoomEnabled = !_imageZoomEnabled; 
     776                        }); 
     777                    </xsl:text> 
     778                </script> 
     779            </td> 
     780            <td style="width:60%;"> 
     781                <div> 
     782                    <div style="float:left; width:30%;"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'doc.zoom_size')"/><xsl:text>:</xsl:text></div> 
     783                    <div id="zoomSlider" style="float:right; width:65%; height:5px; margin-top:6px;"><xsl:text> </xsl:text></div> 
    726784                    <script type="text/javascript"> 
    727785                        <xsl:text disable-output-escaping="yes"> 
    728                             $("#zoomToggle").change(function() 
     786                            $("#zoomSlider").slider( 
    729787                            { 
    730                                 _imageZoomEnabled = !_imageZoomEnabled; 
     788                                change: function(event, ui) 
     789                                { 
     790                                    var sliderValue = ui.value; 
     791                                    var divs = document.getElementsByTagName("DIV"); 
     792                                    for(var i = 0; i &lt; divs.length; i++) 
     793                                    { 
     794                                        if(divs[i].getAttribute("id") &amp;&amp; divs[i].getAttribute("id").search(/^mover.*/) != -1) 
     795                                        { 
     796                                            divs[i].style.height = 200 + (2 * sliderValue) + "px"; 
     797                                            divs[i].style.width = 200 + (2 * sliderValue) + "px"; 
     798                                        } 
     799                                    } 
     800                                } 
    731801                            }); 
    732802                        </xsl:text> 
    733803                    </script> 
    734                 </td> 
    735                 <td style="width:60%;"> 
    736                     <div> 
    737                         <div style="float:left; width:30%;"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'doc.zoom_size')"/><xsl:text>:</xsl:text></div> 
    738                         <div id="zoomSlider" style="float:right; width:65%; height:5px; margin-top:6px;"><xsl:text> </xsl:text></div> 
    739                         <script type="text/javascript"> 
    740                             <xsl:text disable-output-escaping="yes"> 
    741                                 $("#zoomSlider").slider( 
    742                                 { 
    743                                     change: function(event, ui) 
    744                                     { 
    745                                         var sliderValue = ui.value; 
    746                                         var divs = document.getElementsByTagName("DIV"); 
    747                                         for(var i = 0; i &lt; divs.length; i++) 
    748                                         { 
    749                                             if(divs[i].getAttribute("id") &amp;&amp; divs[i].getAttribute("id").search(/^mover.*/) != -1) 
    750                                             { 
    751                                                 divs[i].style.height = 200 + (2 * sliderValue) + "px"; 
    752                                                 divs[i].style.width = 200 + (2 * sliderValue) + "px"; 
    753                                             } 
    754                                         } 
    755                                     } 
    756                                 }); 
    757                             </xsl:text> 
    758                         </script> 
    759                         <style> 
    760                             .ui-slider .ui-slider-handle{height:0.8em; width:1.0em;} 
    761                         </style> 
    762                         <div style="float:clear;"><xsl:text> </xsl:text></div> 
    763                     </div> 
    764                 </td> 
    765             </tr> 
    766         </xsl:if> 
     804                    <style>.ui-slider .ui-slider-handle{height:0.8em; width:1.0em;}</style> 
     805                    <div style="float:clear;"><xsl:text> </xsl:text></div> 
     806                </div> 
     807            </td> 
     808        </tr> 
    767809        </table>     
    768810    </xsl:template> 
     
    775817     
    776818    <xsl:template name="mapFeatures"> 
    777         <div id="map_canvas"><xsl:text> </xsl:text></div> 
     819        <div id="map_canvas" class="map_canvas_full"><xsl:text> </xsl:text></div> 
    778820 
    779821        <xsl:if test="metadataList/metadata[@name = 'Latitude'] and metadataList/metadata[@name = 'Longitude']"> 
     
    814856    </xsl:template> 
    815857</xsl:stylesheet> 
    816  
  • main/trunk/greenstone3/web/interfaces/oran/transform/pages/pref.xsl

    r25432 r25462  
    216216                <!-- Theme Changer --> 
    217217                <xsl:if test="/page/pageRequest/userInformation and util:contains(/page/pageRequest/userInformation/@groups, 'administrator')"> 
    218                     <script type="text/javascript"> 
    219                         <xsl:text disable-output-escaping="yes"> 
    220                             $(document).ready(function(){ 
    221                                 $("#switcher").themeswitcher({ 
    222                                     imgpath: "interfaces/" + gs.xsltParams.interface_name + "/style/images/", 
    223                                     additionalThemes: [ 
    224                                         {title:"Greenstone Default", name:"custom-theme0", icon:"theme_90_greenstone.png", url:"interfaces/" + gs.xsltParams.interface_name + "/style/themes/main/jquery-ui-1.8.16.custom.css"}, 
    225                                         {title:"Greenstone Custom 1", name:"custom-theme1", icon:"theme_90_start_menu.png", url:"interfaces/" + gs.xsltParams.interface_name + "/style/themes/alt_theme_1/jquery-ui-1.8.16.custom.css"}, 
    226                                         {title:"Greenstone Custom 2", name:"custom-theme2", icon:"theme_90_mint_choco.png", url:"interfaces/" + gs.xsltParams.interface_name + "/style/themes/alt_theme_2/jquery-ui-1.8.16.custom.css"}, 
    227                                         {title:"Greenstone Custom 3", name:"custom-theme3", icon:"theme_90_trontastic.png", url:"interfaces/" + gs.xsltParams.interface_name + "/style/themes/alt_theme_3/jquery-ui-1.8.16.custom.css"} 
    228                                     ] 
     218                    <div> 
     219                        <div class="paramLabel"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'pref.theme')"/></div> 
     220                        <script type="text/javascript"> 
     221                            <xsl:text disable-output-escaping="yes"> 
     222                                $(document).ready(function(){ 
     223                                    $("#switcher").themeswitcher({ 
     224                                        imgpath: "interfaces/" + gs.xsltParams.interface_name + "/style/images/", 
     225                                        additionalThemes: [ 
     226                                            {title:"Greenstone Default", name:"custom-theme0", icon:"theme_90_greenstone.png", url:"interfaces/" + gs.xsltParams.interface_name + "/style/themes/main/jquery-ui-1.8.16.custom.css"}, 
     227                                            {title:"Greenstone Custom 1", name:"custom-theme1", icon:"theme_90_start_menu.png", url:"interfaces/" + gs.xsltParams.interface_name + "/style/themes/alt_theme_1/jquery-ui-1.8.16.custom.css"}, 
     228                                            {title:"Greenstone Custom 2", name:"custom-theme2", icon:"theme_90_mint_choco.png", url:"interfaces/" + gs.xsltParams.interface_name + "/style/themes/alt_theme_2/jquery-ui-1.8.16.custom.css"}, 
     229                                            {title:"Greenstone Custom 3", name:"custom-theme3", icon:"theme_90_trontastic.png", url:"interfaces/" + gs.xsltParams.interface_name + "/style/themes/alt_theme_3/jquery-ui-1.8.16.custom.css"} 
     230                                        ] 
     231                                    }); 
    229232                                }); 
    230                             }); 
    231                         </xsl:text> 
    232                     </script> 
    233                     <div id="switcher"><xsl:text> </xsl:text></div> 
     233                            </xsl:text> 
     234                        </script> 
     235                        <div class="paramValue" id="switcher"><xsl:text> </xsl:text></div> 
     236                    </div> 
     237                    <br class="clear"/> 
    234238                </xsl:if> 
    235239