%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /home/waritko/jetty-distribution-9.4.21.v20190926/webapps/ROOT/templates/
Upload File :
Create Path :
Current File : //home/waritko/jetty-distribution-9.4.21.v20190926/webapps/ROOT/templates/titlevars.vm

## ----------------------------------------------------------------------------
## Compute the title by using the set title if defined or extract it from the
## content, taking into account the new title handling introduced in XWiki
## Platform 2.0.
##
## Prerequisite: Have the $renderedContent variable defined before calling
##               this template.
## Output: In output the $renderedContent variable will be modified if needed
##         and the $titleToDisplay variable created.
## ----------------------------------------------------------------------------
##
## ----------------------------------------------------------------------------------
## Remove the first rendered HTML header (H1-H6) if the following conditions are met:
## - the title compatibility flag is on
## - the title extracted from the rendered content is the same as the set title
##
## We need to do this since we've changed how titles are used and we need to
## ensure we don't break existing documents that have not yet migrated to the
## new way.
## ----------------------------------------------------------------------------------
## NOTE: We don't have to escape the rendered title because:
## * if it comes from the document title/name then it was parsed as plain text
## * if it comes from a heading in the document content then special XML characters are already escaped.
#set ($titleToDisplay = $tdoc.getRenderedTitle('xhtml/1.0'))
#if ($xwiki.isTitleInCompatibilityMode() && $tdoc.title.length() == 0 && "$!renderedContent" != '')
  ## Look for first H1-H6 either in lowercase or uppercase
  #set ($regexResult = $regextool.find($renderedContent, "<([hH][1-6]).*?>(?:<span>)?(.*?)(?:</span>)?</[hH][1-6]>"))
  #if (!$regexResult.isEmpty() && $regexResult.get(2).group.equals($titleToDisplay))
    ## We are extracting the title but putting it back but hidden since there are javascript code such as the
    ## javascript used to display section edition which needs the header to be there to work properly.
    #set ($hiddenTitle = "<${regexResult.get(1).group} class='hidden'>${regexResult.get(2).group}</${regexResult.get(1).group}>")
    #if ($regexResult.get(0).end < $mathtool.sub($renderedContent.length(), 1))
      #set ($renderedContent = "${renderedContent.substring(0, $regexResult.get(0).start)}${hiddenTitle}${renderedContent.substring($regexResult.get(0).end)}")
    #else
      #set ($renderedContent = "${hiddenTitle}$renderedContent.substring(0, $regexResult.get(0).start)")
    #end
    #set ($titleToDisplay = $regexResult.get(2).group)
  #end
#end

Zerion Mini Shell 1.0