Ticket #305: view.xsl

File view.xsl, 4.6 kB (added by otupman, 18 years ago)
Line 
1<?xml version="1.0" encoding="UTF-8"?>
2
3<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
4        <xsl:output method="text" indent="no"  />
5
6        <xsl:template match="/">   
7       
8&lt;cfset listEvent = viewstate.getValue("myself") &amp; viewstate.getValue("xe.list")  /&gt;
9&lt;cfset commitEvent = viewstate.getValue("myself") &amp; viewstate.getValue("xe.commit") &amp; "&amp;<xsl:value-of select="object/alias"/>Id=" &amp; urlEncodedFormat(viewstate.getValue("<xsl:value-of select="object/alias"/>Id")) /&gt;
10&lt;cfset <xsl:value-of select="object/alias"/>Record = viewstate.getValue("<xsl:value-of select="object/alias"/>Record") /&gt;
11&lt;cfset validation = viewstate.getValue("<xsl:value-of select="object/alias"/>Validation", structNew()) /&gt;
12
13&lt;cfoutput&gt;
14&lt;div id="breadcrumb"&gt;&lt;a href="#listEvent#"&gt;<xsl:value-of select="object/label"/>s&lt;/a&gt; / View <xsl:value-of select="object/label"/>&lt;/div&gt;
15&lt;/cfoutput&gt;
16&lt;br /&gt;
17 
18&lt;cfform class="edit"&gt;
19   
20&lt;fieldset&gt;
21   
22<xsl:for-each select="object/properties/property">
23  <xsl:if test="(primarykey = 'false' or relationship = 'true')">
24    <xsl:if test="relationship = 'false'">
25        &lt;div class="formfield"&gt;
26          &lt;cfoutput&gt;
27                &lt;label for="<xsl:value-of select="alias"/>"&gt;&lt;b&gt;<xsl:value-of select="label"/>:&lt;/b&gt;&lt;/label&gt;
28                &lt;span class="input"&gt;#<xsl:value-of select="/object/alias"/>Record.get<xsl:value-of select="alias"/>()#&lt;/span&gt;
29                &lt;/cfoutput&gt;
30        &lt;/div&gt;
31    </xsl:if>
32    <xsl:if test="relationship = 'true'">
33      <xsl:if test="pluralrelationship = 'false'">
34        &lt;div class="formfield"&gt;
35          &lt;cfoutput&gt;
36                &lt;label for="<xsl:value-of select="alias"/>"&gt;&lt;b&gt;<xsl:value-of select="label"/>:&lt;/b&gt;
37                &lt;/label&gt;
38
39                                        &lt;cfif structKeyExists(<xsl:value-of select="/object/alias"/>Record, "get<xsl:value-of select="alias"/>")&gt;
40                                                &lt;cfset targetObject = <xsl:value-of select="/object/alias"/>Record.get<xsl:value-of select="alias"/>() /&gt;
41                                        &lt;cfelseif structKeyExists(<xsl:value-of select="/object/alias"/>Record, "getParent<xsl:value-of select="alias"/>")&gt;
42                                                &lt;cfset targetObject = <xsl:value-of select="/object/alias"/>Record.getParent<xsl:value-of select="alias"/>() /&gt;
43                                        &lt;/cfif&gt;
44                               
45                &lt;div&gt;
46                        #targetObject.get<xsl:value-of select="sourcecolumn"/>()#
47                &lt;/div&gt;
48                &lt;/cfoutput&gt;
49        &lt;/div&gt;
50      </xsl:if>
51      <xsl:if test="pluralrelationship = 'true'">
52        &lt;div class="formfield"&gt;
53                &lt;label&gt;&lt;b&gt;<xsl:value-of select="sourcecolumn"/>(s):&lt;/b&gt;&lt;/label&gt;
54
55                                        &lt;!--- This XSL supports both Reactor and Transfer ---&gt;
56                                        &lt;cfif structKeyExists(<xsl:value-of select="/object/alias"/>Record, "get<xsl:value-of select="alias"/>Struct")&gt;
57                                                &lt;cfset selected = <xsl:value-of select="/object/alias"/>Record.get<xsl:value-of select="alias"/>Struct() /&gt;
58                                        &lt;cfelseif structKeyExists(<xsl:value-of select="/object/alias"/>Record, "get<xsl:value-of select="alias"/>Array")&gt;
59                                                &lt;cfset selected = <xsl:value-of select="/object/alias"/>Record.get<xsl:value-of select="alias"/>Array() /&gt;
60                                        &lt;cfelse&gt;
61                                                &lt;cfset selected = <xsl:value-of select="/object/alias"/>Record.get<xsl:value-of select="alias"/>Iterator().getQuery() /&gt;
62                                        &lt;/cfif&gt;
63
64                                        &lt;cfif isQuery(selected)&gt;
65                                                &lt;cfset selectedList = valueList(selected.<xsl:value-of select="sourcekey"/>) /&gt;
66                                                &lt;div class="formfieldinputstack"&gt;
67                                                &lt;cfoutput query="selected"&gt;
68                                                        #selected.<xsl:value-of select="sourcecolumn"/>#&lt;br /&gt;
69                                                &lt;/cfoutput&gt;
70                                                &lt;/div&gt;
71                                        &lt;cfelseif isStruct(selected)&gt;
72                                                &lt;cfoutput&gt;
73                                                &lt;div class="formfieldinputstack"&gt;
74                                                &lt;cfloop collection="#selected#" item="i"&gt;
75                                                        #selected[i].get<xsl:value-of select="sourcecolumn"/>()#&lt;br /&gt;
76                                                &lt;/cfloop&gt;
77                                                &lt;/div&gt;
78                                                &lt;/cfoutput&gt;
79                                        &lt;cfelseif isArray(selected)&gt;
80                                                &lt;cfoutput&gt;
81                                                &lt;div class="formfieldinputstack"&gt;
82                                                &lt;cfloop from="1" to="#arrayLen(selected)#" index="i"&gt;
83                                                        #selected[i].get<xsl:value-of select="sourcecolumn"/>()#&lt;br /&gt;
84                                                &lt;/cfloop&gt;
85                                                &lt;/div&gt;
86                                                &lt;/cfoutput&gt;
87                                        &lt;/cfif&gt;
88
89        &lt;/div&gt;
90         
91      </xsl:if>
92    </xsl:if>
93  </xsl:if>
94</xsl:for-each>
95&lt;/fieldset&gt;
96
97&lt;/cfform&gt;
98   
99        </xsl:template>
100</xsl:stylesheet>