- Timestamp:
- 2012-05-23T17:00:28+12:00 (12 years ago)
- Location:
- main/trunk/greenstone3/web/interfaces/oran
- Files:
-
- 1 added
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
main/trunk/greenstone3/web/interfaces/oran/js/document_scripts.js
r25641 r25660 20 20 template += '<xsl:call-template name="sectionImage"/>'; 21 21 template += '<div id="text' + sectionID + '">'; 22 template += '<xsl: apply-templates select="." mode="document"/>';22 template += '<xsl:call-template name="documentNodeContent"/>'; 23 23 template += '</div>'; 24 24 template += '</xsl:for-each>'; … … 334 334 else if(gs.cgiParams.href && gs.cgiParams.href.length > 0) 335 335 { 336 url += "&d=& lb=1&rl=1&href=" + gs.cgiParams.href;336 url += "&d=&alb=1&rl=1&href=" + gs.cgiParams.href; 337 337 } 338 338 … … 378 378 else if(gs.cgiParams.href && gs.cgiParams.href.length > 0) 379 379 { 380 url += "&a=d&d=& lb=1&rl=1&href=" + gs.cgiParams.href;380 url += "&a=d&d=&alb=1&rl=1&href=" + gs.cgiParams.href; 381 381 } 382 382 … … 566 566 var ilt = ""; 567 567 ilt += '<xsl:template match="/">'; 568 ilt += '<xsl:apply-templates select="/page/pageResponse/document/documentNode" mode="TOC"/>'; 568 ilt += '<xsl:for-each select="/page/pageResponse/document/documentNode">'; 569 ilt += '<xsl:call-template name="documentNodeTOC"/>'; 570 ilt += '</xsl:for-each>'; 569 571 ilt += '</xsl:template>'; 570 572 -
main/trunk/greenstone3/web/interfaces/oran/transform/pages/document.xsl
r25593 r25660 11 11 <!-- use the 'main' layout --> 12 12 <xsl:import href="layouts/main.xsl"/> 13 <xsl:import href="layouts/toc.xsl"/> 13 14 14 15 <!-- style includes global params interface_name, library_name --> … … 89 90 <xsl:choose> 90 91 <xsl:when test="not(/page/pageRequest/paramList/param[@name = 'dmd']) or /page/pageRequest/paramList/param[@name = 'dmd']/@value = 'false'"> 91 <xsl: apply-templates select="." mode="sectionTitleFormat"/>92 <xsl:call-template name="sectionTitleFormat"/><!--<xsl:apply-templates select="." mode="sectionTitleFormat"/>--> 92 93 </xsl:when> 93 94 <xsl:otherwise> 94 <xsl: apply-templates select="." mode="sectionTitle"/>95 <xsl:call-template name="sectionTitle"/><!--<xsl:apply-templates select="." mode="sectionTitle"/>--> 95 96 </xsl:otherwise> 96 97 </xsl:choose> … … 176 177 </xsl:attribute> 177 178 <!-- Get the section content from the document template --> 178 <xsl: apply-templates select="." mode="document"/>179 <xsl:call-template name="documentNodeContent"/><!--xxx<xsl:apply-templates select="." mode="document"/>--> 179 180 </div> 180 181 <xsl:if test="documentNode"> … … 241 242 </xsl:when> 242 243 <xsl:when test="$bookswitch = 'flashxml'"> 243 <xsl: apply-templates mode="flashxml"/>244 <xsl:call-template name="documentNodeFlashXML"/><!--xxx<xsl:apply-templates mode="flashxml"/>--> 244 245 </xsl:when> 245 246 <xsl:when test="$bookswitch = 'on'"> … … 257 258 <xsl:otherwise> 258 259 <xsl:choose> 259 <xsl:when test="/page/pageRequest/paramList/param[@name = ' ed']/@value = '1' or not(util:contains(/page/pageResponse/document/@selectedNode, '.'))">260 <xsl:when test="/page/pageRequest/paramList/param[@name = 'alb']/@value = '1' or (string-length(/page/pageRequest/paramList/param[@name = 'd']/@value) > 0 and (/page/pageRequest/paramList/param[@name = 'ed']/@value = '1' or not(util:contains(/page/pageResponse/document/@selectedNode, '.'))))"> 260 261 <div id="gs-document"> 261 262 <xsl:call-template name="documentPre"/> … … 340 341 </xsl:template> 341 342 342 <xsl:template name="rightSidebar">343 <table id="rightSidebar">344 <tr><td>345 <xsl:call-template name="viewOptions"/>346 </td></tr>347 <tr><td>348 <div id="contentsArea">349 <!-- show the berry basket if it's turned on -->350 <gslib:berryBasket/>351 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>368 369 <!-- the contents (if enabled) -->370 <xsl:choose>371 <xsl:when test="/page/pageResponse/document/documentNode/@docType = 'paged'">372 <gsf:image type="Thumb"/>373 <!-- Table of contents will be dynamically retrieved when viewing a paged document -->374 <script type="text/javascript">375 <xsl:text disable-output-escaping="yes">376 $(window).load(function()377 {378 retrieveTableOfContentsAndTitles();379 });380 </xsl:text>381 </script>382 <div id="tableOfContents"><xsl:text> </xsl:text></div>383 <div id="tocLoadingImage" style="text-align:center;">384 <img src="{util:getInterfaceText($interface_name, /page/@lang, 'loading_image')}"/><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'doc.loading')"/><xsl:text>...</xsl:text>385 </div>386 <table style="width:100%;"><tbody><tr>387 <td><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'doc.filter_pages')"/><xsl:text>: </xsl:text><input id="filterText" type="text" size="27"/></td>388 </tr></tbody></table>389 </xsl:when>390 <xsl:when test="not(/page/pageRequest/paramList/param[@name = 'ed']/@value = '1')">391 <div id="tableOfContents">392 <div id="tocLoadingImage" style="text-align:center;">393 <img src="{util:getInterfaceText($interface_name, /page/@lang, 'loading_image')}"/><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'doc.loading')"/><xsl:text>...</xsl:text>394 </div>395 </div>396 <script type="text/javascript">397 <xsl:text disable-output-escaping="yes">398 $(window).load(function()399 {400 retrieveFullTableOfContents();401 });402 </xsl:text>403 </script>404 </xsl:when>405 <xsl:otherwise>406 <div id="tableOfContents">407 <xsl:attribute name="class">408 <xsl:choose>409 <xsl:when test="count(//documentNode) > 1 and not(/page/pageResponse/format[@type='display']/gsf:option[@name='TOC']) or /page/pageResponse/format[@type='display']/gsf:option[@name='TOC']/@value='true'">visible</xsl:when>410 <xsl:otherwise>hidden</xsl:otherwise>411 </xsl:choose>412 </xsl:attribute>413 <xsl:apply-templates select="documentNode" mode="TOC"/>414 </div>415 </xsl:otherwise>416 </xsl:choose>417 </div>418 </td></tr>419 </table>420 </xsl:template>421 422 343 <!-- Highlight annotations if requested --> 423 344 <xsl:template match="annotation"> … … 432 353 </xsl:template> 433 354 434 <xsl:template match="documentNode" mode="sectionTitleFormat">355 <xsl:template name="sectionTitleFormat"><!--xxx<xsl:template match="documentNode" mode="sectionTitleFormat">--> 435 356 <p> 436 357 <xsl:attribute name="class"><xsl:value-of select="util:hashToDepthClass(@nodeID)"/> sectionHeader</xsl:attribute> … … 443 364 </xsl:if> 444 365 <!-- Display the title for the section regardless of whether automatic section numbering is turned on --> 445 <span><xsl: apply-templates select="." mode="sectionTitle"/></span>366 <span><xsl:call-template name="sectionTitle"/><!--xxx<xsl:apply-templates select="." mode="sectionTitle"/>--></span> 446 367 </p> 447 368 </xsl:template> 448 369 370 449 371 <!-- The default template for displaying section titles --> 450 <xsl:template match="documentNode" mode="sectionTitle">372 <xsl:template name="sectionTitle"><!--xxx<xsl:template match="documentNode" mode="sectionTitle">--> 451 373 <xsl:value-of disable-output-escaping="yes" select="metadataList/metadata[@name = 'Title']"/> 452 374 </xsl:template> … … 517 439 518 440 <!-- The default template for displaying the document content --> 519 <xsl:template match="documentNode" mode="document">441 <xsl:template name="documentNodeContent"><!--xxx<xsl:template match="documentNode" mode="document">--> 520 442 <!-- Hides the "This document has no text." message --> 521 443 <xsl:variable name="noText"><gsf:metadata name="NoText"/></xsl:variable> … … 531 453 </xsl:when> 532 454 <xsl:otherwise> 533 <xsl:apply-templates select="."/> 455 <xsl:for-each select="nodeContent"><!--xxx<xsl:apply-templates select="."/>--> 456 <xsl:call-template name="documentNodeContent"/> 457 </xsl:for-each> 534 458 </xsl:otherwise> 535 459 </xsl:choose> … … 537 461 </xsl:for-each><xsl:text> </xsl:text> 538 462 </xsl:template> 539 540 <!-- This template is used to display the table of contents -->541 <xsl:template match="documentNode" mode="TOC">542 543 <!-- check if this is the currently selected table of contents item -->544 <xsl:variable name="isCurrent" select="nodeContent"/>545 546 <!-- formulate the link -->547 <xsl:variable name="contentsLink">548 <xsl:value-of select='$library_name'/>?a=d&c=<gslib:collectionNameShort/>&d=<xsl:value-of select='@nodeID'/><xsl:if test="documentNode">.pr</xsl:if>&sib=1549 </xsl:variable>550 551 <ul>552 <table><tr>553 <!-- The expand/collapse button (not displayed for the top level node) -->554 <xsl:if test="util:hashToDepthClass(@nodeID) != 'sectionHeaderDepthTitle'">555 <td>556 <xsl:choose>557 <xsl:when test="not(nodeContent and not(documentNode))">558 <img id="ttoggle{@nodeID}" onclick="toggleSection('{@nodeID}');" class="icon">559 <xsl:attribute name="src">560 <xsl:choose>561 <xsl:when test="/page/pageRequest/paramList/param[@name = 'ed']/@value = '1' or /page/pageResponse/document/@selectedNode = @nodeID">562 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'collapse_image')"/>563 </xsl:when>564 <xsl:otherwise>565 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'expand_image')"/>566 </xsl:otherwise>567 </xsl:choose>568 </xsl:attribute>569 </img>570 </xsl:when>571 <xsl:otherwise>572 <xsl:attribute name="class">emptyIcon</xsl:attribute>573 </xsl:otherwise>574 </xsl:choose>575 </td>576 </xsl:if>577 578 <!-- The chapter/page icon -->579 <td>580 <img>581 <xsl:if test="nodeContent and not(documentNode)">582 <xsl:attribute name="class">leafNode</xsl:attribute>583 </xsl:if>584 585 <xsl:attribute name="src">586 <xsl:choose>587 <xsl:when test="nodeContent and not(documentNode)">588 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'page_image')"/>589 </xsl:when>590 <xsl:otherwise>591 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'chapter_image')"/>592 </xsl:otherwise>593 </xsl:choose>594 </xsl:attribute>595 </img>596 </td>597 598 <!-- The section name, links to the section in the document -->599 <td>600 <a id="toclink{@nodeID}">601 <xsl:choose>602 <xsl:when test="/page/pageResponse/document/@docType = 'paged'">603 <xsl:attribute name="href"><xsl:value-of select="$library_name"/>?a=d&c=<xsl:value-of select="/page/pageResponse/collection/@name"/>&d=<xsl:value-of select="@nodeID"/>&dt=<xsl:value-of select="@docType"/>&p.a=b&p.s=<xsl:value-of select="/page/pageResponse/service/@name"/></xsl:attribute>604 </xsl:when>605 <xsl:otherwise>606 <xsl:attribute name="href">javascript:focusSection('<xsl:value-of select="@nodeID"/>');</xsl:attribute>607 </xsl:otherwise>608 </xsl:choose>609 <xsl:if test="util:hashToSectionId(@nodeID)">610 <xsl:value-of select="util:hashToSectionId(@nodeID)"/>611 <xsl:text> </xsl:text>612 </xsl:if>613 <xsl:apply-templates select="." mode="sectionTitle"/>614 </a>615 </td>616 </tr></table>617 618 <!-- display any child items -->619 <xsl:if test="documentNode">620 <li id="toc{@nodeID}">621 <xsl:attribute name="style">622 <xsl:choose>623 <xsl:when test="/page/pageRequest/paramList/param[@name = 'ed']/@value = '1' or /page/pageResponse/document/@selectedNode = @nodeID">624 <xsl:text>display:block;</xsl:text>625 </xsl:when>626 <xsl:otherwise>627 <xsl:text>display:none;</xsl:text>628 </xsl:otherwise>629 </xsl:choose>630 </xsl:attribute>631 <xsl:apply-templates select="documentNode" mode="TOC"/>632 </li>633 </xsl:if>634 635 </ul>636 </xsl:template>637 463 638 464 <!-- Used to produce a version of the page in a format that can be read by the realistic books plugin --> 639 <xsl:template match="documentNode" mode="flashxml">465 <xsl:template name="documentNodeFlashXML"><!--xxx<xsl:template match="documentNode" mode="flashxml">--> 640 466 <xsl:text disable-output-escaping="yes"> 641 467 <Section> … … 651 477 <xsl:value-of select="normalize-space(nodeContent)" disable-output-escaping="yes"/> 652 478 653 <xsl: if test="documentNode">654 <xsl: apply-templates select="documentNode" mode="flashxml"/>655 </xsl: if>479 <xsl:for-each select="documentNode"> 480 <xsl:call-template name="documentNodeFlashXML"/><!--<xsl:apply-templates select="documentNode" mode="flashxml"/>--> 481 </xsl:for-each> 656 482 657 483 <xsl:text disable-output-escaping="yes"> … … 675 501 676 502 <xsl:template match="/page"><xsl:apply-templates select="/page/pageResponse/document"/></xsl:template> <!-- this to be deleted eventually --> 677 678 <xsl:template name="viewOptions">679 <table class="viewOptions ui-state-default ui-corner-all"><tr>680 681 <!-- Paged-image options -->682 <xsl:if test="count(//documentNode/metadataList/metadata[@name = 'Screen']) > 0 or /page/pageResponse/document/documentNode/@docType = 'paged'">683 <td>684 <select id="viewSelection" onchange="changeView();">685 <xsl:choose>686 <xsl:when test="/page/pageRequest/paramList/param[@name = 'view']/@value = 'image'">687 <option>Default view</option>688 <option selected="true">Image view</option>689 <option>Text view</option>690 </xsl:when>691 <xsl:when test="/page/pageRequest/paramList/param[@name = 'view']/@value = 'text'">692 <option>Default view</option>693 <option>Image view</option>694 <option selected="true">Text view</option>695 </xsl:when>696 <xsl:otherwise>697 <option selected="true">Default view</option>698 <option>Image view</option>699 <option>Text view</option>700 </xsl:otherwise>701 </xsl:choose>702 </select>703 </td>704 </xsl:if>705 706 <!-- Realistic books link -->707 <xsl:if test="/page/pageResponse/collection[@name = $collName]/metadataList/metadata[@name = 'tidyoption'] = 'tidy'">708 <td>709 <img>710 <xsl:attribute name="src"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'realistic_books_image')"/></xsl:attribute>711 </img>712 <input id="rbOption" type="checkbox" onclick="bookInit();" class="optionCheckBox"/>713 </td>714 </xsl:if>715 716 <!-- Highlight on/off button -->717 <xsl:if test="/page/pageRequest/paramList/param[@name = 'p.a']/@value = 'q' or /page/pageRequest/paramList/param[@name = 's1.query']">718 <td>719 <img>720 <xsl:attribute name="src"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'highlight_image')"/></xsl:attribute>721 </img>722 <input id="highlightOption" type="checkbox" class="optionCheckBox">723 <xsl:choose>724 <xsl:when test="/page/pageRequest/paramList/param[@name = 'hl']/@value = 'on'">725 <xsl:attribute name="onclick">726 <xsl:text>removeHighlight();</xsl:text>727 </xsl:attribute>728 <xsl:attribute name="checked">true</xsl:attribute>729 </xsl:when>730 <xsl:otherwise>731 <xsl:attribute name="onclick">732 <xsl:text>addHighlight();</xsl:text>733 </xsl:attribute>734 </xsl:otherwise>735 </xsl:choose>736 </input>737 </td>738 </xsl:if>739 <td style="vertical-align:top; text-align:right;">740 <xsl:if test="not(/page/pageResponse/format[@type='display']/gsf:option[@name='TOC']) or /page/pageResponse/format[@type='display']/gsf:option[@name='TOC']/@value='true'">741 <span class="tableOfContentsTitle"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'doc.table_of_contents')"/></span>742 743 <a id="sidebarMinimizeButton" href="javascript:minimizeSidebar();" style="float: right; font-size:0.6em;">744 <img class="icon" style="padding-top:3px;">745 <xsl:attribute name="src">746 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'collapse_image')"/>747 </xsl:attribute>748 </img>749 </a>750 <a id="sidebarMaximizeButton" href="javascript:maximizeSidebar();" style="float: right; font-size:0.6em; display:none;">751 <img class="icon" style="padding-top:3px;">752 <xsl:attribute name="src">753 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'expand_image')"/>754 </xsl:attribute>755 </img>756 </a>757 </xsl:if>758 </td>759 </tr>760 <tr id="zoomOptions">761 <!-- This is invisible unless it is made visible by Javascript controlling the image zooming -->762 <xsl:attribute name="style">display: none;</xsl:attribute>763 <td style="width:40%;">764 <xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'doc.zoom')"/><input id="zoomToggle" type="checkbox"/>765 <script type="text/javascript">766 <xsl:text disable-output-escaping="yes">767 $("#zoomToggle").change(function()768 {769 _imageZoomEnabled = !_imageZoomEnabled;770 });771 </xsl:text>772 </script>773 </td>774 <td style="width:60%;">775 <div>776 <div style="float:left; width:30%;"><xsl:value-of select="util:getInterfaceText($interface_name, /page/@lang, 'doc.zoom_size')"/><xsl:text>:</xsl:text></div>777 <div id="zoomSlider" style="float:right; width:65%; height:5px; margin-top:6px;"><xsl:text> </xsl:text></div>778 <script type="text/javascript">779 <xsl:text disable-output-escaping="yes">780 $("#zoomSlider").slider(781 {782 change: function(event, ui)783 {784 var sliderValue = ui.value;785 var divs = document.getElementsByTagName("DIV");786 for(var i = 0; i < divs.length; i++)787 {788 if(divs[i].getAttribute("id") && divs[i].getAttribute("id").search(/^mover.*/) != -1)789 {790 divs[i].style.height = 200 + (2 * sliderValue) + "px";791 divs[i].style.width = 200 + (2 * sliderValue) + "px";792 }793 }794 }795 });796 </xsl:text>797 </script>798 <style>.ui-slider .ui-slider-handle{height:0.8em; width:1.0em;}</style>799 <div style="float:clear;"><xsl:text> </xsl:text></div>800 </div>801 </td>802 </tr>803 </table>804 </xsl:template>805 503 806 504 <xsl:template name="documentPre">
Note:
See TracChangeset
for help on using the changeset viewer.