comparison src/main/webapp/merge/referenceMerge.xhtml @ 85:fd7beb701724

working on "merge reference" feature.
author casties
date Fri, 30 Sep 2016 14:30:33 +0200
parents
children 545e47659e1f
comparison
equal deleted inserted replaced
84:e2f6ccc4d322 85:fd7beb701724
1
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml"
4 xmlns:h="http://java.sun.com/jsf/html"
5 xmlns:f="http://java.sun.com/jsf/core"
6 xmlns:ui="http://java.sun.com/jsf/facelets"
7 xmlns:a4j="http://richfaces.org/a4j"
8 xmlns:rich="http://richfaces.org/rich">
9
10 <body>
11 <ui:composition template="/templates/privateTemplate.xhtml">
12
13 <ui:define name="privateContent">
14
15 <div id="pageTitle">
16 <h:outputText value="Join References" />
17 </div>
18
19 <!-- TODO: fix this! -->
20 <script type="text/javascript" src="../imageServer/resources/js/diva4ismi.js"></script>
21
22 <h:panelGrid rendered="#{Session.user != null}"
23 styleClass="mainPanel" columns="1">
24
25
26
27 <h:panelGrid columns="2" styleClass="createPanel"
28 columnClasses="createPanelFirstColumn" id="loadingPanel">
29
30 <h:outputText value="Load Entities" />
31
32 <h:panelGrid columns="4">
33
34 <h:outputText value="Source Biblio ID"
35 styleClass="textBack"/>
36 <h:inputText value="#{Session.referenceMerge.firstId}" />
37 <a4j:commandButton value="Load"
38 actionListener="#{Session.referenceMerge.loadFirstEntity}"
39 render="loadingPanel,mergingPanel" />
40 <h:column>
41 <h:outputText
42 value="#{Session.referenceMerge.firstEntity.objectClass}= #{Session.referenceMerge.firstEntity.ownValue} [#{Session.referenceMerge.firstEntity.id}]"
43 rendered="#{!empty Session.referenceMerge.firstEntity}"
44 styleClass="textBack"/>
45 </h:column>
46
47 <h:outputText/>
48 <h:outputText/>
49 <h:outputText/>
50 <h:column rendered="#{Session.referenceMerge.firstBibId != null}">
51 <script>showBibliographyEntryFormatted("#{Session.referenceMerge.firstBibId}", null, "#bibl-entry-1")</script>
52 <span class="textBack" id="bibl-entry-1">(loading reference...)</span>
53 </h:column>
54 <h:outputText rendered="#{Session.referenceMerge.firstBibId == null}"/>
55
56 <h:outputText value="Target Biblio ID"
57 styleClass="textBack"/>
58 <h:inputText value="#{Session.referenceMerge.secondId}" />
59 <a4j:commandButton value="Load"
60 actionListener="#{Session.referenceMerge.loadSecondEntity}"
61 render="loadingPanel,mergingPanel" />
62 <h:column>
63 <h:outputText
64 value="#{Session.referenceMerge.secondEntity.objectClass}= #{Session.referenceMerge.secondEntity.ownValue} [#{Session.referenceMerge.secondEntity.id}]"
65 rendered="#{Session.referenceMerge.secondEntity != null}"
66 styleClass="textBack"/>
67 </h:column>
68
69 <h:outputText/>
70 <h:outputText/>
71 <h:outputText/>
72 <h:column rendered="#{Session.referenceMerge.secondBibId != null}">
73 <script>showBibliographyEntryFormatted("#{Session.referenceMerge.secondBibId}", null, "#bibl-entry-2")</script>
74 <span class="textBack" id="bibl-entry-2">(loading reference...)</span>
75 </h:column>
76 <h:outputText rendered="#{Session.referenceMerge.secondBibId == null}"/>
77
78 </h:panelGrid>
79
80 </h:panelGrid>
81
82 <h:panelGrid columns="1" id="mergingPanel">
83
84 <h:outputText value="Merge Mapping"
85 rendered="#{Session.referenceMerge.entitiesLoaded}"
86 styleClass="titlePanel"/>
87
88 <h:panelGrid columns="3" styleClass="createPanel"
89 columnClasses="createPanelFirstColumn,createPanelColumn02,createPanelColumn02"
90 rendered="#{Session.referenceMerge.entitiesLoaded}">
91
92
93 <h:outputText value="Attributes" />
94 <rich:dataTable var="attName"
95 value="#{Session.referenceMerge.attLabels}"
96 rendered="#{!empty Session.referenceMerge.attLabels}">
97 <h:column>
98 <f:facet name="header">
99 <h:outputText value="Attribute Name" />
100 </f:facet>
101 <h:outputText value="#{attName}" />
102 </h:column>
103 <h:column>
104 <f:facet name="header">
105 <h:outputText value="Value First Entity" />
106 </f:facet>
107 <h:outputText
108 value="#{Session.referenceMerge.firstAttMap[attName]}" />
109 </h:column>
110 <h:column>
111 <f:facet name="header">
112 <h:outputText value="Value Second Entity" />
113 </f:facet>
114 <h:outputText
115 value="#{Session.referenceMerge.secondAttMap[attName]}" />
116 </h:column>
117 <h:column style="width:300px;">
118 <f:facet name="header">
119 <h:outputText value="Select Value" />
120 </f:facet>
121 <h:selectOneRadio
122 value="#{Session.referenceMerge.selectedAtts[attName]}">
123 <f:selectItems value="#{Session.referenceMerge.attSelectItems}" />
124 </h:selectOneRadio>
125 </h:column>
126 </rich:dataTable>
127 <h:outputText />
128
129 <h:outputText value="Source Relations" />
130
131 <h:panelGrid columns="1">
132 <rich:dataTable var="srcRelation"
133 rendered="#{!empty Session.referenceMerge.firstEntity.sourceRelations}"
134 value="#{Session.referenceMerge.firstEntity.sourceRelations}">
135
136 <h:column>
137 <f:facet name="header">
138 <h:outputText value="Relation Name" />
139 </f:facet>
140 <h:outputText value="#{srcRelation.ownValue}" />
141 </h:column>
142 <h:column>
143 <f:facet name="header">
144 <h:outputText value="linked to this" />
145 </f:facet>
146 <h:outputText
147 value="#{srcRelation.target.ownValue} [#{srcRelation.target.objectClass}-#{srcRelation.targetId}]" />
148 </h:column>
149
150 <h:column>
151 <h:selectOneRadio
152 value="#{Session.referenceMerge.selectedFirstSrcRelations[srcRelation.id]}">
153 <f:selectItems value="#{Session.referenceMerge.relSelectItems}" />
154 </h:selectOneRadio>
155 </h:column>
156
157 </rich:dataTable>
158
159 <h:outputText
160 value="the first entity does not have source relations"
161 rendered="#{empty Session.referenceMerge.firstEntity.sourceRelations}" />
162 </h:panelGrid>
163
164 <h:panelGrid columns="1">
165
166 <rich:dataTable var="srcRelation"
167 rendered="#{!empty Session.referenceMerge.secondEntity.sourceRelations}"
168 value="#{Session.referenceMerge.secondEntity.sourceRelations}">
169 <h:column>
170 <f:facet name="header">
171 <h:outputText value="Relation Name" />
172 </f:facet>
173 <h:outputText value="#{srcRelation.ownValue}" />
174 </h:column>
175 <h:column>
176 <f:facet name="header">
177 <h:outputText value="linked to this" />
178 </f:facet>
179 <h:outputText
180 value="#{srcRelation.target.ownValue} [#{srcRelation.target.objectClass}-#{srcRelation.targetId}]" />
181 </h:column>
182 <h:column>
183 <h:selectOneRadio
184 value="#{Session.referenceMerge.selectedSecondSrcRelations[srcRelation.id]}">
185 <f:selectItems value="#{Session.referenceMerge.relSelectItems}" />
186 </h:selectOneRadio>
187 </h:column>
188 </rich:dataTable>
189
190 <h:outputText
191 value="The second entity does not have source relations"
192 rendered="#{empty Session.referenceMerge.secondEntity.sourceRelations}" />
193
194 </h:panelGrid>
195
196
197 <h:outputText value="Target Relations" />
198
199 <h:panelGrid columns="1">
200 <rich:dataTable var="tarRelation"
201 rendered="#{!empty Session.referenceMerge.firstEntity.targetRelations}"
202 value="#{Session.referenceMerge.firstEntity.targetRelations}"
203 style="width:60%;">
204
205 <h:column>
206 <f:facet name="header">
207 <h:outputText value="linked from this" />
208 </f:facet>
209 <h:outputText
210 value="#{tarRelation.source.ownValue} [#{tarRelation.source.objectClass}-#{tarRelation.sourceId}]" />
211 </h:column>
212
213 <h:column>
214 <f:facet name="header">
215 <h:outputText value="Relation Name" />
216 </f:facet>
217 <h:outputText value="#{tarRelation.ownValue}" />
218 </h:column>
219
220 <h:column>
221 <h:selectOneRadio
222 value="#{Session.referenceMerge.selectedFirstTarRelations[tarRelation.id]}">
223 <f:selectItems value="#{Session.referenceMerge.relSelectItems}" />
224 </h:selectOneRadio>
225 </h:column>
226 </rich:dataTable>
227 <h:outputText
228 value="the first entity does not have target relations."
229 rendered="#{empty Session.referenceMerge.firstEntity.targetRelations}" />
230 </h:panelGrid>
231
232 <h:panelGrid columns="1">
233
234 <rich:dataTable var="tarRelation"
235 rendered="#{!empty Session.referenceMerge.secondEntity.targetRelations}"
236 value="#{Session.referenceMerge.secondEntity.targetRelations}"
237 style="width:60%;">
238
239 <h:column>
240 <f:facet name="header">
241 <h:outputText value="linked from this" />
242 </f:facet>
243 <h:outputText
244 value="#{tarRelation.source.ownValue} [#{tarRelation.source.objectClass}-#{tarRelation.sourceId}]" />
245 </h:column>
246
247 <h:column>
248 <f:facet name="header">
249 <h:outputText value="Relation Name" />
250 </f:facet>
251 <h:outputText value="#{tarRelation.ownValue}" />
252 </h:column>
253
254 <h:column>
255 <h:selectOneRadio
256 value="#{Session.referenceMerge.selectedSecondTarRelations[tarRelation.id]}">
257 <f:selectItems value="#{Session.referenceMerge.relSelectItems}" />
258 </h:selectOneRadio>
259 </h:column>
260
261 </rich:dataTable>
262
263 <h:outputText
264 value="The second entity does not have target relations"
265 rendered="#{empty Session.referenceMerge.secondEntity.targetRelations}" />
266
267 </h:panelGrid>
268 </h:panelGrid>
269
270 <h:panelGrid columns="2" styleClass="controlPanel"
271 rendered="#{Session.referenceMerge.entitiesLoaded}">
272
273 <a4j:commandButton value="Preview"
274 actionListener="#{Session.referenceMerge.preview}"
275 rendered="#{Session.referenceMerge.entitiesLoaded}"
276 render="mergingPanel" />
277
278 <a4j:commandButton value="Execute Merge"
279 actionListener="#{Session.referenceMerge.listenerExecuteMerge }"
280 rendered="#{Session.referenceMerge.entitiesLoaded}"
281 onclick="#{ApplicationBean1.JSConfirmationMerge}"
282 render="mergingPanel" />
283
284 </h:panelGrid>
285
286
287 <h:outputText value="Entity Preview"
288 rendered="#{!empty Session.referenceMerge.entResult}"
289 styleClass="titlePanel"/>
290 <h:panelGrid columns="2" styleClass="createPanel"
291 columnClasses="createPanelFirstColumn"
292 rendered="#{!empty Session.referenceMerge.entResult}">
293
294
295 <h:outputText value="Attributes" />
296 <rich:dataTable
297 value="#{Session.referenceMerge.entResult.attributes}"
298 var="attribute" border="1">
299 <h:column>
300 <f:facet name="header">
301 <h:outputText value="Name" />
302 </f:facet>
303 <h:outputText value="#{attribute.objectClass}" />
304 </h:column>
305 <h:column>
306 <f:facet name="header">
307 <h:outputText value="Value" />
308 </f:facet>
309 <h:outputText value="#{attribute.ownValue}" />
310 </h:column>
311 </rich:dataTable>
312
313
314 <h:outputText value="Source Relations" />
315 <rich:dataTable
316 value="#{Session.referenceMerge.entResult.sourceRelations}"
317 var="srcRelation" border="1">
318
319 <h:column>
320 <f:facet name="header">
321 <h:outputText value="linked from this" />
322 </f:facet>
323 <h:outputText value="#{'x'}" />
324 </h:column>
325
326 <h:column>
327 <f:facet name="header">
328 <h:outputText value="Relation Name" />
329 </f:facet>
330 <h:outputText value="#{srcRelation.ownValue}" />
331 </h:column>
332 <h:column>
333 <f:facet name="header">
334 <h:outputText value="linked to this" />
335 </f:facet>
336 <h:outputText
337 value="#{srcRelation.target.ownValue} [#{srcRelation.target.objectClass}]" />
338 </h:column>
339 </rich:dataTable>
340
341 <h:outputText value="Target Relations" />
342 <rich:dataTable
343 value="#{Session.referenceMerge.entResult.targetRelations}"
344 var="tarRelation" border="1">
345 <h:column>
346 <f:facet name="header">
347 <h:outputText value="linked from this" />
348 </f:facet>
349 <h:outputText
350 value="#{tarRelation.source.ownValue} [#{tarRelation.source.objectClass}]" />
351 </h:column>
352 <h:column>
353 <f:facet name="header">
354 <h:outputText value="Relation Name" />
355 </f:facet>
356 <h:outputText value="#{tarRelation.ownValue}" />
357 </h:column>
358 <h:column>
359 <f:facet name="header">
360 <h:outputText value="linked to this" />
361 </f:facet>
362 <h:outputText value="#{'x'}" />
363 </h:column>
364 </rich:dataTable>
365
366
367 </h:panelGrid>
368
369
370
371 </h:panelGrid>
372
373
374
375 </h:panelGrid>
376 </ui:define>
377 </ui:composition>
378 </body>
379 </html>