Project

General

Profile

1
<%@ 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
<% 
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: walker $'
12
 *     '$Date: 2013-09-17 16:17:55 -0700 (Tue, 17 Sep 2013) $'
13
 * '$Revision: 8222 $'
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
<%@ include file="./header-section.jsp"%> 
42

    
43
<div class="document">
44
	<h2>Metacat Properties Configuration</h2>
45
	
46
	<p>Enter Metacat System properties here.  All Fields must be filled in before saving.
47
	</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
	
62
			
63
			for (Integer groupId : groupIdSet) {
64
				// for this group, display the header (group name)
65
				MetaDataGroup metaDataGroup = (MetaDataGroup)groupMap.get(groupId);
66
				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
	%>
77
							<input type="hidden"
78
	                               name="<%= metaDataProperty.getKey() %>" 	             		    	    	           		    	             			
79
		           		    	   value="<%= request.getAttribute(metaDataProperty.getKey()) %>"/>
80
	<%
81
		    			}
82
					}
83
				} else {		
84
	%>
85
			<h3><%= metaDataGroup.getName()  %></h3>
86
	<%
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
					<div class="form-row">
98
	   				<div class="textinput-label"><label for="<%= metaDataProperty.getKey() %>"><%= metaDataProperty.getLabel() %></label></div>
99
						<select class="textinput" name="<%= metaDataProperty.getKey() %>">
100
	<%
101
						Vector<String> fieldOptionValues = metaDataProperty.getFieldOptionValues();
102
						Vector<String> fieldOptionNames = metaDataProperty.getFieldOptionNames();
103
						for (int i = 0; i < fieldOptionNames.size(); i++) {
104
	%>
105
						<option value="<%= fieldOptionValues.elementAt(i) %>"
106
	<%
107
							if (fieldOptionValues.elementAt(i).equals(request.getAttribute(metaDataProperty.getKey()))) {
108
	%>
109
								selected="yes"
110
	<%
111
							}
112
	%>
113
						> <%= fieldOptionNames.elementAt(i) %>
114
	<%
115
					}
116
	%>
117
						</select>
118
						<i class="icon-question-sign" onClick="helpWindow('<%= request.getContextPath() %>','<%= metaDataProperty.getHelpFile() %>')"></i>
119
					</div>
120
	<%		
121
					} else if (fieldType.equals("password")) {
122
	%>
123
					<div class="form-row">
124
						<div class="textinput-label"><label for="<%= metaDataProperty.getKey() %>" ><%= metaDataProperty.getLabel() %></label></div>
125
						<input class="textinput" id="<%= metaDataProperty.getKey() %>" 
126
								name="<%= metaDataProperty.getKey() %>" 	             		    	    	           		    	             			
127
		           		    	value="<%= request.getAttribute(metaDataProperty.getKey()) %>"
128
		           		    	type="<%= fieldType %>"/> 
129
						<i class="icon-question-sign" onClick="helpWindow('<%= request.getContextPath() %>','<%= metaDataProperty.getHelpFile() %>')"></i>
130
					</div>
131
	<%
132
					} else if (fieldType.equals("hidden")) {
133
						%>
134
							<input id="<%= metaDataProperty.getKey() %>" 
135
									name="<%= metaDataProperty.getKey() %>" 	             		    	    	           		    	             			
136
			           		    	value="<%= request.getAttribute(metaDataProperty.getKey()) %>"
137
			           		    	type="<%= fieldType %>"/> 
138
		<%
139
					} else {
140
	%>
141
					<div class="form-row">
142
						<div class="textinput-label"><label for="<%= metaDataProperty.getKey() %> "><%= metaDataProperty.getLabel() %></label>	</div>					
143
						<input class="textinput" id="<%= metaDataProperty.getKey() %>" 
144
								name="<%= metaDataProperty.getKey() %>" 
145
		    			        value="<%= request.getAttribute(metaDataProperty.getKey()) %>"	             		    	    	           		    	             			
146
		           		    	type="<%= fieldType %> "/>	
147
						<i class="icon-question-sign" onClick="helpWindow('<%= request.getContextPath() %>','<%= metaDataProperty.getHelpFile() %>')"></i>
148
					</div>          		    
149
	<%   			
150
					}
151
	    			
152
	    			if (metaDataProperty.getDescription() != null && metaDataProperty.getDescription().trim().length() > 0 ) {
153
	%>
154
	
155
						<div class="textinput-description">[<%= metaDataProperty.getDescription() %>]</div>
156
	<%
157
	    			}
158
				}
159
				}
160
			}
161
				
162
		}
163
	%>
164
	
165
				<input type="hidden" name="configureType" value="properties"/>
166
				<input type="hidden" name="processForm" value="true"/>
167
				<input class=button type="submit" value="Save"/>
168
				<input class=button type="button" value="Cancel" onClick="forward('./admin')"> 
169
	
170
	</form>
171
	
172
</div>
173
<%@ include file="./footer-section.jsp"%>
174

    
175
</body>
176
</html>
(16-16/19)