Added XSLTTemplate, functions that add it to transform area and documentation for that function (#144)
Co-authored-by: widlam <mikolaj.widla@gmail.com> Reviewed-on: #144 Reviewed-by: Adam Bem <bema@noreply.example.com> Co-authored-by: Mikolaj Widla <widlam@noreply.example.com> Co-committed-by: Mikolaj Widla <widlam@noreply.example.com>
This commit is contained in:
14
Frontend/assets/samples/XSLTTemplate.xslt
Normal file
14
Frontend/assets/samples/XSLTTemplate.xslt
Normal file
@@ -0,0 +1,14 @@
|
||||
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||
xmlns:b="http://www.release11.com/book" xmlns:p="http://www.release11.com/person"
|
||||
xmlns:l="http://www.release11.com/library">
|
||||
<xsl:template match="/">
|
||||
<Library>
|
||||
<ReaderCount>
|
||||
<xsl:value-of select="count(//p:person)" />
|
||||
</ReaderCount>
|
||||
<BookCount>
|
||||
<xsl:value-of select="count(/l:library/l:bookList/b:book)" />
|
||||
</BookCount>
|
||||
</Library>
|
||||
</xsl:template>
|
||||
</xsl:stylesheet>
|
||||
@@ -84,6 +84,24 @@ function fillDefaultXML(element) {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* The `fillDefaultXSLT()` function fetches a default XSLT template from the server and sets the value of the element with id "transformArea" to the fetched template.
|
||||
*
|
||||
* @function
|
||||
* @name fillDefaultXSLT
|
||||
* @kind function
|
||||
* @returns {void}
|
||||
*/
|
||||
function fillDefaultXSLT() {
|
||||
const serverAddress = window.location.protocol + "//" + window.location.hostname + ":8086";
|
||||
fetch(serverAddress + "/assets/samples/XSLTTemplate.xslt")
|
||||
.then( response => response.text() )
|
||||
.then( (XSTLTemplate) => {
|
||||
document.getElementById('transformArea').value = XSTLTemplate;
|
||||
} )
|
||||
}
|
||||
|
||||
/**
|
||||
* It sets default content for the element an changes it's color to grey
|
||||
*
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
<option value="libxml">libXML</option>
|
||||
</select>
|
||||
<select name="versions" id="versions" style="display: none;">
|
||||
<option class="hideable libxml xalan"value="1.0">1.0</option>
|
||||
<option class="hideable libxml xalan" value="1.0">1.0</option>
|
||||
<option class="hideable saxon" value="2.0">2.0</option>
|
||||
<option class="hideable saxon" value="3.0">3.0</option>
|
||||
<option class="hideable saxon" value="3.1">3.1</option>
|
||||
@@ -51,7 +51,14 @@
|
||||
onfocus="clearDefaultContent(this, 'Insert XML here');"></textarea>
|
||||
<br><br>
|
||||
|
||||
<label for="transformArea"><b>Insert your XSLT:</b></label>
|
||||
<div class="display-space-between">
|
||||
<label for="transformArea"><b>Insert your XSLT:</b></label>
|
||||
<div>
|
||||
<button class="action-button active" id="defaultXSLTButton" style="padding: 3px 10px;"
|
||||
onclick="fillDefaultXSLT()">Insert default XSLT
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
<textarea id="transformArea" name="transformArea" rows="15"
|
||||
class="textarea-300 bordered-field vertically-resizeable max-width"
|
||||
onblur="setDefaultContent(this, 'Insert XSLT here');"
|
||||
@@ -1144,7 +1151,7 @@
|
||||
|
||||
<script>
|
||||
function processTooltip() {
|
||||
|
||||
|
||||
if (getProcessor() == "xalan" || getProcessor() == "libxml") {
|
||||
document.getElementById("tooltipFunctionInfo").innerText = "XSLT 1.0 functions";
|
||||
document.getElementById("processorTooltipInfo").innerText = "Supports XSLT 1.0";
|
||||
@@ -1158,9 +1165,9 @@
|
||||
|
||||
var triggerList = document.getElementsByClassName("collapseTrigger");
|
||||
for (i = 0; i < triggerList.length; i++) {
|
||||
|
||||
|
||||
triggerList[i].addEventListener("click", function () {
|
||||
|
||||
|
||||
var collapsible = this.parentElement;
|
||||
var collapsibleData = this.nextElementSibling;
|
||||
if (collapsibleData.style.maxHeight > "0px") {
|
||||
@@ -1197,7 +1204,7 @@
|
||||
//Handle clicks in whole form and set info in tooltip
|
||||
setDefaultContent(document.getElementById("xmlArea"), 'Insert XML here');
|
||||
setDefaultContent(document.getElementById("transformArea"), 'Insert XSLT here');
|
||||
|
||||
|
||||
// refreshTooltip();
|
||||
processTooltip();
|
||||
tool.addEventListener('click', event => {
|
||||
|
||||
Reference in New Issue
Block a user