source: MILK/trunk/milk_server/milk_server/templates/atom_editor/atom_editor.html @ 5216

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

Tighten up use of xhtml in atom:content element - NB, this requires a
fix when data is re-ingested via elementtree, as this doesn't respect
inner namespaces properly. Also add new keyword to TextArea? template
function, to allow the content to be displayed 'as is' - i.e. without
the XML escaping.

Line 
1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2<html lang="en" xmlns="http://www.w3.org/1999/xhtml" 
3        xmlns:py="http://genshi.edgewall.org/" 
4        xmlns:xi="http://www.w3.org/2001/XInclude">
5        <xi:include href="../layout.html" />
6        <xi:include href="atom_functions.html" />
7        <head>
8        <title py:content="c.title">title</title>
9        <span py:if="c.atom.isDeployable() or c.atom.isDE()"  py:strip="">
10                <script type="text/javascript">
11                                var placeholderNames = ['deploymentsPlaceholder'];
12                                var dataTypes = ['deployments'];
13                                var urls = ['$c.atom.deploymentsURL'];
14                        </script>
15                </span>
16        <script py:if="c.atom.isGranule()" type="text/javascript">
17function confirmGranuleDelete() 
18{
19        var r=confirm('Do you really want to delete this granule - and all references to it in data entities?');
20        if (r==true)
21        {
22                Div_show("loading");
23                return true; 
24        }
25        return false;
26}
27                </script>
28        <span py:if="c.atom.isDeployable() or c.atom.isGranule()"  py:strip="">
29                <script type="text/javascript">
30                        if (placeholderNames)
31                                var placeholderNames = [placeholderNames, 'dataEntitiesPlaceholder'];
32                            else
33                                    var placeholderNames = ['dataEntitiesPlaceholder'];
34                                if (dataTypes)
35                                        var dataTypes = [dataTypes, 'data entities'];
36                                else
37                                        var dataTypes = ['data entities'];
38                                if (urls)
39                                        var urls = [urls, '$c.atom.dataEntitiesURL'];
40                                else
41                                        var urls = ['$c.atom.dataEntitiesURL'];
42                        </script>
43                </span>
44        <span py:if="not c.atom.isDeployment()"  py:strip="">
45                        <script type="text/javascript" src="$g.server/js/queueDeployments.js"/>
46                </span>
47            <script py:if="g.__dict__.has_key('correctionPosted')" type="text/javascript">
48                        window.onload = alert('$g.correctionPosted');
49                        <?python del g.correctionPosted ?>
50                </script>
51    </head>
52    <body>
53      <panelTab py:if="c.saveLink">Editor</panelTab>
54      <panelTab py:if="not c.saveLink">Details</panelTab>
55      <div id="contents">
56            <div class="metadata">
57                            <h3>  $c.title </h3>
58                                ${Markup(h.form(h.url_for(controller='atom_editor/editatom', action='edit', uri=c.atom.ndgURI)))}
59                                        <input py:if="not c.saveLink and g.atomEditorEnabled" name="Edit" type="submit" value="Edit" onclick="Div_show('loading');"/>
60                                ${Markup(h.end_form())}
61                                ${Markup(h.form(h.url_for(controller='atom_editor/editatom', action='delete', uri=c.atom.ndgURI)))}
62                                        <input py:if="c.atom.isGranule() and g.atomEditorEnabled" name="Delete" type="submit" value="Delete" onclick="return confirmGranuleDelete()" />
63                                ${Markup(h.end_form())}
64                        <div py:replace="displayErrors()"/>
65                <table py:if="c.saveLink">
66                <tr><td>Data Type:</td><td>$c.atom.atomTypeName</td></tr>
67                <tr><td>Provider ID:</td><td>$c.atom.ME.providerID</td></tr>
68                                <tr><td>Created:</td><td>$c.atom.publishedDate</td></tr>
69                <tr><td>Last updated:</td><td>$c.atom.updatedDate</td></tr>
70                </table>
71
72                <div py:replace="GeneralInfo(c.saveLink)"/>
73                <div py:if="c.atom.isGranule() and not c.atom.contentFile" py:replace="UploadCSMLOrCDMLFileForm(c.saveLink)"/>
74                <div py:if="not c.atom.isDeployment() and not c.atom.isGranule()" py:replace="TextArea('summary', c.atom.summary, c.saveLink, g.atom_summary, title='Summary')"/>
75                <div py:if="not c.atom.isDeployment() and not c.atom.isGranule()" py:replace="TextArea('Content', c.atom.Content, c.saveLink, g.atom_content, noEscapeVal=True)"/>
76                <div py:if="c.atom.isDE()" py:replace="TextArea('lineage', c.atom.ME.lineage, c.saveLink, g.atom_lineage, title='Lineage')"/>
77                <div py:if="c.atom.isDE()" py:replace="TextArea('quality', c.atom.ME.quality, c.saveLink, g.atom_quality, title='Quality Statement')"/>
78                <div py:if="c.atom.isGranule()" py:replace="ContentFile(c.atom.contentFile, None)"/>
79                        <div py:replace="People('Author', [c.atom.author], c.saveLink, g.atom_author)"/>
80                        <div py:if="not c.atom.isDeployment()" py:replace="People('Contributors', c.atom.contributors, c.saveLink, g.atom_contributors)"/>
81                        <div py:if="not c.atom.isDeployment() and not c.atom.isGranule()" py:replace="OnlineReferences(c.atom.getLinksOfType(c.atom.ONLINE_REF_LABEL), c.saveLink)"/>
82                        <div py:if="c.atom.isDeployment()" py:replace="Associations('Associated Data',
83                                c.atom.relatedLinks, c.addEntityLink, c.saveAssoc, g.atom_associated_data)"/>
84                        <div py:if="c.atom.isDE()" py:replace="Associations('Associated Data Granules',
85                                c.atom.getLinksOfType(g.vtd.GRANULE_TERM), c.addGranuleLink, c.saveAssoc, g.atom_associated_granules)"/>
86                        <div py:if="c.atom.isDE()" py:replace="Associations('Associated Deployments',
87                                c.atom.getLinksOfType(g.vtd.DEPLOYMENT_TERM), c.addDeploymentLink, c.saveAssoc, g.atom_associated_deployments)"/>
88                        <div class="metadataSection" py:if="c.atom.isDeployable() or c.atom.isGranule()">
89                                <div id="dataEntitiesPlaceholder" />
90                            </div>
91                        <div class="metadataSection" py:if="c.atom.isDeployable() or (c.atom.isDE() and c.atom.getLinksOfType(g.vtd.DEPLOYMENT_TERM))">
92                                <div id="deploymentsPlaceholder" />
93                            </div>
94                                <span py:if="c.atom.isDE() or c.atom.isGranule()" py:strip="">
95                                        <span py:if="not c.saveLink" py:strip="">
96                                        <div py:replace="SummaryParameterList(c.atom.parameters)"/>
97                                        <div py:replace="FullParameterList(c.atom.parameters, c.saveLink, 'hidden')"/>
98                                        </span>
99                                <div py:if="c.saveLink" py:replace="FullParameterList(c.atom.parameters, c.saveLink, '')"/>
100                                </span>
101                        <div py:replace="Coverage(c.saveLink)"/>
102                        <div py:replace="People('Responsible Parties', c.atom.ME.responsibleParties, c.saveLink, g.atom_responsible_parties)"/>
103                        <div py:if="c.atom.isDE()" py:replace="Other(c.saveLink)"/>
104                            <div py:replace="Services()"/>
105              </div>
106      </div>
107          <span py:if="not c.saveLink" py:strip="">
108              <includeCorrectionLink>True</includeCorrectionLink>
109          <center>
110                    <p>Not all information in this record may be rendered in this view. Please see the XML version for complete
111                    content </p>
112              </center>
113          </span>
114    </body>
115</html>
Note: See TracBrowser for help on using the repository browser.