Project

General

Profile

1 4100 daigle
<%@ page language="java" %>
2
<%@ page import="java.util.Set,java.util.Map,java.util.Vector,edu.ucsb.nceas.utilities.PropertiesMetaData" %>
3
<%@ page import="edu.ucsb.nceas.utilities.MetaDataGroup,edu.ucsb.nceas.utilities.MetaDataProperty" %>
4 4080 daigle
<%
5
/**
6
 *  '$RCSfile$'
7
 *    Copyright: 2008 Regents of the University of California and the
8
 *               National Center for Ecological Analysis and Synthesis
9
 *  For Details: http://www.nceas.ucsb.edu/
10
 *
11
 *   '$Author$'
12
 *     '$Date$'
13
 * '$Revision$'
14
 *
15
 * This program is free software; you can redistribute it and/or modify
16
 * it under the terms of the GNU General Public License as published by
17
 * the Free Software Foundation; either version 2 of the License, or
18
 * (at your option) any later version.
19
 *
20
 * This program is distributed in the hope that it will be useful,
21
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
22
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
23
 * GNU General Public License for more details.
24
 *
25
 * You should have received a copy of the GNU General Public License
26
 * along with this program; if not, write to the Free Software
27
 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
28
 */
29
%>
30
31
<html>
32
<head>
33
34
<title>Metacat Properties Configuration</title>
35
<link rel="stylesheet" type="text/css"
36
        href="<%= request.getContextPath() %>/admin/admin.css"></link>
37
<script language="JavaScript" type="text/JavaScript" src="<%= request.getContextPath() %>/admin/admin.js"></script>
38
39
</head>
40
<body>
41 4557 daigle
<%@ include file="./header-section.jsp"%>
42
43 8203 walker
<img src="<%= request.getContextPath() %>/metacat-logo-darkgray.png" width="100px" align="right"/>
44 4557 daigle
<h2>Metacat Properties Configuration</h2>
45 4080 daigle
46 4557 daigle
<p>Enter Metacat System properties here.  All Fields must be filled in before saving.
47 4080 daigle
</p>
48
<br clear="right"/>
49
50
<%@ include file="page-message-section.jsp"%>
51
52
<form method="POST" name="configuration_form" action="<%= request.getContextPath() %>/admin"
53
                                        onsubmit="return submitForm(this);">
54
<%
55
	// metadata holds all group and properties metadata
56
    PropertiesMetaData metadata = (PropertiesMetaData)request.getAttribute("metadata");
57
	if (metadata != null) {
58
		// each group describes a section of properties
59
		Map<Integer, MetaDataGroup> groupMap = metadata.getGroups();
60
		Set<Integer> groupIdSet = groupMap.keySet();
61 5028 daigle
62
63 4080 daigle
		for (Integer groupId : groupIdSet) {
64
			// for this group, display the header (group name)
65
			MetaDataGroup metaDataGroup = (MetaDataGroup)groupMap.get(groupId);
66 5028 daigle
			if (groupId == 0) {
67
				// get all the properties in this group
68
				Map<Integer, MetaDataProperty> propertyMap =
69
					metadata.getPropertiesInGroup(metaDataGroup.getIndex());
70
				Set<Integer> propertyIndexes = propertyMap.keySet();
71
				// iterate through each property and display appropriately
72
				for (Integer propertyIndex : propertyIndexes) {
73
					MetaDataProperty metaDataProperty = propertyMap.get(propertyIndex);
74
	    			String fieldType = metaDataProperty.getFieldType();
75
	    			if (fieldType.equals("hidden")) {
76 4080 daigle
%>
77 5028 daigle
						<input type="hidden"
78
                               name="<%= metaDataProperty.getKey() %>"
79
	           		    	   value="<%= request.getAttribute(metaDataProperty.getKey()) %>"/>
80
<%
81
	    			}
82
				}
83
			} else {
84
%>
85 4100 daigle
		<h3><%= metaDataGroup.getName()  %></h3>
86 4080 daigle
<%
87
			// get all the properties in this group
88
			Map<Integer, MetaDataProperty> propertyMap =
89
				metadata.getPropertiesInGroup(metaDataGroup.getIndex());
90
			Set<Integer> propertyIndexes = propertyMap.keySet();
91
			// iterate through each property and display appropriately
92
			for (Integer propertyIndex : propertyIndexes) {
93
				MetaDataProperty metaDataProperty = propertyMap.get(propertyIndex);
94
    			String fieldType = metaDataProperty.getFieldType();
95
    			if (fieldType.equals("select")) {
96
%>
97 4258 daigle
				<div class="form-row">
98 8203 walker
   				<div class="textinput-label"><label for="<%= metaDataProperty.getKey() %>"><%= metaDataProperty.getLabel() %></label></div>
99 4258 daigle
					<select class="textinput" name="<%= metaDataProperty.getKey() %>">
100 4080 daigle
<%
101 4100 daigle
					Vector<String> fieldOptionValues = metaDataProperty.getFieldOptionValues();
102
					Vector<String> fieldOptionNames = metaDataProperty.getFieldOptionNames();
103
					for (int i = 0; i < fieldOptionNames.size(); i++) {
104 4080 daigle
%>
105 4402 daigle
					<option value="<%= fieldOptionValues.elementAt(i) %>"
106 4080 daigle
<%
107 4402 daigle
						if (fieldOptionValues.elementAt(i).equals(request.getAttribute(metaDataProperty.getKey()))) {
108
%>
109
							selected="yes"
110
<%
111
						}
112
%>
113
					> <%= fieldOptionNames.elementAt(i) %>
114
<%
115 4080 daigle
				}
116
%>
117
					</select>
118 8203 walker
					<img class="question-mark" src="style/images/help.png"
119
							onClick="helpWindow('<%= request.getContextPath() %>','<%= metaDataProperty.getHelpFile() %>')"/>
120 4258 daigle
				</div>
121 4080 daigle
<%
122
				} else if (fieldType.equals("password")) {
123
%>
124 4258 daigle
				<div class="form-row">
125
					<div class="textinput-label"><label for="<%= metaDataProperty.getKey() %>" ><%= metaDataProperty.getLabel() %></label></div>
126
					<input class="textinput" id="<%= metaDataProperty.getKey() %>"
127
							name="<%= metaDataProperty.getKey() %>"
128 4153 daigle
	           		    	value="<%= request.getAttribute(metaDataProperty.getKey()) %>"
129 4258 daigle
	           		    	type="<%= fieldType %>"/>
130 8203 walker
					<img class="question-mark" src="style/images/help.png"
131
	           		       onClick="helpWindow('<%= request.getContextPath() %>','<%= metaDataProperty.getHelpFile() %>')"/>
132 4258 daigle
				</div>
133
<%
134 6864 leinfelder
				} else if (fieldType.equals("hidden")) {
135
					%>
136
						<input id="<%= metaDataProperty.getKey() %>"
137
								name="<%= metaDataProperty.getKey() %>"
138
		           		    	value="<%= request.getAttribute(metaDataProperty.getKey()) %>"
139
		           		    	type="<%= fieldType %>"/>
140
	<%
141 4080 daigle
				} else {
142
%>
143 4258 daigle
				<div class="form-row">
144
					<div class="textinput-label"><label for="<%= metaDataProperty.getKey() %> "><%= metaDataProperty.getLabel() %></label>	</div>
145
					<input class="textinput" id="<%= metaDataProperty.getKey() %>"
146
							name="<%= metaDataProperty.getKey() %>"
147
	    			        value="<%= request.getAttribute(metaDataProperty.getKey()) %>"
148
	           		    	type="<%= fieldType %> "/>
149 8203 walker
					<img class="question-mark" class=question-mark
150
					     src="style/images/help.png"
151
					     onClick="helpWindow('<%= request.getContextPath() %>','<%= metaDataProperty.getHelpFile() %>')"/>
152 4258 daigle
				</div>
153 4080 daigle
<%
154
				}
155 4157 daigle
156 6864 leinfelder
    			if (metaDataProperty.getDescription() != null && metaDataProperty.getDescription().trim().length() > 0 ) {
157 4157 daigle
%>
158 4258 daigle
159
					<div class="textinput-description">[<%= metaDataProperty.getDescription() %>]</div>
160 4157 daigle
<%
161
    			}
162 4080 daigle
			}
163 5028 daigle
			}
164 4080 daigle
		}
165 5028 daigle
166 4080 daigle
	}
167
%>
168
169
			<input type="hidden" name="configureType" value="properties"/>
170
			<input type="hidden" name="processForm" value="true"/>
171
			<input class=left-button type="submit" value="Save"/>
172
			<input class=button type="button" value="Cancel" onClick="forward('./admin')">
173
174
</form>
175
176 4557 daigle
<%@ include file="./footer-section.jsp"%>
177
178 4080 daigle
</body>
179
</html>