Copied to clipboard

Flag this post as spam?

This post will be reported to the moderators as potential spam to be looked at


  • Daniil 5 posts 25 karma points
    Mar 22, 2012 @ 12:37
    Daniil
    0

    Link to PDF from menu

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE xsl:stylesheet [ <!ENTITY nbsp "&#x00A0;"> ]>
    <xsl:stylesheet
      version="1.0"
      xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
      xmlns:msxml="urn:schemas-microsoft-com:xslt"
      xmlns:umbraco.library="urn:umbraco.library" xmlns:Exslt.ExsltCommon="urn:Exslt.ExsltCommon" xmlns:Exslt.ExsltDatesAndTimes="urn:Exslt.ExsltDatesAndTimes" xmlns:Exslt.ExsltMath="urn:Exslt.ExsltMath" xmlns:Exslt.ExsltRegularExpressions="urn:Exslt.ExsltRegularExpressions" xmlns:Exslt.ExsltStrings="urn:Exslt.ExsltStrings" xmlns:Exslt.ExsltSets="urn:Exslt.ExsltSets"
      exclude-result-prefixes="msxml umbraco.library Exslt.ExsltCommon Exslt.ExsltDatesAndTimes Exslt.ExsltMath Exslt.ExsltRegularExpressions Exslt.ExsltStrings Exslt.ExsltSets ">

    <xsl:output method="xml" omit-xml-declaration="yes" />

    <xsl:param name="currentPage"/>
    <xsl:variable name="MediaNodeId" select="./@id"/>
    <!-- Input the documenttype you want here -->
    <xsl:variable name="level" select="1"/>

    <xsl:template match="/">

    <!-- The fun starts here -->
    <ul class=" menu nav">
    <xsl:for-each select="$currentPage/ancestor-or-self::* [@level=$level]/* [@isDoc and string(umbracoNaviHide) != '1']">
      <li>
        <a href="{umbraco.library:NiceUrl(@id)}">
          <xsl:value-of select="@nodeName"/>
        </a>
        <xsl:if test="count(./child::*[@isDoc and string(umbracoNaviHide) != '1']) &gt; 0">
          <ul>
            <xsl:for-each select="./child::*[@isDoc and string(umbracoNaviHide) != '1']">
              <li>
                <xsl:choose>

                    <xsl:when test="name()= 'Link' ">
                      
                    <xsl:if test="linkUrl!=''">
                       <a href="{umbraco.library:GetMedia(linkUrl, 0)/umbracoFile}" target="_blank">
                         <xsl:value-of select="@nodeName"/></a>
                  </xsl:if>
                    </xsl:when>         
              
                   <xsl:otherwise>
                    <a href="{umbraco.library:NiceUrl(@id)}">
                    <xsl:value-of select="@nodeName"/></a>
                  </xsl:otherwise>
              
               </xsl:choose>   
                
                 <xsl:if test="count(./child::*[@isDoc and string(umbracoNaviHide) != '2']) &gt; 0">
          <ul>
            <xsl:for-each select="./child::*[@isDoc and string(umbracoNaviHide) != '2']">
              <li>
                <a href="{umbraco.library:NiceUrl(@id)}">
                  <xsl:value-of select="@nodeName"/>
                </a>
              </li>
            </xsl:for-each>
          </ul>  
        </xsl:if>
              </li>
            </xsl:for-each>
          </ul>  
        </xsl:if>
      </li>
    </xsl:for-each>
    </ul>
    <div id="jflanguageselection"><div class="rawimages"><span id="active_language"><a href="http://www.hooymans-duivensport.nl/nl"><img src="/images/nl.gif" alt="Nederlands (NL-nl)" title="Nederlands (NL-nl)" /></a></span><span><a href="http://www.hooymans-duivensport.nl/en"><img src="/images/en.gif" alt="English (United Kingdom)" title="English (United Kingdom)" /></a></span></div></div>
    </xsl:template>

    </xsl:stylesheet>

    I need to make a link in the menu on the pdf file I get this error.

     

    Error occured

    System.OverflowException: Value was either too large or too small for an Int32.
    at System.Convert.ToInt32(Double value)
    at System.Convert.ChangeType(Object value, Type conversionType, IFormatProvider provider)
    at System.Xml.Xsl.Runtime.XmlQueryRuntime.ChangeTypeXsltArgument(XmlQueryType xmlType, Object value, Type destinationType)
    at System.Xml.Xsl.Runtime.XmlQueryContext.InvokeXsltLateBoundFunction(String name, String namespaceUri, IList`1[] args)
    at (XmlQueryRuntime {urn:schemas-microsoft-com:xslt-debug}runtime)
    at Root(XmlQueryRuntime {urn:schemas-microsoft-com:xslt-debug}runtime)
    at System.Xml.Xsl.XmlILCommand.Execute(Object defaultDocument, XmlResolver dataSources, XsltArgumentList argumentList, XmlWriter writer)
    at System.Xml.Xsl.XslCompiledTransform.Transform(IXPathNavigable input, XsltArgumentList arguments, TextWriter results)
    at umbraco.presentation.webservices.codeEditorSave.SaveXslt(String fileName, String oldName, String fileContents, Boolean ignoreDebugging)

  • MikeD 92 posts 112 karma points
    Mar 22, 2012 @ 16:31
    MikeD
    0

    Here is some code I am using on a site.  This menu includes PDFs (catalog) and external links.  Hope this helps.

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE xsl:stylesheet [
        <!ENTITY nbsp "&#x00A0;">
    ]>
    <xsl:stylesheet
    version="1.0"
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns:msxml="urn:schemas-microsoft-com:xslt"
    xmlns:umbraco.library="urn:umbraco.library"
    exclude-result-prefixes="msxml umbraco.library">

    <xsl:output method="xml" omit-xml-declaration="yes" />
    <xsl:param name="currentPage"/>

    <!-- Input the documenttype you want here -->
    <xsl:variable name="level" select="1"/>

    <xsl:template match="/">

    <ul id="topNavigation">
      <xsl:for-each select="$currentPage/ancestor-or-self::* [@level=$level]/* [@isDoc and string(showInTopNavigation) = '1']">
        <xsl:choose>
    <!-- is this a link to the catalog?  -->
          <xsl:when test="catalog !=''">
            <li>
              <href="{umbraco.library:GetMedia(catalog, false())/umbracoFile}" style="color: #f68823;" target="_blank">
              <img src="/images/CatalogIcon.png" style="margin: 0px 5px;" border="0" />&nbsp;
                <xsl:value-of select="@nodeName"/>
              </a>
            </li>
          </xsl:when>
    <!-- is this an external link? -->
          <xsl:when test="externalLink !=''">
              <img src="/images/MenuSeparator.png" width="6" height="40" align="middle" />
            <li>
              <href="{externalLink}" target="_blank">
                <xsl:value-of select="@nodeName"/>
              </a>
            </li>
          </xsl:when>
          <xsl:otherwise>
            <li>
              <class="navigation" href="{umbraco.library:NiceUrl(@id)}">
                <xsl:value-of select="@nodeName"/>
              </a>
              <img src="/images/MenuSeparator.png" width="6" height="40" align="middle" />
            </li>
          </xsl:otherwise>
        </xsl:choose>
      </xsl:for-each>
    </ul>

    </xsl:template>

    </xsl:stylesheet>

     

  • Steve 26 posts 46 karma points
    Feb 24, 2015 @ 16:00
    Steve
    0

    Hi how would I implement this in a drop-down or fly-out menu?

    thx

Please Sign in or register to post replies

Write your reply to:

Draft