Project

General

Profile

« Previous | Next » 

Revision 3442

Added by Matt Jones over 16 years ago

Added a refactored resultset stylesheet that allows skins to override the container format to not use iframes. The continaing skin can now import resulttable.xsl and call the result table template directly.

View differences:

resultset.xsl
29 29
* into an HTML format suitable for rendering with modern web browsers.
30 30
-->
31 31
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
32

  
32
  <xsl:import href="@systemidserver@@style-common-path@/resultset-table.xsl"/>
33
  
33 34
  <xsl:output method="html"/>
34 35
  <xsl:param name="sessid"/>
35 36
  <xsl:param name="qformat">default</xsl:param>
......
61 62
          insertTemplateOpening();
62 63
          insertSearchBox();
63 64
      </script>
64
        <table width="100%" align="center" border="0" cellpadding="5" cellspacing="0">
65
           <tr>
66
             <td align="left"><br></br><p class="emphasis"><xsl:number value="count(resultset/document)" /> data packages found</p></td>
67
           </tr></table>
68
<!-- This tests to see if there are returned documents,
69
            if there are not then don't show the query results -->
70

  
71
      <xsl:if test="count(resultset/document) &gt; 0">
72

  
73
         <table width="95%" align="center" border="0" cellpadding="0" cellspacing="0">
74
           <tr>
75
             <th class="tablehead_lcorner" align="right" valign="top"><img src="@style-skins-path@/default/images/transparent1x1.gif" width="1" height="1" /></th>
76
             <th class="tablehead" style="text-align: left">Title</th>
77
             <th width="15%" class="tablehead" style="text-align: left">Contacts</th>
78
             <th width="15%" class="tablehead" style="text-align: left">Organization</th>
79
             <th width="15%" class="tablehead" style="text-align: left">Keywords</th>
80
             <xsl:if test="$enableediting = 'true'">
81
               <th width="10%" class="tablehead" style="text-align: middle">Actions</th>
82
             </xsl:if>
83
             <th class="tablehead_rcorner" align="right" valign="top"><img src="@style-skins-path@/default/images/transparent1x1.gif" width="1" height="1" /></th>
84
           </tr>
85

  
86
         <xsl:for-each select="resultset/document">
87
           <xsl:sort select="./param[@name='dataset/title']"/>
88
           <tr valign="top" class="subpanel">
89
             <xsl:attribute name="class">
90
               <xsl:choose>
91
                 <xsl:when test="position() mod 2 = 1">rowodd</xsl:when>
92
                 <xsl:when test="position() mod 2 = 0">roweven</xsl:when>
93
               </xsl:choose>
94
             </xsl:attribute>
95

  
96
             <td width="10">&#160;</td>
97
             <td class="text_plain">
98
               <form action="@servlet-path@" method="POST">
99
                 <xsl:attribute name="name">
100
                   <xsl:value-of select="translate(./docid, '()-.', '____')" />
101
                 </xsl:attribute>
102

  
103
                 <input type="hidden" name="qformat" />
104
                 <input type="hidden" name="sessionid" />
105
                 <xsl:if test="$enableediting = 'true'">
106
	 	           <input type="hidden" name="enableediting" value="{$enableediting}"/>
107
                 </xsl:if>
108
                 <input type="hidden" name="action" value="read"/>
109
                 <input type="hidden" name="docid">
110
                   <xsl:attribute name="value">
111
                     <xsl:value-of select="./docid"/>
112
                   </xsl:attribute>
113
                 </input>
114
                 <xsl:for-each select="./relation">
115
                   <input type="hidden" name="docid">
116
                     <xsl:attribute name="value" >
117
                       <xsl:value-of select="./relationdoc" />
118
                     </xsl:attribute>
119
                   </input>
120
                 </xsl:for-each>
121

  
122
                 <a>
123
                   <xsl:attribute name="href">javascript:submitform('read',document.<xsl:value-of select="translate(./docid, '()-.', '____')"/>)</xsl:attribute>
124
                   <xsl:text>&#187;&#160;</xsl:text>
125
                   <xsl:choose>
126
                     <xsl:when test="./param[@name='dataset/title']!=''">
127
                        <xsl:value-of select="./param[@name='dataset/title']"/>
128
                     </xsl:when>
129
                     <xsl:otherwise>
130
                       <xsl:value-of select="./param[@name='citation/title']"/>
131
                       <xsl:value-of select="./param[@name='software/title']"/>
132
                       <xsl:value-of select="./param[@name='protocol/title']"/>
133
                       <xsl:value-of select="./param[@name='idinfo/citation/citeinfo/title']"/>
134
                     </xsl:otherwise>
135
                   </xsl:choose>
136
                 </a><br />
137
                 <br/>
138
                 <p><pre>ID: <xsl:value-of select="./docid"/></pre></p>
139

  
140
               </form>
141
             </td>
142

  
143
             <td class="text_plain">
144
               <xsl:for-each select="./param[@name='originator/individualName/surName']" >
145
                 <xsl:value-of select="." />
146
                 <br/>
147
                </xsl:for-each>
148
               <xsl:for-each select="./param[@name='creator/individualName/surName']" >
149
                 <xsl:value-of select="." />
150
                 <br/>
151
               </xsl:for-each>
152
               <xsl:for-each select="./param[@name='idinfo/citation/citeinfo/origin']" >
153
                 <xsl:value-of select="." />
154
                 <br/>
155
               </xsl:for-each>
156

  
157
             </td>
158
             <td class="text_plain">
159
                 <xsl:value-of select="./param[@name='originator/organizationName']" />
160
                 <xsl:value-of select="./param[@name='creator/organizationName']" />
161

  
162
             </td>
163

  
164
             <td class="text_plain">
165
               <xsl:for-each
166
                select="./param[@name='keyword']">
167
                 <xsl:value-of select="." />
168
                 <br/>
169
               </xsl:for-each>
170
               <xsl:for-each
171
                select="./param[@name='idinfo/keywords/theme/themekey']">
172
                 <xsl:value-of select="." />
173
                 <br/>
174
               </xsl:for-each>
175

  
176
             </td>
177
	   
178
             <xsl:if test="$enableediting = 'true'">
179
               <td class="text_plain">
180
	       <form action="@servlet-path@" method="POST">
181
	               <input type="hidden" name="action" value="read"/>
182
	 	       <input type="hidden" name="qformat" value="{$qformat}"/>
183
				<input type="hidden" name="sessionid"  value="{$sessid}"/>
184
                       <input type="hidden" name="docid">
185
                       <xsl:attribute name="value">
186
                          <xsl:value-of select="./docid"/>
187
                       </xsl:attribute>
188
                       </input>
189
                       <center>
190
		       <input type="SUBMIT"  value=" View " name="View">
191
 	               </input>
192
	               </center>
193
	             </form>
194
                 <form action="@cgi-prefix@/register-dataset.cgi" 
195
                       method="POST">
196
	               <input type="hidden" name="stage" value="modify"/>	
197
	 	           <input type="hidden" name="cfg" value="{$qformat}"/>
198
					<input type="hidden" name="sessionid"  value="{$sessid}"/>
199
                   <input type="hidden" name="docid">
200
                     <xsl:attribute name="value">
201
                       <xsl:value-of select="./docid"/>
202
                     </xsl:attribute>
203
                   </input>
204
                   <center>
205
		             <input type="SUBMIT"  value=" Edit " name="Edit">
206
 	                 </input>
207
	               </center>
208
	             </form>
209
                 <form action="@cgi-prefix@/register-dataset.cgi" 
210
                       method="POST">
211
	               <input type="hidden" name="stage" value="delete"/>	
212
	 	           <input type="hidden" name="cfg" value="{$qformat}"/>
213
					<input type="hidden" name="sessionid"  value="{$sessid}"/>
214
                   <input type="hidden" name="docid">
215
                     <xsl:attribute name="value">
216
                       <xsl:value-of select="./docid"/>
217
                     </xsl:attribute>
218
                   </input>
219
                   <center>
220
		             <input type="SUBMIT"  value="Delete" name="Delete">
221
 	                 </input>
222
	               </center>
223
	             </form>
224
	           </td>	  
225
             </xsl:if>
226
             <td width="10">&#160;</td>
227
             </tr>
228
             <tr class="searchresultsdivider"><td colspan="6">
229
             <img src="@style-skins-path@/default/images/transparent1x1.gif" width="1" height="1" /></td></tr>
230

  
231
          </xsl:for-each>
232
          </table>
233

  
234
       </xsl:if>
65
      <xsl:call-template name="resultstable"/>
235 66
      <script language="JavaScript">
236 67
          insertTemplateClosing();
237 68
      </script>

Also available in: Unified diff