Ignore:
Timestamp:
2013-02-11T15:30:50+13:00 (11 years ago)
Author:
davidb
Message:

Support for Panoramas added

File:
1 edited

Legend:

Unmodified
Added
Removed
  • main/trunk/greenstone3/web/interfaces/default/transform/pages/classifier.xsl

    r26091 r26871  
    134134            <xsl:call-template name="mapFeaturesJSONNodes"/>
    135135        </xsl:if>
     136       
     137        <xsl:if test="/page/pageResponse/format/gsf:option[@name='panoramaViewerEnabled']/@value = 'true'">
     138            <xsl:call-template name="panoramaViewerFeaturesJSONNodes"/>
     139        </xsl:if>
     140       
    136141    </xsl:template>
    137142   
    138143    <xsl:template name="classifierResultsPre">
    139144        <xsl:if test="/page/pageResponse/format[@type='display' or @type='browse' or @type='search']/gsf:option[@name='mapEnabled']/@value = 'true'">
    140             <xsl:call-template name="mapFeaturesMap"/>
     145          <xsl:call-template name="mapFeaturesMap"/>
     146        </xsl:if>
     147        <xsl:if test="/page/pageResponse/format/gsf:option[@name='panoramaViewerEnabled']/@value = 'true'">
     148          <xsl:call-template name="panoramaViewerFeatures"/>
    141149        </xsl:if>
    142150    </xsl:template>
     
    167175   
    168176    <xsl:template name="mapFeaturesMap">
    169         <div id="map_canvas" class="map_canvas_half"><xsl:text> </xsl:text></div>
    170     </xsl:template>
     177      <div id="map_canvas" class="map_canvas_half"><xsl:text> </xsl:text></div>
     178    </xsl:template>
     179
     180    <xsl:template name="panoramaViewerFeaturesJSONNodes">
     181                <div id="jsonPanoNodes" style="display:none;">
     182                        <xsl:text>[</xsl:text>
     183                        <xsl:for-each select="//documentNode">
     184                                <xsl:if test="metadataList/metadata[@name = 'Latitude'] and metadataList/metadata[@name = 'Longitude'] and metadataList/metadata[@name = 'PhotoType']='Panorama'">
     185                                        <xsl:text>{</xsl:text>
     186                                        <xsl:text disable-output-escaping="yes">"nodeID":"</xsl:text><xsl:value-of select="@nodeID"/><xsl:text disable-output-escaping="yes">",</xsl:text>
     187                                        <xsl:text disable-output-escaping="yes">"source":"</xsl:text><xsl:value-of disable-output-escaping="yes" select="metadataList/metadata[@name = 'Source']"/>"<xsl:text>,</xsl:text>
     188                                        <xsl:text disable-output-escaping="yes">"lat":</xsl:text><xsl:value-of disable-output-escaping="yes" select="metadataList/metadata[@name = 'Latitude']"/><xsl:text>,</xsl:text>
     189                                        <xsl:text disable-output-escaping="yes">"lng":</xsl:text><xsl:value-of disable-output-escaping="yes" select="metadataList/metadata[@name = 'Longitude']"/>
     190                                        <xsl:text>}</xsl:text>
     191                                        <xsl:if test="not(position() = count(//documentNode))">
     192                                                <xsl:text>,</xsl:text>
     193                                        </xsl:if>
     194                                </xsl:if>
     195                        </xsl:for-each>
     196                        <xsl:text>]</xsl:text>
     197                </div>
     198                <!-- Although these aren't visible, they are necessary because it forces Greenstone to include this metadata in the page xml -->
     199                <gsf:metadata name="Latitude" hidden="true"/>
     200                <gsf:metadata name="Longitude" hidden="true"/>
     201                <gsf:metadata name="SourceFile" hidden="true"/>
     202                <gsf:metadata name="assocfilepath" hidden="true"/>
     203        <gsf:metadata name="PhotoType" hidden="true"/>
     204        <gsf:metadata name="cv.rotation" hidden="true"/>
     205        </xsl:template>
     206   
     207    <xsl:template name="panoramaViewerFeatures">
     208
     209
     210      <div id="asdf">
     211        <div id="pano-container" class="pano_canvas_half" style="position: relative">
     212          <div style="position: absolute; top: 0px; right: 0px;"><a id="gofullscreen" style="background-color: #008000;" href="">Go Fullscreen</a></div>
     213          <xsl:text> </xsl:text>
     214        </div>
     215      </div>
     216
     217
     218
     219
     220      <gsf:script>
     221<![CDATA[
     222        var cgiargs = '<xsl:template name="mainTemplate"> \
     223        <html> \
     224            <head> \
     225                <xsl:call-template name="create-html-header"/> \
     226            </head> \
     227            \
     228            <body><xsl:call-template name="textDirectionAttribute"/><xsl:call-template name="actionClass"/> \
     229                <div id="containerXX"> \
     230                    <div id="gs_contentXX"> \
     231                        <xsl:apply-templates select="/page"/> \
     232                    </div> \
     233                </div> \
     234            </body> \
     235        </html> \
     236          </xsl:template> \
     237          \
     238          <xsl:template match="/page/pageResponse"> \
     239        <xsl:call-template name="panoramaViewerFeaturesJSONNodes"/> \
     240        <div id="asdf"> \
     241              <div id="pano-container" class="pano_canvas_fullscreen"> \
     242                <xsl:text> </xsl:text> \
     243             </div> \
     244           </div> \
     245          </xsl:template>';
     246
     247          // encodeURIComponent(cgiargs);
     248          // cgiargs.replace(/ /g,"%20")
     249
     250          var full_url = document.location + "?ilt=" + escape(cgiargs);
     251          $('#gofullscreen').attr('href',full_url);
     252]]>
     253      </gsf:script>
     254
     255
     256    </xsl:template>
     257
    171258</xsl:stylesheet>
    172259
Note: See TracChangeset for help on using the changeset viewer.