source: MILK/trunk/milk_server/milk_server/templates/atom_editor/atom_functions.html @ 4472

Subversion URL: http://proj.badc.rl.ac.uk/svn/ndg/MILK/trunk/milk_server/milk_server/templates/atom_editor/atom_functions.html@4472
Revision 4472, 30.0 KB checked in by cbyrom, 12 years ago (diff)

Strip out code not relevant to MILK - mainly WCS and WMS stuff - also including the CSML server code + trackback code
Also tidy up structure of 'public' dir - setting up new 'style' dir and
centralising icons in icons dir + remove all unused icons, javascript and stylesheets.
Also strip out testcase code and populate new test directory structure.

Line 
1<!--! A collection of template definitions for use in atom output construction -->
2<html xmlns="http://www.w3.org/1999/xhtml" 
3        xmlns:py="http://genshi.edgewall.org/"
4        xmlns:xi="http://www.w3.org/2001/XInclude"
5        py:strip="">
6       
7    <xi:include href="../utils.html" />
8
9    <div py:if="c.errors" class="error" py:def="displayErrors()">
10        <h3>Input error</h3>
11        <table align="center">
12        <tr py:for="error in c.errors">
13                <!-- td>Input - '${error}'</td-->
14                <td align="left">'${c.errors[error]}'</td>
15        </tr>
16        </table>
17    </div>
18
19   
20    <div py:def="UploadFile(title, fileType, editLink)">
21        <div class="headingblock" py:if="editLink">
22        ${Markup(h.form(h.url(controller='atom_editor/editatom', action='upload', uri = c.uri), multipart=True))}
23        <table>
24                              <tr>
25                              <td class="cellhead">
26                              ${Markup(title)}
27                                  </td>
28                                  </tr>
29                                  <tr>
30                                  <td></td>
31                                  <td>
32                                          ${Markup(h.file_field('upload_' + fileType, size="80"))}
33                                  </td>
34                                  </tr>
35                              <tr>
36                              <td />
37                              <td colspan="2">
38                          ${Markup(h.submit('Upload'))}
39                              </td>
40                              </tr>
41        </table>
42                ${Markup(h.end_form())}
43                </div>
44        </div>
45
46   
47    <div class="metadataSection" py:def="ContentFile(fileName, editLink)">
48        <?python       
49                                divID = 'contentFileDiv'
50                                edID=divID+'ed'
51                ?>
52        <table>
53            <tr><td class="linehead">
54                    <table>
55                        <tr><td>Content File</td>
56                            <span py:if="editLink" py:strip="">
57                                <td align="right">
58                                        <span class="txtBlktog">
59                                        <a href="javascript:;" title="Toggle Form" 
60                                             onclick="swapLayers('$divID', '$edID'); return false;">
61                                        Add/Edit</a>
62                                        </span>
63                                    </td>
64                            </span>
65                                        </tr>
66                                </table>
67            </td></tr>
68            <tr><td>
69                <div id = "$divID">
70                                <div py:replace="ContentFileTable(fileName, None)"/>
71                        </div>
72                        </td></tr>
73                <tr py:if="editLink"><td>
74                        <div id="$edID" class="hidden">
75                                <div py:replace="ContentFileTable(fileName, editLink)"/>
76                        </div>
77                        </td></tr>
78        </table>
79        </div>
80
81
82        <div py:def="ContentFileTable(fileName, editLink)">
83                <form action="${editLink}" method="post">
84            <table>
85                <tr py:if="not editLink and not fileName">
86                                <td colspan="3">No data specified at present</td>
87                        </tr>
88                        <tr py:if="editLink or fileName">
89                                <td class="cellhead">File name:</td>
90                        <td py:if="editLink">
91                                    ${Markup(h.text_field('contentFile', fileName))}
92                                        </td>
93                        <td py:if="not editLink">
94                        ${Markup(fileName)}
95                                </td>
96                                <td py:if="editLink">
97                                        <input type="submit" value="Update" />
98                                </td>
99                </tr>
100                        </table>
101                </form>
102        </div>
103
104    <div class="headingblock" py:def="GeneralInfo(editLink)">
105                <h4>General Info</h4>
106                <form action="${c.saveLink}" method="post">
107                        <table summary="" width="100%">
108                        <tr>
109                        <td class="cellhead" width="10%">Title:</td>
110                        <td py:if="editLink" class="column">
111                                ${Markup(h.text_field('title',c.atom.title, size="120"))}
112                        </td>
113                        <td py:if="not editLink" class="column">
114                                ${Markup(c.atom.title)}
115                        </td>
116                        <?python logos = c.atom.getLogos() ?>
117                        <td py:if="logos">
118                   <img py:for="logo in logos" 
119                        alt="$logo.rel" 
120                        src="$logo.href" class="clear"/>
121                </td>
122                            </tr>
123                            <tr py:if="not editLink">
124                        <td class="cellhead">Type:</td>
125                        <td class="column">
126                                ${Markup(c.atom.atomTypeName)}
127                        </td>
128                        </tr>
129                            <span py:if="len(c.subTypes) &gt; 0" py:strip="">
130                            <tr>
131                        <td class="cellhead">Sub-Type:</td>
132                        <td py:if="editLink" class="column">
133                                ${Markup(h.select('subtype',option_tags=c.subTypes))}
134                        </td>
135                        <td py:if="not editLink" class="column">
136                                ${Markup(g.vtd.tidySubTypeTitle(c.atom.subtypeID))}
137                        </td>
138                        </tr>
139                        </span>
140                        <tr py:if="not c.atom.isDeployment()">
141                        <td class="cellhead" width="10%">Abbreviation:</td>
142                        <td py:if="editLink" class="column">
143                                ${Markup(h.text_field('abbreviation',c.atom.ME.abbreviation))}
144                        </td>
145                        <td py:if="not editLink" class="column">
146                                ${Markup(c.atom.ME.abbreviation or "")}
147                        </td>
148                            </tr>
149                         <tr>
150                        <td></td>
151                        <td py:if="editLink">
152                                <input type="submit" value="Update" />
153                                <input type='button' onclick='history.go(-1)' value='Cancel' />
154                        </td>
155                </tr></table>
156        </form>
157        </div>
158
159
160   
161    <div class="metadataSection" py:def="TextArea(name, value, editLink)">
162        <?python       
163                                divID = name + 'Div'
164                                edID=divID+'ed'
165                ?>
166        <table py:if="value or editLink">
167            <tr><td class="linehead">
168                    <table>
169                        <tr><td>${name}</td>
170                            <span py:if="editLink" py:strip="">
171                                <td align="right">
172                                        <span class="txtBlktog">
173                                        <a href="javascript:;" title="Toggle Form" 
174                                             onclick="swapLayers('$divID', '$edID'); return false;">
175                                        Add/Edit</a>
176                                        </span>
177                                    </td>
178                            </span>
179                                        </tr>
180                                </table>
181            </td></tr>
182            <tr><td>
183                <div id = "$divID">
184                                ${Markup(value or 'No data specified at present')}
185                        </div>
186                        </td></tr>
187                <tr py:if="editLink"><td>
188                        <div id="$edID" class="hidden">
189                                        <form action="${editLink}" method="post">
190                                        <table>
191                                <tr><td>
192                                        ${Markup(h.text_area(name, value, class_="fullWidth", rows="9"))}
193                                </td></tr>
194                                <tr><td>
195                      ${Markup(h.submit(value="Update"))}
196                    </td></tr>
197                                        </table>
198                                        </form>
199                        </div>
200                        </td></tr>
201        </table>
202    </div>
203   
204    <div class="metadataSection" py:def="People(ptype,listOfPeople,editLink)">
205        <?python       
206                                divID = ptype + 'peopleDiv'
207                                edID=divID+'ed'
208                ?>
209        <table py:if="listOfPeople or editLink">
210            <tr><td class="linehead">
211                    <table>
212                        <tr><td>$ptype</td>
213                            <span py:if="editLink" py:strip="">
214                                <td align="right">
215                                        <span class="txtBlktog">
216                                        <a href="javascript:;" title="Toggle Form" 
217                                             onclick="swapLayers('$divID', '$edID'); return false;">
218                                        Add/Edit</a>
219                                        </span>
220                                    </td>
221                            </span>
222                                        </tr>
223                                </table>
224            </td></tr>
225            <tr><td>
226                <div id = "$divID">
227                                <div py:replace="PeopleTable(listOfPeople, ptype, None)"/>
228                        </div>
229                        </td></tr>
230                <tr py:if="editLink"><td>
231                        <div id="$edID" class="hidden">
232                                <div py:replace="PeopleTable(listOfPeople, ptype, editLink)"/>
233                        </div>
234                        </td></tr>
235        </table>
236    </div>
237
238        <div py:def="PeopleTable(listOfPeople, ptype, editLink)">
239                <form action="${editLink}" method="post">
240            <table>
241                <tr>
242                        <?python
243                                hasRole = False
244                                dataType = 'email'
245                                if ptype == "Responsible Parties":
246                                        hasRole = True
247                                        dataType = 'URI'
248                                               
249                                extraRows = 3
250                                if ptype == "Author":
251                                        extraRows = 0
252                        ?>
253                        <span py:if="not editLink and not listOfPeople" py:strip="">
254                                <td colspan="3">No data specified at present</td>
255                        </span>
256                        <span py:if="editLink or listOfPeople" py:strip="">
257                                <th py:if="hasRole" align="left">Role</th>
258                                <th align="left">Name</th>
259                                <th align="left">${dataType}</th>
260                        </span>
261                        <span py:if="editLink and listOfPeople" py:strip="">
262                                <th align="center">Remove</th>
263                        </span>
264                </tr>
265                    <tr py:for="i, person in enumerate(listOfPeople)">
266                        <span py:if="hasRole" py:strip="">
267                                <td py:if="editLink">
268                                            ${Markup(h.text_field(ptype + '.' + str(i) + '.role',person.role))}
269                                        </td>
270                        <td py:if="not editLink">
271                                $person.role
272                                </td>
273                        </span>
274                        <td>
275                        <span py:if="editLink" py:strip="">
276                                    ${Markup(h.text_field(ptype + '.' + str(i) + '.name',person.name))}
277                                </span>
278                        <span py:if="not editLink" py:strip="">
279                                $person.name
280                                </span>
281                        </td>
282                        <td>
283                        <span py:if="editLink" py:strip="">
284                                    ${Markup(h.text_field(ptype + '.' + str(i) + '.uri',person.uri))}
285                                </span>
286                        <span py:if="not editLink" py:strip="">
287                                <a href="$person.uri">$person.uri</a>
288                                </span>
289                        </td>
290                        <span py:if="editLink and listOfPeople" py:strip="">
291                                <td align="center">
292                                        ${Markup(h.check_box(ptype + '.' + str(i) + '.remove'))}
293                                </td>
294                        </span>
295                                </tr>
296                                <!--! Add a few more rows when in edit mode  -->
297                        <span py:if="editLink" py:strip="">
298                    <tr py:for="i in range(len(listOfPeople), len(listOfPeople) + extraRows)">
299                        <td py:if="hasRole">
300                                    ${Markup(h.text_field(ptype + '.' + str(i) + '.role'))}
301                        </td>
302                        <td>
303                                    ${Markup(h.text_field(ptype + '.' + str(i) + '.name'))}
304                        </td>
305                        <td>
306                                    ${Markup(h.text_field(ptype + '.' + str(i) + '.uri'))}
307                        </td>
308                        <span py:if="editLink" py:strip=""><td></td></span>
309                                </tr>
310                       
311                                <tr><td>
312                      ${Markup(h.submit(value="Update"))}
313                      </td></tr>
314                                </span>
315                        </table>
316                </form>
317        </div>
318       
319   
320    <div class="headingblock" py:def="SummaryDeployments(deployments)" id="summaryDeployment">
321        <table py:if="deployments">
322                <tr>
323                <td class="headingblock">
324                <table><tr><td><h3>Deployments - summary</h3></td>
325                    <td align="right">
326                <span py:replace="expandHideSection('fullDeployment','summaryDeployment',g.navPlus)" strip=""/>
327                </td></tr>
328                        </table>
329            </td></tr>
330                        <tr><td>
331                        <table id="deploymentsTable">
332                                <tr>
333                                <td class="cellhead">Activities</td>
334                                <td>
335                                        <span py:for="act in c.atom.allActivities" py:strip="">
336                                                <a href="$act.href">${act.title or act.href}</a>&nbsp;&nbsp; 
337                                        </span>
338                                </td>                   
339                                </tr>
340                                <tr><td class="cellhead">Observation Stations</td>
341                                <td>
342                                        <span py:for="obs in c.atom.allObs" py:strip="">
343                                                <a href="$obs.href">${obs.title or obs.href}</a>&nbsp;&nbsp; 
344                                        </span>
345                                </td>                   
346                                </tr>
347                                <tr><td class="cellhead">Data Production tools</td>
348                                <td>
349                                        <span py:for="dpt in c.atom.allDpts" py:strip="">
350                                                <a href="$dpt.href">${dpt.title or dpt.href}</a>&nbsp;&nbsp; 
351                                        </span>
352                                </td>                   
353                                </tr>
354                        </table></td></tr>
355                </table>
356        </div>
357   
358    <div class="headingblock hidden" py:def="FullDeployments(deployments)" id="fullDeployment">
359        <table py:if="deployments">
360        <tr><td class="headingblock" >
361            <table><tr><td><h3>Deployments - details</h3></td>
362            <td align="right">
363            <span py:if="deployments" py:replace="expandHideSection('fullDeployment','summaryDeployment',g.navMinus)" strip=""/>
364            </td></tr></table>
365        </td></tr>
366        <tr>
367                <table class="subTable">
368                                <div py:for="deployment in deployments" py:strip="">
369                                <div py:replace="FullDeployment(deployment)"/>
370                        </div>
371                </table></tr>
372                </table>
373        </div>
374       
375    <div py:def="FullDeployment(dep)" py:strip="">
376                <tr class="cellhead" colspan="2"><td> Start Date: $dep.startDate, End Date: $dep.endDate</td></tr>
377        <tr py:for="link in dep.getAllLinks()" >
378        <?python
379                rel=link.rel.upper()
380                if rel.startswith(g.vtd.ACTIVITY_TERM):
381                                rel = "Activity"
382                elif rel.startswith(g.vtd.OBS_TERM):
383                                rel = "Observation Station"
384                elif rel.startswith(g.vtd.DPT_TERM):
385                                rel = "Data Production Tool"
386        ?>
387        <td>$rel</td><td><a href="$link.href">${link.title or link.href}</a></td>
388        </tr>
389    </div>
390
391
392    <span py:def="expandHideSection(div1,div2,icon)">
393            <a href="javascript:;" title="Show/Hide details" 
394                onclick="swapLayers('$div1', '$div2'); return false;">
395            <img src="$icon" alt="Toggle expand/contract" class="helpicon"/></a>
396    </span>
397
398    <div class="metadataSection" py:def="OnlineReferences(links, editLink)">
399        <?python       
400                                divID = 'onlineRefDiv'
401                                edID = divID+'ed'
402                ?>
403                <table py:if="links or editLink">
404            <tr><td class="linehead">
405                    <table>
406                        <tr><td>Online References</td>
407                            <span py:if="editLink" py:strip="">
408                                <td align="right">
409                                        <span class="txtBlktog">
410                                        <a href="javascript:;" title="Toggle Form" 
411                                             onclick="swapLayers('$divID', '$edID'); return false;">
412                                        Add/Edit</a>
413                                        </span>
414                                    </td>
415                            </span>
416                                        </tr>
417                                </table>
418                                </td>
419                        </tr>
420            <tr><td>
421                <div id = "$divID">
422                                <div py:if="links" py:replace="OnlineRefEditTable(links, None)"/>
423                        <span py:if="not links" py:strip="">No data specified at present</span>
424                        </div>
425                        </td></tr>
426                <tr py:if="editLink"><td>
427                        <div id="$edID" class="hidden">
428                                <div py:replace="OnlineRefEditTable(links, editLink)"/>
429                        </div>
430                        </td></tr>
431                        <tr><td>
432            </td></tr>
433        </table>
434    </div>
435
436
437        <div py:def="OnlineRefEditTable(links, editLink)">
438                <form action="${editLink}" method="post">
439                        <?python
440                                from ndgUtils.models.Atom import Atom as a
441                                refLabel = a.ONLINE_REF_LABEL + "."
442                                remLabel = "." + a.REMOVE_LABEL
443                                extraRows = 3
444                        ?>
445            <table>
446                <tr>
447                                <th align="left">Relation</th>
448                        <th py:if="editLink" align="left">URI</th>
449                        <th align="left">Title</th>
450                        <th py:if="links and editLink" align="center">Remove</th>
451                </tr>
452                    <tr py:for="i, link in enumerate(links)">
453                            <?python
454                        # get the default display value type
455                        try:
456                                vti = g.vtd.getTermItemfromFullVocabURI(link.rel)
457                                displayType = vti.title or link.rel
458                        except:
459                                displayType = link.rel
460                            ?>
461                        <td>
462                                                <span py:if="editLink" py:strip="">
463                                        ${Markup(h.select(refLabel + str(i) + '.rel', option_tags=c.relatedLinkSelectedLists[str(link)]))}
464                                                </span>
465                                        <span py:if="not editLink" py:strip="">
466                                        ${Markup(displayType)}
467                                                </span>
468                        </td>
469                        <td py:if="editLink">
470                                    ${Markup(h.text_field(refLabel + str(i) + '.href', link.href))}
471                                        </td>
472                        <td>
473                                                <span py:if="editLink" py:strip="">
474                                            ${Markup(h.text_field(refLabel + str(i) + '.title', link.title))}
475                                                </span>
476                                        <span py:if="not editLink" py:strip="">
477                                                <a href="${link.href}">${Markup(link.title or link.href)}</a>
478                                                </span>
479                        </td>
480                        <td py:if="editLink" align="center">
481                                ${Markup(h.check_box(refLabel + str(i) + remLabel))}
482                        </td>
483                                </tr>
484                    <tr py:if="editLink" py:for="i in range(len(links), len(links) + extraRows)">
485                        <td>
486                                        ${Markup(h.select(refLabel + str(i) + '.rel', option_tags=c.relatedLinkTerms))}
487                        </td>
488                        <td>
489                                    ${Markup(h.text_field(refLabel + str(i) + '.href'))}
490                        </td>
491                        <td>
492                                    ${Markup(h.text_field(refLabel + str(i) + '.title'))}
493                        </td>
494                        <td py:if="links" />
495                                </tr>
496                        <tr py:if="editLink"><td>
497                    ${Markup(h.submit(value="Update"))}
498                </td></tr>
499                        </table>
500                </form>
501        </div>
502   
503
504    <div class="metadataSection" py:def="Associations(sectionName, links, addLink, editLink)">
505        <?python       
506                                divID = sectionName + 'Div'
507                                edID = divID+'ed'
508                ?>
509                <table py:if="links or editLink">
510            <tr><td class="linehead">
511                    <table>
512                        <tr><td>${sectionName}</td>
513                            <span py:if="addLink" py:strip="">
514                                <td align="right">
515                                        <span class="txtBlktog">
516                                        <a href="$addLink">Add</a>
517                                        <a py:if="links" href="javascript:;" title="Toggle Form" 
518                                             onclick="swapLayers('$divID', '$edID'); return false;">
519                                        Edit</a>
520                                        </span>
521                                    </td>
522                            </span>
523                                        </tr>
524                                </table>
525                                </td>
526                        </tr>
527            <tr><td>
528                <div id = "$divID">
529                                <div py:replace="AssociationsTable(links, None)"/>
530                        </div>
531                        </td></tr>
532                <tr py:if="editLink"><td>
533                        <div id="$edID" class="hidden">
534                                <div py:replace="AssociationsTable(links, editLink)"/>
535                        </div>
536                        </td></tr>
537                        <tr><td>
538            </td></tr>
539        </table>
540    </div>
541
542
543        <div py:def="AssociationsTable(links, editLink)">
544                <form py:if="links" action="${editLink}" method="post">
545                <?python c.isDeployment = False ?>
546            <table>
547                <tr>
548                                <th align="left">Type</th>
549                        <th align="left">Title</th>
550                        <th py:if="editLink and links" align="center">Remove</th>
551                </tr>
552                                <?python
553                                        from ndgUtils.models.Atom import Atom as a
554                                        delim = a.DELIMITER
555                                        refLabel = a.ATOM_REF_LABEL + delim
556                                ?>
557                    <tr py:for="i, link in enumerate(links)">
558                            <?python
559                        # get the default display value
560                        displayVal = link.title or link.href
561                        vti = g.vtd.getTermItemfromFullVocabURI(link.rel)
562                        subType = g.vtd.tidySubTypeTitle(vti.title)
563                        inputLabel = refLabel + link.href + delim + (link.title or "") + delim + link.rel
564                        if subType == 'Deployment':
565                                c.isDeployment = True
566                            ?>
567                            <td>${subType}</td>
568                            <td><a href="$link.href">${displayVal}</a></td>
569                        <td py:if="editLink and links" align="center">
570                                ${Markup(h.check_box(inputLabel))}
571                        </td>
572                                </tr>
573                        <tr py:if="editLink and links"><td></td><td></td><td align="center">
574                    ${Markup(h.submit(value="Remove"))}
575                        </td></tr>
576                        </table>
577                </form>
578        <div class="headingblock" py:if="c.atom.isDE() and c.isDeployment and not editLink" id="deploymentsPlaceholder" />
579                <table py:if="not links"><tr><td>
580                        No data specified at present
581                </td></tr>
582                </table>
583        </div>
584
585
586    <div py:def="FullParameterList(params, editLink, visibility)">
587            <div class="metadataSection ${visibility}" id="fullParams">
588        <?python       
589                                divID = 'parametersDiv'
590                                edID = divID+'ed'
591                ?>
592        <table py:if="params or editLink">
593            <tr><td class="linehead">
594            <table>
595                    <tr><td>Parameters - details</td>
596                <td align="right">
597                <a py:if="editLink" href="javascript:;" title="Toggle Form" 
598                             onclick="swapLayers('$divID', '$edID'); return false;">
599                        Add/Edit</a>
600                    <span py:if="not editLink" py:replace="expandHideSection('fullParams','summaryParams',g.navMinus)" strip=""/>
601            </td></tr></table></td></tr>
602            <tr><td>
603                <div id = "$divID">
604                            <div py:replace="ParametersTable(params, None)"/>
605                        </div>
606                        </td></tr>
607                <tr py:if="editLink"><td>
608                        <div id="$edID" class="hidden">
609                            <div py:replace="ParametersTable(params, editLink)"/>
610                        </div>
611                        </td></tr>
612
613        </table>
614        </div>
615    </div>
616
617
618    <div class="metadataSection" py:def="ParametersTable(params, editLink)" id="fullParams">
619                <form action="${editLink}" method="post">
620                        <?python
621                                from ndgUtils.models.Atom import Atom as a
622                                refLabel = a.PARAMETER_LABEL + "."
623                                remLabel = "." + a.REMOVE_LABEL
624                                extraRows = 3
625                        ?>
626                <table class="subTable">
627                <tr py:if="params or editLink" class="cellhead">
628                                <th align="left">Label</th>
629                                <th align="left">Vocab Term URL</th>
630                        <th align="left">Vocab Term ID</th>
631                                <th py:if="params and editLink" align="center">Remove</th>
632                        </tr>
633                                <tr py:if="not editLink and not params">
634                                <td colspan="3">No data specified at present</td>
635                </tr>
636                    <tr py:for="i, param in enumerate(params)">
637                        <td>
638                                                <span py:if="editLink" py:strip="">
639                                            ${Markup(h.text_field(refLabel + str(i) + '.label', param.label, class_="fullWidth"))}
640                                                </span>
641                                        <span py:if="not editLink" py:strip="">
642                                                ${param.label}
643                                                </span>
644                        </td>
645                        <td>
646                                                <span py:if="editLink" py:strip="">
647                                            ${Markup(h.text_field(refLabel + str(i) + '.scheme', param.scheme, class_="fullWidth"))}
648                                                </span>
649                                        <span py:if="not editLink" py:strip="">
650                                                ${param.scheme}
651                                                </span>
652                                        </td>
653                        <td>
654                                                <span py:if="editLink" py:strip="">
655                                            ${Markup(h.text_field(refLabel + str(i) + '.term', param.term, class_="fullWidth"))}
656                                                </span>
657                                        <span py:if="not editLink" py:strip="">
658                                                ${param.term}
659                                                </span>
660                        </td>
661                        <td py:if="editLink" align="center">
662                                ${Markup(h.check_box(refLabel + str(i) + remLabel))}
663                        </td>
664                                </tr>
665                    <tr py:if="editLink" py:for="i in range(len(params), len(params) + extraRows)">
666                        <td>
667                                        ${Markup(h.text_field(refLabel + str(i) + '.label', class_="fullWidth"))}
668                        </td>
669                        <td>
670                                    ${Markup(h.text_field(refLabel + str(i) + '.scheme', class_="fullWidth"))}
671                        </td>
672                        <td>
673                                    ${Markup(h.text_field(refLabel + str(i) + '.term', class_="fullWidth"))}
674                        </td>
675                        <td py:if="params" />
676                                </tr>
677                        <tr py:if="editLink"><td>
678                    ${Markup(h.submit(value="Update"))}
679                </td></tr>
680                        </table>
681                </form>
682    </div>
683
684
685    <div py:def="SummaryParameterList(params)" id="summaryParams" class="metadataSection shown">
686        <table py:if="params">
687            <tr><td class="linehead">
688            <table><tr><td>Parameters - summary</td>
689            <td align="right">
690            <span py:replace="expandHideSection('fullParams','summaryParams',g.navPlus)" strip=""/>
691            </td></tr></table></td></tr>
692            <tr>
693            <table class="subTable">
694                <?python
695                        fullLength = len(list(params))
696                        colNumber = 4
697                ?>
698                        <span py:for="index, param in enumerate(params)" py:strip="">
699                                <tr class="summaryText">
700                                 <span py:if="not index%colNumber" py:strip="">
701                                 <span py:for="i in range(colNumber)" py:strip="">
702                                        <td py:if="index &lt; fullLength - i">${params[index + i].label or params[index + i].term or params[index + i].scheme}</td>
703                                 </span>
704                                 </span>
705                                        </tr>
706                        </span>
707            </table>
708            </tr>
709        </table>
710    </div>
711   
712    <div class="metadataSection" py:def="Coverage(editLink)">
713        <?python       
714                                divID = 'spatialtemporalDiv'
715                                edID = divID+'ed'
716                ?>
717        <table>
718            <tr><td class="linehead" colspan="2">
719                    <table>
720                        <tr><td>Data Coverage</td>
721                            <span py:if="editLink" py:strip="">
722                                <td align="right">
723                                        <span class="txtBlktog">
724                                        <a href="javascript:;" title="Toggle Form" 
725                                             onclick="swapLayers('$divID', '$edID'); return false;">
726                                        Add/Edit</a>
727                                        </span>
728                                    </td>
729                            </span>
730                                        </tr>
731                                </table>
732                                </td>
733                        </tr>
734            <tr>
735                <td>
736                <div id="$divID">
737                        <table><tr>
738                        <td><div py:replace="Spatial(None)"/></td>
739                        <td><div py:replace="Temporal(None)"/></td>
740                    </tr></table>
741                </div>
742                </td>
743            </tr>
744            <span py:if="editLink" py:strip="">
745                                <form action="${editLink}" method="post">
746                <tr>
747                        <td>
748                        <div id="$edID" class="hidden">
749                                <table><tr>
750                                <td><div py:replace="Spatial(editLink)"/></td>
751                            <td><div py:replace="Temporal(editLink)"/></td>
752                            </tr>
753                            <tr><td>
754                                 ${Markup(h.submit(value="Update"))}
755                                 </td></tr>
756                            </table>
757                        </div>
758                    </td>
759                    </tr>
760                                </form>
761                        </span>
762        </table>
763    </div>
764
765    <div py:def="Temporal(editLink)" py:strip="">
766                <table><tr><td class="cellhead">Temporal coverage</td>
767                        <td py:if="editLink">(e.g. 1975-04-28)</td></tr>
768            <span py:if="c.atom.t1 or c.atom.t2 or editLink" py:strip="">
769                                <tr><td>Start Date:</td>
770                                <td>
771                                <span py:if="editLink" py:strip="">
772                                ${Markup(h.text_field('t1', c.atom.t1))}
773                                </span>
774                        <span py:if="not editLink" py:strip="">
775                        ${c.atom.t1}
776                                </span>
777                                </td></tr>
778                                <tr><td>End Date:</td>
779                                <td>
780                                <span py:if="editLink" py:strip="">
781                                ${Markup(h.text_field('t2', c.atom.t2))}
782                                </span>
783                        <span py:if="not editLink" py:strip="">
784                        ${c.atom.t2}
785                                </span>
786                                </td></tr>
787            </span>
788            <span py:if="not c.atom.t1 and not c.atom.t2 and not editLink" py:strip="">
789                                <tr><td colspan="2">No temporal information available.</td></tr>
790                        </span>
791        </table>
792    </div>
793                           
794    <div py:def="Spatial(editLink)" py:strip="">
795        <table>
796            <tr><td colspan="2" class="cellhead">Spatial coverage</td></tr>
797            <span py:if="not c.atom.minX and not c.atom.minY and not c.atom.maxX and not c.atom.maxY and not editLink" py:strip="">
798                    <tr><td colspan="2">No spatial coverage information available.</td></tr>
799                </span>
800            <span py:if="c.atom.minX or c.atom.minY or c.atom.maxX or c.atom.maxY or editLink" py:strip="">
801                                <tr>
802                                <td colspan="2" align="center">
803                                <span py:if="editLink" py:strip="">
804                                <span class="cellhead">Max Y</span> ${Markup(h.text_field('maxY', c.atom.maxY))}
805                                </span>
806                        <span py:if="not editLink" py:strip="">
807                        <span class="cellhead">Max Y</span> ${c.atom.maxY}
808                                </span>
809                                </td></tr>
810                        <tr><td align="center">
811                                <span py:if="editLink" py:strip="">
812                                <span class="cellhead">Min X</span> ${Markup(h.text_field('minX', c.atom.minX))}
813                                </span>
814                        <span py:if="not editLink" py:strip="">
815                        <span class="cellhead">Min X</span> ${c.atom.minX}
816                                </span>
817                        </td><td align="center">
818                                <span py:if="editLink" py:strip="">
819                                <span class="cellhead">Max X</span> ${Markup(h.text_field('maxX', c.atom.maxX))}
820                                </span>
821                        <span py:if="not editLink" py:strip="">
822                        <span class="cellhead">Max X</span> ${c.atom.maxX}
823                                </span>
824                        </td></tr>
825                        <tr><td colspan="2" align="center">
826                                <span py:if="editLink" py:strip="">
827                                <span class="cellhead">Min Y</span> ${Markup(h.text_field('minY', c.atom.minY))}
828                                </span>
829                        <span py:if="not editLink" py:strip="">
830                        <span class="cellhead">Min Y</span> ${c.atom.minY}
831                                </span>
832                        </td></tr>
833                </span>
834        </table> 
835    </div>
836   
837       
838    <div py:def="Services()" id="ServiceList">
839        <table cellspacing="0" cellpadding="3" width="100%" border="0"><tbody>
840            <tr><td class="linehead" colspan="3"><span class="headingO">Links and Services</span></td></tr>
841            <tr py:if="c.atom.ndgObject is not None">
842                    <td width="20%"><span py:replace="linkimage(c.atom.ndgObject.xmlURL,g.icons_xml,'[XML]')"/></td>
843                <td>Downloadable XML version of this record
844                    <span py:if="c.atom.ndgObject.gettable==1" py:strip="">
845                (Original <span py:replace="linkimage(c.atom.ndgObject.xmlURL+'&amp;outputSchema=original',g.icons_xml,'[XML]')"/>)
846                    </span></td>
847                </tr>
848            <tr py:if="c.atom.ndgObject is not None">
849                <td width="20%"><span py:replace="linkimage(c.atom.ndgObject.printableURL,g.icons_prn,'[HTML]')"/></td>
850                    <td>Viewable XML version of this record
851                 <span py:if="c.atom.ndgObject.gettable==1" py:strip="">
852                    (Original <span py:replace="linkimage(c.atom.ndgObject.printableURL+'&amp;outputSchema=original',g.icons_prn,'[HTML]')"/>)
853                </span></td>
854            </tr>
855            <tr py:if="c.atom.ndgObject.gettable==1"><td></td><td>(Original records are the raw material harvested from data providers)</td></tr>
856        </tbody></table>
857    </div>
858   
859</html>
Note: See TracBrowser for help on using the repository browser.