annotate src/main/java/de/mpiwg/itgroup/ismi/entry/beans/CurrentWitnessBean.java @ 119:4aa8c425685d

less System.out.println.
author casties
date Fri, 06 Jan 2017 16:59:37 +0100
parents 59f26a5ef2b3
children 71638720fe2f
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1
jurzua
parents:
diff changeset
1 package de.mpiwg.itgroup.ismi.entry.beans;
jurzua
parents:
diff changeset
2
jurzua
parents:
diff changeset
3 import java.io.Serializable;
jurzua
parents:
diff changeset
4 import java.util.ArrayList;
jurzua
parents:
diff changeset
5 import java.util.List;
jurzua
parents:
diff changeset
6
jurzua
parents:
diff changeset
7 import javax.faces.component.UIComponent;
jurzua
parents:
diff changeset
8 import javax.faces.event.ActionEvent;
jurzua
parents:
diff changeset
9 import javax.faces.event.ValueChangeEvent;
jurzua
parents:
diff changeset
10 import javax.faces.model.SelectItem;
jurzua
parents:
diff changeset
11
jurzua
parents:
diff changeset
12 import org.apache.commons.lang.StringUtils;
jurzua
parents:
diff changeset
13 import org.apache.log4j.Logger;
jurzua
parents:
diff changeset
14 import org.mpi.openmind.repository.bo.Attribute;
jurzua
parents:
diff changeset
15 import org.mpi.openmind.repository.bo.Entity;
jurzua
parents:
diff changeset
16 import org.mpi.openmind.repository.bo.Node;
jurzua
parents:
diff changeset
17 import org.mpi.openmind.repository.bo.Relation;
jurzua
parents:
diff changeset
18 import org.mpi.openmind.security.bo.User;
jurzua
parents:
diff changeset
19
111
22a18bfc66b0 new completion that uses ALIASes: AbstractListenerObject. was_copied_in in WITNESS form can use PLACE aliases now. some cleanup.
casties
parents: 1
diff changeset
20 import de.mpiwg.itgroup.ismi.auxObjects.AliasListenerObject;
1
jurzua
parents:
diff changeset
21 import de.mpiwg.itgroup.ismi.auxObjects.ListenerObject;
jurzua
parents:
diff changeset
22 import de.mpiwg.itgroup.ismi.auxObjects.lo.WitnessAuthorLO;
jurzua
parents:
diff changeset
23 import de.mpiwg.itgroup.ismi.auxObjects.lo.WitnessTextLO;
jurzua
parents:
diff changeset
24 import de.mpiwg.itgroup.ismi.util.guiComponents.Calendar;
jurzua
parents:
diff changeset
25 import de.mpiwg.itgroup.ismi.util.guiComponents.EntityList;
jurzua
parents:
diff changeset
26 import de.mpiwg.itgroup.ismi.util.guiComponents.StatusImage;
jurzua
parents:
diff changeset
27
jurzua
parents:
diff changeset
28 public class CurrentWitnessBean extends CodexEditorTemplate implements Serializable{
jurzua
parents:
diff changeset
29
jurzua
parents:
diff changeset
30 private static final long serialVersionUID = -7645136722251494419L;
jurzua
parents:
diff changeset
31
jurzua
parents:
diff changeset
32 private static Logger logger = Logger.getLogger(CurrentWitnessBean.class);
jurzua
parents:
diff changeset
33
jurzua
parents:
diff changeset
34 private Boolean codicesOverviewRendered = false;
jurzua
parents:
diff changeset
35 private List <CodexForList> codicesAll = new ArrayList<CodexForList>();
jurzua
parents:
diff changeset
36
jurzua
parents:
diff changeset
37 private List<SelectItem> titles_list = new ArrayList<SelectItem>();
jurzua
parents:
diff changeset
38 private Long selectedTitleId;
jurzua
parents:
diff changeset
39 private Boolean selectTitleRendered = false;
jurzua
parents:
diff changeset
40 private String selectPersonType;
jurzua
parents:
diff changeset
41
jurzua
parents:
diff changeset
42 private List<SelectItem> persons_list = new ArrayList<SelectItem>();
jurzua
parents:
diff changeset
43 private Long selectedPersonId;
jurzua
parents:
diff changeset
44 private Boolean selectPersonRendered = false;
jurzua
parents:
diff changeset
45 private Boolean restrictedByRole = true;
jurzua
parents:
diff changeset
46
jurzua
parents:
diff changeset
47 //private Entity witness;
jurzua
parents:
diff changeset
48
jurzua
parents:
diff changeset
49 private ListenerObject titleLo = new WitnessTextLO(TEXT, full_title_translit, this);
jurzua
parents:
diff changeset
50
jurzua
parents:
diff changeset
51 private String valueTitle = "";
jurzua
parents:
diff changeset
52
jurzua
parents:
diff changeset
53 // WITNESS -> has_title_written_as -> ALIAS
jurzua
parents:
diff changeset
54 private String valueTextWritten = "";
jurzua
parents:
diff changeset
55 private List<SelectItem> suggestedTitlesWritten = new ArrayList<SelectItem>();
jurzua
parents:
diff changeset
56 private Long valueTitleSelectedId;
jurzua
parents:
diff changeset
57
jurzua
parents:
diff changeset
58 // WITNESS -> has_authorWritten_as -> ALIAS
jurzua
parents:
diff changeset
59 private String valueAuthorWritten = "";
jurzua
parents:
diff changeset
60 private List<SelectItem> suggestedAuthorsWritten = new ArrayList<SelectItem>();
jurzua
parents:
diff changeset
61 private Long valueAuthorSelectedId;
jurzua
parents:
diff changeset
62
jurzua
parents:
diff changeset
63 // WITNESS -> is_exemplar_of -> TEXT -> was_created_by -> PERSON
jurzua
parents:
diff changeset
64 private ListenerObject authorLo = new WitnessAuthorLO(PERSON, name_translit, this);
jurzua
parents:
diff changeset
65 private String valueAuthor = "";
jurzua
parents:
diff changeset
66
jurzua
parents:
diff changeset
67 private boolean textUnknown = false;
jurzua
parents:
diff changeset
68 private static String UNKNOWN = "UNKNOWN";
jurzua
parents:
diff changeset
69
jurzua
parents:
diff changeset
70
jurzua
parents:
diff changeset
71 // WITENSS -> was_copied_by -> PERSON
jurzua
parents:
diff changeset
72 private ListenerObject copyistLo = new ListenerObject(PERSON, name_translit);
jurzua
parents:
diff changeset
73
jurzua
parents:
diff changeset
74 // WITENSS -> was_copied_at -> PLACE
112
59f26a5ef2b3 AliasListenerObject adds aliases to ListenerObject. Change all forms to enable ALIAS for (historical) PLACE fields. Remove REPOSITORY from event forms.
casties
parents: 111
diff changeset
75 private AliasListenerObject copyPlaceLo = new AliasListenerObject(PLACE, name, "is_alias_name_of");
1
jurzua
parents:
diff changeset
76
jurzua
parents:
diff changeset
77 // WITNESS -> xx -> PERSON
jurzua
parents:
diff changeset
78 private ListenerObject patronageLo = new ListenerObject(PERSON, name_translit);
jurzua
parents:
diff changeset
79
jurzua
parents:
diff changeset
80 //private List<SelectItem> citiesWithRepositories;
jurzua
parents:
diff changeset
81 private boolean foundCodex;
jurzua
parents:
diff changeset
82
jurzua
parents:
diff changeset
83 private boolean lockValueAuthor = false;
jurzua
parents:
diff changeset
84 private boolean lockValueTitle = false;
jurzua
parents:
diff changeset
85
jurzua
parents:
diff changeset
86 private boolean createCodexRendered = false;
jurzua
parents:
diff changeset
87 private boolean renderShowAllCodexCandidates = false;
jurzua
parents:
diff changeset
88 //private Entity witness_old;
jurzua
parents:
diff changeset
89
jurzua
parents:
diff changeset
90 private String newIdentifier;
jurzua
parents:
diff changeset
91
jurzua
parents:
diff changeset
92 //private IslamicCalendar islamicCalCopyDate;
jurzua
parents:
diff changeset
93 private transient Calendar copyDate;
jurzua
parents:
diff changeset
94
jurzua
parents:
diff changeset
95 private EntityList studiedByList;
jurzua
parents:
diff changeset
96 private EntityList possibleExamplerOfList;
jurzua
parents:
diff changeset
97
jurzua
parents:
diff changeset
98 public CurrentWitnessBean() {
jurzua
parents:
diff changeset
99 super();
jurzua
parents:
diff changeset
100 this.entity = new Entity(Node.TYPE_ABOX, WITNESS, false);
jurzua
parents:
diff changeset
101 setDefObjectClass(WITNESS);
jurzua
parents:
diff changeset
102
jurzua
parents:
diff changeset
103 registerChecker(copyistLo.statusImage, "Copyist not valid");
jurzua
parents:
diff changeset
104 registerChecker(copyPlaceLo.statusImage, "Copyist not valid");
jurzua
parents:
diff changeset
105 registerChecker(patronageLo.statusImage,"Patron not valid");
jurzua
parents:
diff changeset
106
jurzua
parents:
diff changeset
107 }
jurzua
parents:
diff changeset
108
jurzua
parents:
diff changeset
109 @Override
jurzua
parents:
diff changeset
110 public void reset(){
jurzua
parents:
diff changeset
111 super.reset();
jurzua
parents:
diff changeset
112 this.entity = new Entity(Node.TYPE_ABOX, WITNESS, false);
jurzua
parents:
diff changeset
113 this.studiedByList = new EntityList(PERSON, "name_translit", "Studied by");
jurzua
parents:
diff changeset
114 this.possibleExamplerOfList = new EntityList(TEXT, "full_title_translit", "Possible titles");
jurzua
parents:
diff changeset
115
jurzua
parents:
diff changeset
116 this.codicesOverviewRendered = false;
jurzua
parents:
diff changeset
117 this.codicesAll = new ArrayList<CodexForList>();
jurzua
parents:
diff changeset
118
jurzua
parents:
diff changeset
119 this.titles_list = new ArrayList<SelectItem>();
jurzua
parents:
diff changeset
120 this.selectedTitleId = null;
jurzua
parents:
diff changeset
121 this.selectTitleRendered = false;
jurzua
parents:
diff changeset
122 this.selectPersonType = "";
jurzua
parents:
diff changeset
123
jurzua
parents:
diff changeset
124 this.persons_list = new ArrayList<SelectItem>();
jurzua
parents:
diff changeset
125 this.selectedPersonId = null;
jurzua
parents:
diff changeset
126 this.selectPersonRendered = false;
jurzua
parents:
diff changeset
127 this.restrictedByRole = true;
jurzua
parents:
diff changeset
128
jurzua
parents:
diff changeset
129 if(titleLo != null)
jurzua
parents:
diff changeset
130 this.titleLo.reset();
jurzua
parents:
diff changeset
131
jurzua
parents:
diff changeset
132 this.valueTitle = "";
jurzua
parents:
diff changeset
133
jurzua
parents:
diff changeset
134 // WITNESS -> has_title_written_as -> ALIAS
jurzua
parents:
diff changeset
135 this.valueTextWritten = "";
jurzua
parents:
diff changeset
136 this.suggestedTitlesWritten = new ArrayList<SelectItem>();
jurzua
parents:
diff changeset
137 this.valueTitleSelectedId = null;
jurzua
parents:
diff changeset
138
jurzua
parents:
diff changeset
139 // WITNESS -> has_author_written_as -> ALIAS
jurzua
parents:
diff changeset
140 this.valueAuthorWritten = "";
jurzua
parents:
diff changeset
141 this.suggestedAuthorsWritten = new ArrayList<SelectItem>();
jurzua
parents:
diff changeset
142 this.valueAuthorSelectedId = null;
jurzua
parents:
diff changeset
143
jurzua
parents:
diff changeset
144 // WITNESS -> is_exemplar_of -> TEXT -> was_created_by -> PERSON
jurzua
parents:
diff changeset
145 if(this.authorLo != null)
jurzua
parents:
diff changeset
146 this.authorLo.reset();
jurzua
parents:
diff changeset
147 this.valueAuthor = "";
jurzua
parents:
diff changeset
148
jurzua
parents:
diff changeset
149 // WITENSS -> was_copied_by -> PERSON
jurzua
parents:
diff changeset
150 if(copyistLo != null)
jurzua
parents:
diff changeset
151 this.copyistLo.reset();
jurzua
parents:
diff changeset
152
jurzua
parents:
diff changeset
153 // WITENSS -> was_copied_in -> PLACE
jurzua
parents:
diff changeset
154 if(this.copyPlaceLo != null)
jurzua
parents:
diff changeset
155 this.copyPlaceLo.reset();
jurzua
parents:
diff changeset
156
jurzua
parents:
diff changeset
157 // WITNESS -> xx -> PERSON
jurzua
parents:
diff changeset
158 if(patronageLo != null)
jurzua
parents:
diff changeset
159 this.patronageLo.reset();
jurzua
parents:
diff changeset
160
jurzua
parents:
diff changeset
161 //this.citiesWithRepositories = null;
jurzua
parents:
diff changeset
162 this.foundCodex = false;
jurzua
parents:
diff changeset
163
jurzua
parents:
diff changeset
164 this.lockValueAuthor = true;
jurzua
parents:
diff changeset
165 this.lockValueTitle = true;
jurzua
parents:
diff changeset
166
jurzua
parents:
diff changeset
167 this.createCodexRendered = false;
jurzua
parents:
diff changeset
168 this.renderShowAllCodexCandidates = false;
jurzua
parents:
diff changeset
169
jurzua
parents:
diff changeset
170 this.newIdentifier = "";
jurzua
parents:
diff changeset
171
jurzua
parents:
diff changeset
172 //this.islamicCalCopyDate = new IslamicCalendar();
jurzua
parents:
diff changeset
173 this.copyDate = new Calendar();
jurzua
parents:
diff changeset
174 }
jurzua
parents:
diff changeset
175
jurzua
parents:
diff changeset
176 @Override
jurzua
parents:
diff changeset
177 public String save() {
jurzua
parents:
diff changeset
178 super.save();
jurzua
parents:
diff changeset
179 try {
jurzua
parents:
diff changeset
180
jurzua
parents:
diff changeset
181 User user = getSessionUser();
jurzua
parents:
diff changeset
182
jurzua
parents:
diff changeset
183 if(!isCodexIdentifierSet(user.getEmail())){
jurzua
parents:
diff changeset
184 return "SAVE_ERROR";
jurzua
parents:
diff changeset
185 }
jurzua
parents:
diff changeset
186
jurzua
parents:
diff changeset
187 if(!isWitnessConsistentBeforeSave()){
jurzua
parents:
diff changeset
188 return "SAVE_ERROR";
jurzua
parents:
diff changeset
189 }
jurzua
parents:
diff changeset
190
jurzua
parents:
diff changeset
191 //checking if some LO is not OK.
jurzua
parents:
diff changeset
192 CheckResults cr = getCheckResults();
jurzua
parents:
diff changeset
193 if (cr.hasErrors){
jurzua
parents:
diff changeset
194 getSessionBean().setErrorMessages(cr);
jurzua
parents:
diff changeset
195 getSessionBean().setDisplayError(true);
jurzua
parents:
diff changeset
196 this.setSelectedSaveAsNew(false);
jurzua
parents:
diff changeset
197 return "SAVE_ERROR";
jurzua
parents:
diff changeset
198 }
jurzua
parents:
diff changeset
199
jurzua
parents:
diff changeset
200 getAttributes().put("creation_date", this.copyDate.toJSONString());
jurzua
parents:
diff changeset
201
jurzua
parents:
diff changeset
202 this.entity = this.updateEntityAttributes(this.entity);
jurzua
parents:
diff changeset
203
jurzua
parents:
diff changeset
204 // WITNESS -> is_part_of -> CODEX
jurzua
parents:
diff changeset
205 this.entity.replaceSourceRelation(getCodexLo().entity, CODEX, is_part_of);
jurzua
parents:
diff changeset
206
jurzua
parents:
diff changeset
207 // WITNESS -> is_exemplar_of -> TEXT -> was_created_by -> PERSON
jurzua
parents:
diff changeset
208 //replaceSourceRelation(this.entity, this.author, PERSON, was_created_by);
jurzua
parents:
diff changeset
209
jurzua
parents:
diff changeset
210 // WITENSS -> was_copied_by -> PERSON
jurzua
parents:
diff changeset
211 this.entity.replaceSourceRelation(this.copyistLo.entity, PERSON, rel_was_copied_by);
jurzua
parents:
diff changeset
212
111
22a18bfc66b0 new completion that uses ALIASes: AbstractListenerObject. was_copied_in in WITNESS form can use PLACE aliases now. some cleanup.
casties
parents: 1
diff changeset
213 // WITNESS -> was_copied_in -> PLACE
112
59f26a5ef2b3 AliasListenerObject adds aliases to ListenerObject. Change all forms to enable ALIAS for (historical) PLACE fields. Remove REPOSITORY from event forms.
casties
parents: 111
diff changeset
214 replaceAliasSourceRelation(this.entity, this.copyPlaceLo, PLACE, "was_copied_in", "was_copied_in_as");
1
jurzua
parents:
diff changeset
215
jurzua
parents:
diff changeset
216 //REFERENCE -> is_reference_of -> WITNESS
jurzua
parents:
diff changeset
217 //this.entity = this.prepareReferencesToSave(this.entity);
jurzua
parents:
diff changeset
218 this.prepareEndNoteRefs2Save();
jurzua
parents:
diff changeset
219
jurzua
parents:
diff changeset
220 //WITNESS -> was studied by manyToMany -> PERSON
jurzua
parents:
diff changeset
221 this.entity.removeAllSourceRelationsByName(rel_was_studied_by);
jurzua
parents:
diff changeset
222 for(Entity target : this.studiedByList.getEntities()){
jurzua
parents:
diff changeset
223 Entity target0 = getWrapper().getEntityByIdWithContent(target.getId());
112
59f26a5ef2b3 AliasListenerObject adds aliases to ListenerObject. Change all forms to enable ALIAS for (historical) PLACE fields. Remove REPOSITORY from event forms.
casties
parents: 111
diff changeset
224 new Relation(this.entity, target0, rel_was_studied_by);
1
jurzua
parents:
diff changeset
225 }
jurzua
parents:
diff changeset
226
jurzua
parents:
diff changeset
227 // WITNESS -> had_patron -> PERSON
jurzua
parents:
diff changeset
228 this.entity.replaceSourceRelation(this.patronageLo.entity, PERSON, rel_had_patron);
jurzua
parents:
diff changeset
229
jurzua
parents:
diff changeset
230
jurzua
parents:
diff changeset
231 // WITNESS -> is_exemplar_of -> TEXT
jurzua
parents:
diff changeset
232 this.entity.replaceSourceRelation(this.titleLo.entity, TEXT, is_exemplar_of);
jurzua
parents:
diff changeset
233
jurzua
parents:
diff changeset
234 this.entity.removeAllSourceRelationsByName(is_possible_exemplar_of);
jurzua
parents:
diff changeset
235 this.entity.removeAllSourceRelations(rel_has_title_written_as, ALIAS);
jurzua
parents:
diff changeset
236 this.entity.removeAllSourceRelations(rel_has_author_written_as, ALIAS);
jurzua
parents:
diff changeset
237
jurzua
parents:
diff changeset
238 if(textUnknown){
jurzua
parents:
diff changeset
239 for(Entity target : this.possibleExamplerOfList.getEntities()){
jurzua
parents:
diff changeset
240 Entity target0 = getWrapper().getEntityByIdWithContent(target.getId());
112
59f26a5ef2b3 AliasListenerObject adds aliases to ListenerObject. Change all forms to enable ALIAS for (historical) PLACE fields. Remove REPOSITORY from event forms.
casties
parents: 111
diff changeset
241 new Relation(this.entity, target0, is_possible_exemplar_of);
1
jurzua
parents:
diff changeset
242 }
jurzua
parents:
diff changeset
243 }else{
jurzua
parents:
diff changeset
244 this.saveIndirectedAliases();
jurzua
parents:
diff changeset
245 }
jurzua
parents:
diff changeset
246
jurzua
parents:
diff changeset
247 // WITNESS -> is_part_of_codex
jurzua
parents:
diff changeset
248 if(this.isSelectedSaveAsNew()){
jurzua
parents:
diff changeset
249 this.entity = getWrapper().saveEntityAsNew(this.entity, user.getEmail());
jurzua
parents:
diff changeset
250 }else{
jurzua
parents:
diff changeset
251 this.entity = getWrapper().saveEntity(this.entity, user.getEmail());
jurzua
parents:
diff changeset
252 }
jurzua
parents:
diff changeset
253 this.setEntity(this.entity);
jurzua
parents:
diff changeset
254
jurzua
parents:
diff changeset
255 logger.info("Entity saved - Time = " + (System.currentTimeMillis() - start) + ", " + entity);
jurzua
parents:
diff changeset
256 this.printSuccessSavingEntity();
jurzua
parents:
diff changeset
257
jurzua
parents:
diff changeset
258 this.setSelectedSaveAsNew(false);
jurzua
parents:
diff changeset
259 } catch (Exception e) {
jurzua
parents:
diff changeset
260 logger.error(e.getMessage(), e);
jurzua
parents:
diff changeset
261 e.printStackTrace();
jurzua
parents:
diff changeset
262 this.printInternalError(e);
jurzua
parents:
diff changeset
263 }
jurzua
parents:
diff changeset
264
jurzua
parents:
diff changeset
265 saveEnd();
jurzua
parents:
diff changeset
266 return PAGE_EDITOR;
jurzua
parents:
diff changeset
267 }
jurzua
parents:
diff changeset
268
jurzua
parents:
diff changeset
269 private void saveIndirectedAliases() throws Exception{
jurzua
parents:
diff changeset
270
jurzua
parents:
diff changeset
271 User user = getSessionUser();
jurzua
parents:
diff changeset
272
jurzua
parents:
diff changeset
273 //WITNESS -> has_title_written_as -> ALIAS
jurzua
parents:
diff changeset
274 if(StringUtils.isNotEmpty(valueTextWritten)){
jurzua
parents:
diff changeset
275 Entity alias = null;
jurzua
parents:
diff changeset
276 if(this.suggestedTitlesWritten != null){
jurzua
parents:
diff changeset
277 for(SelectItem item : this.suggestedTitlesWritten){
jurzua
parents:
diff changeset
278 Long id = (Long)item.getValue();
jurzua
parents:
diff changeset
279 if(id != null){
jurzua
parents:
diff changeset
280 Entity candidate = getWrapper().getEntityById(id);
jurzua
parents:
diff changeset
281 if(candidate != null && valueTextWritten.equals(candidate.getOwnValue())){
jurzua
parents:
diff changeset
282 alias = candidate;
jurzua
parents:
diff changeset
283 break;
jurzua
parents:
diff changeset
284 }
jurzua
parents:
diff changeset
285 }
jurzua
parents:
diff changeset
286 }
jurzua
parents:
diff changeset
287 }
jurzua
parents:
diff changeset
288
jurzua
parents:
diff changeset
289 if(alias == null){
jurzua
parents:
diff changeset
290 alias = new Entity(Node.TYPE_ABOX, ALIAS, false);
jurzua
parents:
diff changeset
291 alias.addAttribute(new Attribute(ALIAS, "text", valueTextWritten));
jurzua
parents:
diff changeset
292 alias = getWrapper().saveEntity(alias, user.getEmail());
jurzua
parents:
diff changeset
293 Relation rel = new Relation(alias, this.titleLo.getEntity(), "is_alias_title_of");
jurzua
parents:
diff changeset
294 alias = getWrapper().saveEntity(alias, user.getEmail());
jurzua
parents:
diff changeset
295 }
jurzua
parents:
diff changeset
296 if(alias.isLightweight()){
jurzua
parents:
diff changeset
297 alias = getWrapper().getEntityByIdWithContent(alias.getId());
jurzua
parents:
diff changeset
298 }
jurzua
parents:
diff changeset
299 this.entity.replaceSourceRelation(alias, ALIAS, rel_has_title_written_as);
jurzua
parents:
diff changeset
300 }
jurzua
parents:
diff changeset
301
jurzua
parents:
diff changeset
302
jurzua
parents:
diff changeset
303 if(StringUtils.isNotEmpty(this.valueAuthorWritten)){
jurzua
parents:
diff changeset
304 Entity alias = null;
jurzua
parents:
diff changeset
305 if(suggestedAuthorsWritten != null){
jurzua
parents:
diff changeset
306 for(SelectItem item : this.suggestedAuthorsWritten){
jurzua
parents:
diff changeset
307 Long id = (Long)item.getValue();
jurzua
parents:
diff changeset
308 if(id != null){
jurzua
parents:
diff changeset
309 Entity candidate = getWrapper().getEntityById(id);
jurzua
parents:
diff changeset
310 if(candidate != null && valueAuthorWritten.equals(candidate.getOwnValue())){
jurzua
parents:
diff changeset
311 alias = candidate;
jurzua
parents:
diff changeset
312 break;
jurzua
parents:
diff changeset
313 }
jurzua
parents:
diff changeset
314 }
jurzua
parents:
diff changeset
315 }
jurzua
parents:
diff changeset
316 }
jurzua
parents:
diff changeset
317
jurzua
parents:
diff changeset
318 if(alias == null){
jurzua
parents:
diff changeset
319 alias = new Entity(Node.TYPE_ABOX, ALIAS, false);
jurzua
parents:
diff changeset
320 alias.addAttribute(new Attribute(ALIAS, "text", valueAuthorWritten));
jurzua
parents:
diff changeset
321 alias = getWrapper().saveEntity(alias, user.getEmail());
jurzua
parents:
diff changeset
322 Relation rel = new Relation(alias, this.authorLo.getEntity(), "is_alias_name_of");
jurzua
parents:
diff changeset
323 alias = getWrapper().saveEntity(alias, user.getEmail());
jurzua
parents:
diff changeset
324 }
jurzua
parents:
diff changeset
325 if(alias.isLightweight()){
jurzua
parents:
diff changeset
326 alias = getWrapper().getEntityByIdWithContent(alias.getId());
jurzua
parents:
diff changeset
327 }
jurzua
parents:
diff changeset
328 this.entity.replaceSourceRelation(alias, ALIAS, rel_has_author_written_as);
jurzua
parents:
diff changeset
329 }
jurzua
parents:
diff changeset
330 }
jurzua
parents:
diff changeset
331
jurzua
parents:
diff changeset
332 public String saveAsNewEntity() {
jurzua
parents:
diff changeset
333 this.setSelectedSaveAsNew(true);
jurzua
parents:
diff changeset
334 return save();
jurzua
parents:
diff changeset
335 }
jurzua
parents:
diff changeset
336
jurzua
parents:
diff changeset
337 /* rich
jurzua
parents:
diff changeset
338 public void patronageChangeListener(ValueChangeEvent event) {
jurzua
parents:
diff changeset
339 //patronageLo = changeListener(event, patronageLo, PERSON, "name");
jurzua
parents:
diff changeset
340 patronageLo = changeValuePersonByRole(event, patronageLo, "Patron");
jurzua
parents:
diff changeset
341
jurzua
parents:
diff changeset
342 }
jurzua
parents:
diff changeset
343
jurzua
parents:
diff changeset
344 public void copyistChangeListener(ValueChangeEvent event) {
jurzua
parents:
diff changeset
345 copyistLo = changeValuePersonByRole(event, copyistLo, "Copyist");
jurzua
parents:
diff changeset
346 }
jurzua
parents:
diff changeset
347
jurzua
parents:
diff changeset
348 public void copyPlacesChangeListener(ValueChangeEvent event) {
jurzua
parents:
diff changeset
349 copyPlaceLo = changeListener(event, copyPlaceLo,"PLACE", "name");
jurzua
parents:
diff changeset
350 }*/
jurzua
parents:
diff changeset
351
jurzua
parents:
diff changeset
352 public void updateTitle(){
jurzua
parents:
diff changeset
353
jurzua
parents:
diff changeset
354 if(titleLo.entity != null && titleLo.entity.isPersistent()){
jurzua
parents:
diff changeset
355
jurzua
parents:
diff changeset
356 this.textUnknown = UNKNOWN.equals(titleLo.entity.getOwnValue());
jurzua
parents:
diff changeset
357
jurzua
parents:
diff changeset
358 List<Entity> targets = getWrapper().getTargetsForSourceRelation(titleLo.getEntity(), rel_was_created_by, PERSON, 1);
jurzua
parents:
diff changeset
359 if(targets.size() > 0){
111
22a18bfc66b0 new completion that uses ALIASes: AbstractListenerObject. was_copied_in in WITNESS form can use PLACE aliases now. some cleanup.
casties
parents: 1
diff changeset
360 this.authorLo.setEntityAndAttribute(targets.get(0));
1
jurzua
parents:
diff changeset
361
jurzua
parents:
diff changeset
362 }else{
jurzua
parents:
diff changeset
363 this.authorLo.reset();
jurzua
parents:
diff changeset
364 /* rich
jurzua
parents:
diff changeset
365 this.authorLo.setEntityAndAttribute(null, name_translit);
jurzua
parents:
diff changeset
366 this.authorLo.statusImage.setStatus(StatusImage.STATUS_UNSET);
jurzua
parents:
diff changeset
367 */
jurzua
parents:
diff changeset
368
jurzua
parents:
diff changeset
369 }
jurzua
parents:
diff changeset
370 this.suggestedAuthorsWritten = getAuthorAliases(authorLo.entity);
jurzua
parents:
diff changeset
371 this.suggestedTitlesWritten = getTitleAliases(titleLo.entity);
jurzua
parents:
diff changeset
372 }
jurzua
parents:
diff changeset
373 }
jurzua
parents:
diff changeset
374
jurzua
parents:
diff changeset
375 public void updateAuthor(){
jurzua
parents:
diff changeset
376
jurzua
parents:
diff changeset
377 if(authorLo.getEntity() != null && authorLo.getEntity().isPersistent()){
jurzua
parents:
diff changeset
378
jurzua
parents:
diff changeset
379 this.titleLo.reset();
jurzua
parents:
diff changeset
380
jurzua
parents:
diff changeset
381 List <Entity> sources = getWrapper().getSourcesForTargetRelation(authorLo.getEntity(), rel_was_created_by, TEXT, -1);
jurzua
parents:
diff changeset
382
jurzua
parents:
diff changeset
383 ArrayList<SelectItem> options = new ArrayList<SelectItem>();
jurzua
parents:
diff changeset
384 for (Entity title : sources){
jurzua
parents:
diff changeset
385 options.add(new SelectItem(title.getId(), title.getOwnValue() + " [" + title.getId() + "]"));
jurzua
parents:
diff changeset
386 }
jurzua
parents:
diff changeset
387
jurzua
parents:
diff changeset
388 titles_list = options;
jurzua
parents:
diff changeset
389 this.suggestedAuthorsWritten = getAuthorAliases(authorLo.entity);
jurzua
parents:
diff changeset
390 this.suggestedTitlesWritten = getTitleAliases(null);
jurzua
parents:
diff changeset
391 }
jurzua
parents:
diff changeset
392 }
jurzua
parents:
diff changeset
393
jurzua
parents:
diff changeset
394
jurzua
parents:
diff changeset
395 private List<SelectItem> getTitleAliases(Entity title) {
jurzua
parents:
diff changeset
396 List<SelectItem> items = new ArrayList<SelectItem>();
jurzua
parents:
diff changeset
397 this.valueTextWritten = null;
jurzua
parents:
diff changeset
398 if(title != null && title.isPersistent()){
jurzua
parents:
diff changeset
399 items.add(new SelectItem(new Long(-1), "-- choose --"));
jurzua
parents:
diff changeset
400 List<Entity> aliasTitleList = getWrapper().getSourcesForTargetRelation(title, is_alias_title_of, ALIAS, -1);
jurzua
parents:
diff changeset
401 for(Entity alias : aliasTitleList){
jurzua
parents:
diff changeset
402 items.add(new SelectItem(alias.getId(), alias.getOwnValue()));
jurzua
parents:
diff changeset
403 }
jurzua
parents:
diff changeset
404
jurzua
parents:
diff changeset
405 List<Entity> primeAliasTitleList = getWrapper().getSourcesForTargetRelation(title, is_prime_alias_title_of, ALIAS, -1);
jurzua
parents:
diff changeset
406 for(Entity alias : primeAliasTitleList){
jurzua
parents:
diff changeset
407 items.add(new SelectItem(alias.getId(), alias.getOwnValue()));
jurzua
parents:
diff changeset
408 }
jurzua
parents:
diff changeset
409 }
jurzua
parents:
diff changeset
410
jurzua
parents:
diff changeset
411 return items;
jurzua
parents:
diff changeset
412 }
jurzua
parents:
diff changeset
413 private List<SelectItem> getAuthorAliases(Entity author) {
jurzua
parents:
diff changeset
414 List<SelectItem> items = new ArrayList<SelectItem>();
jurzua
parents:
diff changeset
415 this.valueAuthorWritten = null;
jurzua
parents:
diff changeset
416 if(author != null && author.isPersistent()){
jurzua
parents:
diff changeset
417 //items.add(new SelectItem(null, "-- choose --"));
jurzua
parents:
diff changeset
418 List<Entity> aliasAuthorList = getWrapper().getSourcesForTargetRelation(author, is_alias_name_of, ALIAS, -1);
jurzua
parents:
diff changeset
419 for(Entity alias : aliasAuthorList){
jurzua
parents:
diff changeset
420 items.add(new SelectItem(alias.getId(), alias.getOwnValue()));
jurzua
parents:
diff changeset
421 }
jurzua
parents:
diff changeset
422
jurzua
parents:
diff changeset
423 List<Entity> primeAliasAuthorList = getWrapper().getSourcesForTargetRelation(author, is_prime_alias_name_of, ALIAS, -1);
jurzua
parents:
diff changeset
424 for(Entity alias : primeAliasAuthorList){
jurzua
parents:
diff changeset
425 items.add(new SelectItem(alias.getId(), alias.getOwnValue()));
jurzua
parents:
diff changeset
426 }
jurzua
parents:
diff changeset
427 }
jurzua
parents:
diff changeset
428 return items;
jurzua
parents:
diff changeset
429
jurzua
parents:
diff changeset
430 }
jurzua
parents:
diff changeset
431
jurzua
parents:
diff changeset
432 @Override
jurzua
parents:
diff changeset
433 public void setEntity(Entity witness) {
jurzua
parents:
diff changeset
434 this.reset();
jurzua
parents:
diff changeset
435 this.entity = witness;
jurzua
parents:
diff changeset
436
jurzua
parents:
diff changeset
437 if(this.entity.isPersistent()){
jurzua
parents:
diff changeset
438 if (witness.isLightweight()) {
jurzua
parents:
diff changeset
439 witness = getWrapper().getEntityContent(witness);
jurzua
parents:
diff changeset
440 }
jurzua
parents:
diff changeset
441
jurzua
parents:
diff changeset
442 Attribute attCreationDate = this.entity.getAttributeByName("creation_date");
jurzua
parents:
diff changeset
443 if(attCreationDate != null && StringUtils.isNotEmpty(attCreationDate.getOwnValue())){
jurzua
parents:
diff changeset
444 this.copyDate = new Calendar(attCreationDate.getOwnValue());
jurzua
parents:
diff changeset
445 }else{
jurzua
parents:
diff changeset
446 this.copyDate = new Calendar();
jurzua
parents:
diff changeset
447 }
jurzua
parents:
diff changeset
448
jurzua
parents:
diff changeset
449 // Loading attributes
jurzua
parents:
diff changeset
450 this.loadAttributes(this.entity);
jurzua
parents:
diff changeset
451
jurzua
parents:
diff changeset
452 // Loading the relations
jurzua
parents:
diff changeset
453 // TODO loading target's relations
jurzua
parents:
diff changeset
454 for (Relation rel : witness.getSourceRelations()) {
jurzua
parents:
diff changeset
455 Entity target = null;
jurzua
parents:
diff changeset
456 if (rel.getOwnValue().equals(is_exemplar_of)) {
jurzua
parents:
diff changeset
457 // WITNESS -> is_exemplar_of -> TEXT
jurzua
parents:
diff changeset
458 target = getTargetRelation(rel);
111
22a18bfc66b0 new completion that uses ALIASes: AbstractListenerObject. was_copied_in in WITNESS form can use PLACE aliases now. some cleanup.
casties
parents: 1
diff changeset
459 titleLo.setEntityAndAttribute(target);
1
jurzua
parents:
diff changeset
460 this.updateTitle();
jurzua
parents:
diff changeset
461 } else if (rel.getOwnValue().equals(is_possible_exemplar_of)) {
jurzua
parents:
diff changeset
462 // WITNESS -> is_possible_exemplar_of -> TEXT
jurzua
parents:
diff changeset
463 target = getTargetRelation(rel);
jurzua
parents:
diff changeset
464 possibleExamplerOfList.add(target);
jurzua
parents:
diff changeset
465 } else if (rel.getOwnValue().equals(rel_was_studied_by)) {
jurzua
parents:
diff changeset
466 target = getTargetRelation(rel);
jurzua
parents:
diff changeset
467 studiedByList.add(target);
jurzua
parents:
diff changeset
468 } else if (rel.getOwnValue().equals(rel_was_copied_by)) {
jurzua
parents:
diff changeset
469 // WITENSS -> was_copied_by -> PERSON
jurzua
parents:
diff changeset
470 target = getTargetRelation(rel);
111
22a18bfc66b0 new completion that uses ALIASes: AbstractListenerObject. was_copied_in in WITNESS form can use PLACE aliases now. some cleanup.
casties
parents: 1
diff changeset
471 copyistLo.setEntityAndAttribute(target);
1
jurzua
parents:
diff changeset
472 } else if (rel.getOwnValue().equals("was_copied_in")) {
jurzua
parents:
diff changeset
473 // WITENSS -> was_copied_in -> PLACE
jurzua
parents:
diff changeset
474 target = getTargetRelation(rel);
111
22a18bfc66b0 new completion that uses ALIASes: AbstractListenerObject. was_copied_in in WITNESS form can use PLACE aliases now. some cleanup.
casties
parents: 1
diff changeset
475 // don't use place if there is an alias
112
59f26a5ef2b3 AliasListenerObject adds aliases to ListenerObject. Change all forms to enable ALIAS for (historical) PLACE fields. Remove REPOSITORY from event forms.
casties
parents: 111
diff changeset
476 copyPlaceLo.setEntityAndAttributeIfEmpty(target);
111
22a18bfc66b0 new completion that uses ALIASes: AbstractListenerObject. was_copied_in in WITNESS form can use PLACE aliases now. some cleanup.
casties
parents: 1
diff changeset
477 } else if (rel.getOwnValue().equals("was_copied_in_as")) {
22a18bfc66b0 new completion that uses ALIASes: AbstractListenerObject. was_copied_in in WITNESS form can use PLACE aliases now. some cleanup.
casties
parents: 1
diff changeset
478 // WITENSS -> was_copied_in_as -> ALIAS
22a18bfc66b0 new completion that uses ALIASes: AbstractListenerObject. was_copied_in in WITNESS form can use PLACE aliases now. some cleanup.
casties
parents: 1
diff changeset
479 target = getTargetRelation(rel);
22a18bfc66b0 new completion that uses ALIASes: AbstractListenerObject. was_copied_in in WITNESS form can use PLACE aliases now. some cleanup.
casties
parents: 1
diff changeset
480 copyPlaceLo.setEntityAndAttribute(target);
1
jurzua
parents:
diff changeset
481 } else if (rel.getOwnValue().equals(rel_had_patron)) {
jurzua
parents:
diff changeset
482 // WITNESS -> had_patron -> PERSON
jurzua
parents:
diff changeset
483 target = getTargetRelation(rel);
111
22a18bfc66b0 new completion that uses ALIASes: AbstractListenerObject. was_copied_in in WITNESS form can use PLACE aliases now. some cleanup.
casties
parents: 1
diff changeset
484 patronageLo.setEntityAndAttributeName(target, name_translit);
1
jurzua
parents:
diff changeset
485 } else if (rel.getOwnValue().equals(is_part_of)) {
111
22a18bfc66b0 new completion that uses ALIASes: AbstractListenerObject. was_copied_in in WITNESS form can use PLACE aliases now. some cleanup.
casties
parents: 1
diff changeset
486 // WITNESS -> is_part_of -> CODEX
22a18bfc66b0 new completion that uses ALIASes: AbstractListenerObject. was_copied_in in WITNESS form can use PLACE aliases now. some cleanup.
casties
parents: 1
diff changeset
487 if (rel.getTargetObjectClass().equals(CODEX)) {
1
jurzua
parents:
diff changeset
488 target = getTargetRelation(rel);
jurzua
parents:
diff changeset
489 this.setCodex(target);
jurzua
parents:
diff changeset
490 }
jurzua
parents:
diff changeset
491 } else if (rel.getOwnValue().equals(rel_has_author_written_as)) {
jurzua
parents:
diff changeset
492 //TODO this relation is no in the definitions
jurzua
parents:
diff changeset
493 Entity target2 = getTargetRelation(rel);
jurzua
parents:
diff changeset
494 Attribute alias = getTargetAttribute(target2, "alias");
jurzua
parents:
diff changeset
495 this.valueAuthorWritten = (alias != null) ? alias.getValue() : null;
jurzua
parents:
diff changeset
496
jurzua
parents:
diff changeset
497 } else if (rel.getOwnValue().equals(rel_has_title_written_as)) {
jurzua
parents:
diff changeset
498 //TODO this relation is no in the definitions
jurzua
parents:
diff changeset
499 target = getTargetRelation(rel);
jurzua
parents:
diff changeset
500 //this.textWritten = target;
jurzua
parents:
diff changeset
501 Attribute alias = getTargetAttribute(target, "alias");
jurzua
parents:
diff changeset
502 this.valueTextWritten = (alias != null) ? alias.getValue() : null;
jurzua
parents:
diff changeset
503 }
jurzua
parents:
diff changeset
504 }
jurzua
parents:
diff changeset
505
jurzua
parents:
diff changeset
506 //this.loadReferences(this.entity);
jurzua
parents:
diff changeset
507 this.loadEndNoteRefs();
jurzua
parents:
diff changeset
508
jurzua
parents:
diff changeset
509 this.setCurrentId(this.entity.getId().toString());
jurzua
parents:
diff changeset
510 this.checkConsistencyFromCountryToCodex();
jurzua
parents:
diff changeset
511
jurzua
parents:
diff changeset
512 this.displayUrl = generateDisplayUrl(authorLo.entity, titleLo.entity, witness, getAppBean().getRoot());
jurzua
parents:
diff changeset
513 }
jurzua
parents:
diff changeset
514 }
jurzua
parents:
diff changeset
515
jurzua
parents:
diff changeset
516 /**
jurzua
parents:
diff changeset
517 * Loads the given codex without reset of the variables, which could cause problem in CurrentWitness Class
jurzua
parents:
diff changeset
518 * @param codex
jurzua
parents:
diff changeset
519 */
jurzua
parents:
diff changeset
520 public void setCodex(Entity codex){
111
22a18bfc66b0 new completion that uses ALIASes: AbstractListenerObject. was_copied_in in WITNESS form can use PLACE aliases now. some cleanup.
casties
parents: 1
diff changeset
521 this.getCodexLo().setEntityAndAttributeName(codex, "identifier");
1
jurzua
parents:
diff changeset
522
jurzua
parents:
diff changeset
523 if(this.getCodexLo().entity != null && this.getCodexLo().entity.isPersistent()){
jurzua
parents:
diff changeset
524
jurzua
parents:
diff changeset
525 List<Entity> list = getWrapper().getTargetsForSourceRelation(codex, is_part_of, COLLECTION, 1);
jurzua
parents:
diff changeset
526 if(list.size() > 0){
jurzua
parents:
diff changeset
527 this.setCollection(list.get(0));
jurzua
parents:
diff changeset
528 }
jurzua
parents:
diff changeset
529 }
jurzua
parents:
diff changeset
530 }
jurzua
parents:
diff changeset
531
jurzua
parents:
diff changeset
532 public String getValueAuthor() {
jurzua
parents:
diff changeset
533 return valueAuthor;
jurzua
parents:
diff changeset
534 }
jurzua
parents:
diff changeset
535
jurzua
parents:
diff changeset
536 public void setValueAuthor(String valueAuthor) {
jurzua
parents:
diff changeset
537 if(!lockValueAuthor)
jurzua
parents:
diff changeset
538 this.valueAuthor = valueAuthor;
jurzua
parents:
diff changeset
539 this.lockValueAuthor = false;
jurzua
parents:
diff changeset
540 }
jurzua
parents:
diff changeset
541
jurzua
parents:
diff changeset
542 public void setValueTitle(String valueTitle) {
jurzua
parents:
diff changeset
543 if(!lockValueTitle)
jurzua
parents:
diff changeset
544 this.valueTitle = valueTitle;
jurzua
parents:
diff changeset
545 this.lockValueTitle = false;
jurzua
parents:
diff changeset
546 }
jurzua
parents:
diff changeset
547
jurzua
parents:
diff changeset
548 public String getValueTitle() {
jurzua
parents:
diff changeset
549 return valueTitle;
jurzua
parents:
diff changeset
550 }
jurzua
parents:
diff changeset
551
jurzua
parents:
diff changeset
552 public List<SelectItem> getTitles_list() {
jurzua
parents:
diff changeset
553 return titles_list;
jurzua
parents:
diff changeset
554 }
jurzua
parents:
diff changeset
555
jurzua
parents:
diff changeset
556 public void setTitles_list(List<SelectItem> titlesList) {
jurzua
parents:
diff changeset
557 titles_list = titlesList;
jurzua
parents:
diff changeset
558 }
jurzua
parents:
diff changeset
559
jurzua
parents:
diff changeset
560 public void setFoundCodex(boolean foundCodex) {
jurzua
parents:
diff changeset
561 this.foundCodex = foundCodex;
jurzua
parents:
diff changeset
562 }
jurzua
parents:
diff changeset
563
jurzua
parents:
diff changeset
564 public boolean isFoundCodex() {
jurzua
parents:
diff changeset
565 return foundCodex;
jurzua
parents:
diff changeset
566 }
jurzua
parents:
diff changeset
567
jurzua
parents:
diff changeset
568 public void listenerCreateTitleAlias(ValueChangeEvent event) {
jurzua
parents:
diff changeset
569 this.valueTextWritten = (String)event.getNewValue();
jurzua
parents:
diff changeset
570 }
jurzua
parents:
diff changeset
571
jurzua
parents:
diff changeset
572 public void listenerChooseTitleAlias(ValueChangeEvent event) {
jurzua
parents:
diff changeset
573 if (event.getNewValue() != null) {
jurzua
parents:
diff changeset
574 Long aliasId = (Long) event.getNewValue();
jurzua
parents:
diff changeset
575 if(aliasId != null){
jurzua
parents:
diff changeset
576 if(aliasId.equals(-1)){
jurzua
parents:
diff changeset
577 this.valueTextWritten = null;
jurzua
parents:
diff changeset
578 }else{
jurzua
parents:
diff changeset
579 Entity alias = getWrapper().getEntityByIdWithContent(aliasId);
jurzua
parents:
diff changeset
580 if(alias != null){
jurzua
parents:
diff changeset
581 this.valueTextWritten = alias.getOwnValue();
jurzua
parents:
diff changeset
582 }
jurzua
parents:
diff changeset
583 }
jurzua
parents:
diff changeset
584 }
jurzua
parents:
diff changeset
585 }
jurzua
parents:
diff changeset
586 }
jurzua
parents:
diff changeset
587
jurzua
parents:
diff changeset
588 public void listenerCreateAuthorAlias(ValueChangeEvent event) {
jurzua
parents:
diff changeset
589 this.valueAuthorWritten = (String)event.getNewValue();
jurzua
parents:
diff changeset
590 }
jurzua
parents:
diff changeset
591
jurzua
parents:
diff changeset
592 public void listenerChooseAuthorAlias(ValueChangeEvent event) {
jurzua
parents:
diff changeset
593 if (event.getNewValue() != null) {
jurzua
parents:
diff changeset
594 Long aliasId = (Long) event.getNewValue();
jurzua
parents:
diff changeset
595 if(aliasId != null){
jurzua
parents:
diff changeset
596 if(aliasId.equals(-1)){
jurzua
parents:
diff changeset
597 this.valueAuthorWritten = null;
jurzua
parents:
diff changeset
598 }else{
jurzua
parents:
diff changeset
599 Entity alias = getWrapper().getEntityByIdWithContent(aliasId);
jurzua
parents:
diff changeset
600 if(alias != null){
jurzua
parents:
diff changeset
601 this.valueAuthorWritten = alias.getOwnValue();
jurzua
parents:
diff changeset
602 }
jurzua
parents:
diff changeset
603 }
jurzua
parents:
diff changeset
604 }
jurzua
parents:
diff changeset
605 }
jurzua
parents:
diff changeset
606 }
jurzua
parents:
diff changeset
607
jurzua
parents:
diff changeset
608 @Override
jurzua
parents:
diff changeset
609 public void identifierChangedListener(ValueChangeEvent event) {
jurzua
parents:
diff changeset
610 super.identifierChangedListener(event);
jurzua
parents:
diff changeset
611
jurzua
parents:
diff changeset
612 if (StringUtils.isEmpty(getCodexLo().attribute.getValue())){
jurzua
parents:
diff changeset
613 renderShowAllCodexCandidates = false;
jurzua
parents:
diff changeset
614 this.checkConsistencyFromCountryToCodex();
jurzua
parents:
diff changeset
615 return;
jurzua
parents:
diff changeset
616 }
jurzua
parents:
diff changeset
617
jurzua
parents:
diff changeset
618 List<Entity> entities = getWrapper().getEntitiesByAtt(CODEX, getCodexLo().getAttName(), getCodexLo().attribute.getValue(), 10000, false);
jurzua
parents:
diff changeset
619
jurzua
parents:
diff changeset
620 if (entities.size()>1){
jurzua
parents:
diff changeset
621 if ((getCollectionLo().attribute==null || getCollectionLo().getAttribute().getValue().equals("")) &&
jurzua
parents:
diff changeset
622 (getRepositoryLo().getAttribute()==null || getRepositoryLo().getAttribute().getValue().equals(""))){
jurzua
parents:
diff changeset
623 showAllCodexCandidates(entities);
jurzua
parents:
diff changeset
624 renderShowAllCodexCandidates = true;
jurzua
parents:
diff changeset
625 }
jurzua
parents:
diff changeset
626 else
jurzua
parents:
diff changeset
627 //renderShowAllCodexCandidates = false;
jurzua
parents:
diff changeset
628 renderShowAllCodexCandidates = true; // i want to keep the selection field now
jurzua
parents:
diff changeset
629 }
jurzua
parents:
diff changeset
630 else
jurzua
parents:
diff changeset
631 //renderShowAllCodexCandidates = false;
jurzua
parents:
diff changeset
632 renderShowAllCodexCandidates = true; //i want to keep the selection field now
jurzua
parents:
diff changeset
633 }
jurzua
parents:
diff changeset
634
jurzua
parents:
diff changeset
635 public void searchInCurrentRepository(ActionEvent event) {
jurzua
parents:
diff changeset
636
jurzua
parents:
diff changeset
637 ValueChangeEvent ne = new ValueChangeEvent((UIComponent) event
jurzua
parents:
diff changeset
638 .getComponent(), "", getCollectionLo().getAttribute().getOwnValue());
jurzua
parents:
diff changeset
639 identifierChangedListener(ne);
jurzua
parents:
diff changeset
640
jurzua
parents:
diff changeset
641 }
jurzua
parents:
diff changeset
642
jurzua
parents:
diff changeset
643 /* rich
jurzua
parents:
diff changeset
644 public String insertAuthorAction() {
jurzua
parents:
diff changeset
645 return "insert";
jurzua
parents:
diff changeset
646
jurzua
parents:
diff changeset
647 }*/
jurzua
parents:
diff changeset
648
jurzua
parents:
diff changeset
649 public String showOtherTextsByAuthorAction() {
jurzua
parents:
diff changeset
650 if (authorLo.entity == null || !authorLo.entity.isPersistent())
jurzua
parents:
diff changeset
651 return "";
jurzua
parents:
diff changeset
652
jurzua
parents:
diff changeset
653 List<SelectItem> options = new ArrayList<SelectItem>();
jurzua
parents:
diff changeset
654 List<Entity> titles = getWrapper().getSourcesForTargetRelation(authorLo.entity, "was_created_by", TEXT, -1);
jurzua
parents:
diff changeset
655 for (Entity title: titles){
jurzua
parents:
diff changeset
656 options.add(
jurzua
parents:
diff changeset
657 new SelectItem(title.getId(), title.getOwnValue() + " [" + title.getId() + "]"));
jurzua
parents:
diff changeset
658 }
jurzua
parents:
diff changeset
659 titles_list = options;
jurzua
parents:
diff changeset
660 setSelectTitleRendered(true);
jurzua
parents:
diff changeset
661 return "";
jurzua
parents:
diff changeset
662 }
jurzua
parents:
diff changeset
663
jurzua
parents:
diff changeset
664 /**
jurzua
parents:
diff changeset
665 * Gebe moegliche andere Codices aus. Das ist notwendig, weil nach dem jetzigen Stand der Daten ein Codex
jurzua
parents:
diff changeset
666 * mehrfach im Datensatz auftachen kann.
jurzua
parents:
diff changeset
667 * @return
jurzua
parents:
diff changeset
668 */
jurzua
parents:
diff changeset
669 public String showAllCodexCandidates(List<Entity> entities){
jurzua
parents:
diff changeset
670 if (entities != null) {
jurzua
parents:
diff changeset
671 for (Entity entity : entities) {
jurzua
parents:
diff changeset
672 CodexForList entForList = getCodexData(entity);
jurzua
parents:
diff changeset
673 codicesAll.add(entForList);
jurzua
parents:
diff changeset
674 }
jurzua
parents:
diff changeset
675 }
jurzua
parents:
diff changeset
676 setCodicesOverviewRendered(true);
jurzua
parents:
diff changeset
677 return "";
jurzua
parents:
diff changeset
678 }
jurzua
parents:
diff changeset
679
jurzua
parents:
diff changeset
680 public String showAllTextsAction() {
jurzua
parents:
diff changeset
681 titles_list = new ArrayList<SelectItem>();
jurzua
parents:
diff changeset
682 titles_list = getAppBean().getAllTexts();
jurzua
parents:
diff changeset
683 this.selectTitleRendered = true;
jurzua
parents:
diff changeset
684 return "";
jurzua
parents:
diff changeset
685 }
jurzua
parents:
diff changeset
686
jurzua
parents:
diff changeset
687 public void listenerSelectTitle(ActionEvent event){
jurzua
parents:
diff changeset
688 if(this.selectedTitleId != null){
jurzua
parents:
diff changeset
689 Entity title = getWrapper().getEntityById(this.selectedTitleId);
jurzua
parents:
diff changeset
690 if(title != null){
111
22a18bfc66b0 new completion that uses ALIASes: AbstractListenerObject. was_copied_in in WITNESS form can use PLACE aliases now. some cleanup.
casties
parents: 1
diff changeset
691 this.titleLo.setEntityAndAttribute(title);
1
jurzua
parents:
diff changeset
692 this.updateTitle();
jurzua
parents:
diff changeset
693 setSelectTitleRendered(false);
jurzua
parents:
diff changeset
694 }
jurzua
parents:
diff changeset
695 }
jurzua
parents:
diff changeset
696 }
jurzua
parents:
diff changeset
697
jurzua
parents:
diff changeset
698 public void listenerCancelPpSelectTitle(ActionEvent event){
119
4aa8c425685d less System.out.println.
casties
parents: 112
diff changeset
699 //System.out.println("listenerCancelPpSelectTitle");
1
jurzua
parents:
diff changeset
700 this.selectTitleRendered = false;
jurzua
parents:
diff changeset
701 }
jurzua
parents:
diff changeset
702
jurzua
parents:
diff changeset
703 public void setSelectTitleRendered(Boolean selectTitleRendered) {
jurzua
parents:
diff changeset
704 this.selectTitleRendered = selectTitleRendered;
jurzua
parents:
diff changeset
705 }
jurzua
parents:
diff changeset
706
jurzua
parents:
diff changeset
707 public Boolean getSelectTitleRendered() {
jurzua
parents:
diff changeset
708 return selectTitleRendered;
jurzua
parents:
diff changeset
709 }
jurzua
parents:
diff changeset
710
jurzua
parents:
diff changeset
711 public List<SelectItem> getPersons_list() {
jurzua
parents:
diff changeset
712 return persons_list;
jurzua
parents:
diff changeset
713 }
jurzua
parents:
diff changeset
714
jurzua
parents:
diff changeset
715 public void setPersons_list(List<SelectItem> personsList) {
jurzua
parents:
diff changeset
716 persons_list = personsList;
jurzua
parents:
diff changeset
717 }
jurzua
parents:
diff changeset
718
jurzua
parents:
diff changeset
719 public Boolean getSelectPersonRendered() {
jurzua
parents:
diff changeset
720 return selectPersonRendered;
jurzua
parents:
diff changeset
721 }
jurzua
parents:
diff changeset
722
jurzua
parents:
diff changeset
723 public void setSelectPersonRendered(Boolean selectPersonRendered) {
jurzua
parents:
diff changeset
724 this.selectPersonRendered = selectPersonRendered;
jurzua
parents:
diff changeset
725 }
jurzua
parents:
diff changeset
726
jurzua
parents:
diff changeset
727 public Boolean getRestrictedByRole() {
jurzua
parents:
diff changeset
728 return restrictedByRole;
jurzua
parents:
diff changeset
729 }
jurzua
parents:
diff changeset
730
jurzua
parents:
diff changeset
731 public void setRestrictedByRole(Boolean restrictedByRole) {
jurzua
parents:
diff changeset
732 this.restrictedByRole = restrictedByRole;
jurzua
parents:
diff changeset
733 }
jurzua
parents:
diff changeset
734
jurzua
parents:
diff changeset
735 private void updatePersonList(){
jurzua
parents:
diff changeset
736 if (!this.restrictedByRole)
jurzua
parents:
diff changeset
737 //persons_list = ((AllPersonsBean) this.getBean("AllPersons"))
jurzua
parents:
diff changeset
738 // .getPersonsSelectItems();
jurzua
parents:
diff changeset
739 persons_list = getCache().getAllPersons();
jurzua
parents:
diff changeset
740 else {
jurzua
parents:
diff changeset
741 //persons_list = ((AllPersonsBean) this.getBean("AllPersons"))
jurzua
parents:
diff changeset
742 // .getPersonsSelectItemsByRole(this.selectPersonType);
jurzua
parents:
diff changeset
743 persons_list = getCache().getPersonsByRole(selectPersonType);
jurzua
parents:
diff changeset
744 }
jurzua
parents:
diff changeset
745 }
jurzua
parents:
diff changeset
746
jurzua
parents:
diff changeset
747 public String showAllCopyistsAction() {
jurzua
parents:
diff changeset
748 this.setSelectPersonType("Copyist");
jurzua
parents:
diff changeset
749 this.updatePersonList();
jurzua
parents:
diff changeset
750 this.selectPersonRendered = true;
jurzua
parents:
diff changeset
751 return "";
jurzua
parents:
diff changeset
752 }
jurzua
parents:
diff changeset
753
jurzua
parents:
diff changeset
754 public String showAllPatronsAction() {
jurzua
parents:
diff changeset
755 this.setSelectPersonType("Patron");
jurzua
parents:
diff changeset
756 this.updatePersonList();
jurzua
parents:
diff changeset
757 this.selectPersonRendered = true;
jurzua
parents:
diff changeset
758 return "";
jurzua
parents:
diff changeset
759 }
jurzua
parents:
diff changeset
760
jurzua
parents:
diff changeset
761 public String showAllAuthorsAction() {
jurzua
parents:
diff changeset
762 this.setSelectPersonType("Author");
jurzua
parents:
diff changeset
763 this.updatePersonList();
jurzua
parents:
diff changeset
764 this.selectPersonRendered = true;
jurzua
parents:
diff changeset
765 return "";
jurzua
parents:
diff changeset
766 }
jurzua
parents:
diff changeset
767
jurzua
parents:
diff changeset
768 public void listenerCancelPpSelectAuthor(ActionEvent event){
jurzua
parents:
diff changeset
769 this.selectPersonRendered = false;
jurzua
parents:
diff changeset
770 }
jurzua
parents:
diff changeset
771
jurzua
parents:
diff changeset
772 public void listenerSelectPerson(ActionEvent event){
jurzua
parents:
diff changeset
773 String role = getSelectPersonType();
jurzua
parents:
diff changeset
774 if(this.selectedPersonId != null){
jurzua
parents:
diff changeset
775 Entity selectedPerson = getWrapper().getEntityByIdWithContent(selectedPersonId);
jurzua
parents:
diff changeset
776 if(selectedPerson != null){
jurzua
parents:
diff changeset
777 if (role.equals("Copyist")) {
111
22a18bfc66b0 new completion that uses ALIASes: AbstractListenerObject. was_copied_in in WITNESS form can use PLACE aliases now. some cleanup.
casties
parents: 1
diff changeset
778 copyistLo.setEntityAndAttribute(selectedPerson);
1
jurzua
parents:
diff changeset
779 } else if (role.equals("Patron")) {
111
22a18bfc66b0 new completion that uses ALIASes: AbstractListenerObject. was_copied_in in WITNESS form can use PLACE aliases now. some cleanup.
casties
parents: 1
diff changeset
780 patronageLo.setEntityAndAttribute(selectedPerson);
1
jurzua
parents:
diff changeset
781 } else if (role.equals("Author")) {
111
22a18bfc66b0 new completion that uses ALIASes: AbstractListenerObject. was_copied_in in WITNESS form can use PLACE aliases now. some cleanup.
casties
parents: 1
diff changeset
782 authorLo.setEntityAndAttribute(selectedPerson);
1
jurzua
parents:
diff changeset
783 this.updateAuthor();
jurzua
parents:
diff changeset
784 }
jurzua
parents:
diff changeset
785 setSelectPersonRendered(false);
jurzua
parents:
diff changeset
786 }
jurzua
parents:
diff changeset
787 }
jurzua
parents:
diff changeset
788 }
jurzua
parents:
diff changeset
789
jurzua
parents:
diff changeset
790 public void setSelectPersonType(String selectPersonType) {
jurzua
parents:
diff changeset
791 this.selectPersonType = selectPersonType;
jurzua
parents:
diff changeset
792 }
jurzua
parents:
diff changeset
793
jurzua
parents:
diff changeset
794 public String getSelectPersonType() {
jurzua
parents:
diff changeset
795 return selectPersonType;
jurzua
parents:
diff changeset
796 }
jurzua
parents:
diff changeset
797
jurzua
parents:
diff changeset
798 public void restrictedByRoleChange(ValueChangeEvent event) {
jurzua
parents:
diff changeset
799 if (event.getNewValue().equals(event.getOldValue()))
jurzua
parents:
diff changeset
800 return;
jurzua
parents:
diff changeset
801 try{
jurzua
parents:
diff changeset
802 Boolean val = (Boolean) event.getNewValue();
jurzua
parents:
diff changeset
803 this.setRestrictedByRole(val);
jurzua
parents:
diff changeset
804 this.updatePersonList();
jurzua
parents:
diff changeset
805 }catch(Exception ex){
jurzua
parents:
diff changeset
806 ex.printStackTrace();
jurzua
parents:
diff changeset
807 }
jurzua
parents:
diff changeset
808 }
jurzua
parents:
diff changeset
809
jurzua
parents:
diff changeset
810 public void listenerConvertCreationDate(ActionEvent event) {
jurzua
parents:
diff changeset
811 /*
jurzua
parents:
diff changeset
812 try{
jurzua
parents:
diff changeset
813
jurzua
parents:
diff changeset
814 String newDate = this.islamicCalCopyDate.islamic2Gregorian();
jurzua
parents:
diff changeset
815 String newJulianDate = this.islamicCalCopyDate.islamic2Julian();
jurzua
parents:
diff changeset
816
jurzua
parents:
diff changeset
817 getAttributes().put("creation_date_ce", newDate);
jurzua
parents:
diff changeset
818 getAttributes().put("creation_date_julian", newJulianDate);
jurzua
parents:
diff changeset
819
jurzua
parents:
diff changeset
820 }catch(Exception e){
jurzua
parents:
diff changeset
821 e.printStackTrace();
jurzua
parents:
diff changeset
822 addGeneralMsg("Error converting date!");
jurzua
parents:
diff changeset
823 addGeneralMsg("The islamic calendar begins on Friday, July 16th, 622 C.E. in the Julian calendar.");
jurzua
parents:
diff changeset
824 addGeneralMsg("The date must be equals or bigger than yawm al-jum'a, 1.Muharram.1 (5.1.1.1)");
jurzua
parents:
diff changeset
825 }
jurzua
parents:
diff changeset
826 */
jurzua
parents:
diff changeset
827 }
jurzua
parents:
diff changeset
828
jurzua
parents:
diff changeset
829
jurzua
parents:
diff changeset
830 public void selectCodexFromOverviewAction(ActionEvent ae){
jurzua
parents:
diff changeset
831 /* rich
jurzua
parents:
diff changeset
832
jurzua
parents:
diff changeset
833 HtmlCommandButton cp = (HtmlCommandButton)ae.getComponent();
jurzua
parents:
diff changeset
834 Long id = (Long) cp.getValue();
jurzua
parents:
diff changeset
835 //juc Entity ent = getOntology().getEntityById(id);
jurzua
parents:
diff changeset
836 Entity ent = getWrapper().getEntityById(id);
jurzua
parents:
diff changeset
837 this.getCodexLo().setEntityAndAttribute(ent, "identifier");
jurzua
parents:
diff changeset
838 //changeValueAttCodex(this.getCodexLo().getAttribute().getOwnValue());
jurzua
parents:
diff changeset
839 setCodicesOverviewRendered(false);
jurzua
parents:
diff changeset
840
jurzua
parents:
diff changeset
841 */
jurzua
parents:
diff changeset
842
jurzua
parents:
diff changeset
843
jurzua
parents:
diff changeset
844 }
jurzua
parents:
diff changeset
845
jurzua
parents:
diff changeset
846 public String closeCodicesOverview(){
jurzua
parents:
diff changeset
847 setCodicesOverviewRendered(false);
jurzua
parents:
diff changeset
848 return "CLOSE";
jurzua
parents:
diff changeset
849
jurzua
parents:
diff changeset
850 }
jurzua
parents:
diff changeset
851
jurzua
parents:
diff changeset
852
jurzua
parents:
diff changeset
853 private boolean isCodexIdentifierSet(String user){
jurzua
parents:
diff changeset
854 try {
jurzua
parents:
diff changeset
855
jurzua
parents:
diff changeset
856 if(StatusImage.STATUS_OK.equals(getCodexLo().getStatus())){
jurzua
parents:
diff changeset
857 return true;
jurzua
parents:
diff changeset
858 }
jurzua
parents:
diff changeset
859
jurzua
parents:
diff changeset
860 String identifier = getNewIdentifier();
jurzua
parents:
diff changeset
861
jurzua
parents:
diff changeset
862 if(!StatusImage.STATUS_OK.equals(getCollectionLo().getStatus()) ||
jurzua
parents:
diff changeset
863 StringUtils.isEmpty(identifier)){
jurzua
parents:
diff changeset
864 //we can not save the witness
jurzua
parents:
diff changeset
865 if(!StatusImage.STATUS_OK.equals(getCollectionLo().getStatus())){
jurzua
parents:
diff changeset
866 addErrorMsg("The Collection is not valid.");
jurzua
parents:
diff changeset
867 }
jurzua
parents:
diff changeset
868 if(StringUtils.isEmpty(identifier)){
jurzua
parents:
diff changeset
869 addErrorMsg("The Codex does not have an valid identifier.");
jurzua
parents:
diff changeset
870 }
jurzua
parents:
diff changeset
871 addErrorMsg("The Witness could not be saved.");
jurzua
parents:
diff changeset
872 return false;
jurzua
parents:
diff changeset
873 }else {
jurzua
parents:
diff changeset
874 //two possibilities:
jurzua
parents:
diff changeset
875 //1. there exist a codex with the same id
jurzua
parents:
diff changeset
876 //2. there is no a codex with this id, it should be saved.
jurzua
parents:
diff changeset
877
jurzua
parents:
diff changeset
878 if(StringUtils.isNotEmpty(identifier)){
jurzua
parents:
diff changeset
879 List<Entity> codexListOfCollection =
jurzua
parents:
diff changeset
880 getWrapper().getSourcesForTargetRelation(getCollectionLo().getEntity(),
jurzua
parents:
diff changeset
881 is_part_of, CODEX, -1);
jurzua
parents:
diff changeset
882 for(Entity possibleCodex : codexListOfCollection){
jurzua
parents:
diff changeset
883 //juc Attribute att = getWrapper().getAttributeByName(possibleCodex, "identifier");
jurzua
parents:
diff changeset
884 Attribute att = getWrapper().getAttributeByName(possibleCodex.getId(), "identifier");
jurzua
parents:
diff changeset
885 if(att != null && identifier.equals(att.getValue())){
111
22a18bfc66b0 new completion that uses ALIASes: AbstractListenerObject. was_copied_in in WITNESS form can use PLACE aliases now. some cleanup.
casties
parents: 1
diff changeset
886 getCodexLo().setEntityAndAttributeName(possibleCodex, "identifier");
1
jurzua
parents:
diff changeset
887 return true;
jurzua
parents:
diff changeset
888 }
jurzua
parents:
diff changeset
889 }
jurzua
parents:
diff changeset
890 }
jurzua
parents:
diff changeset
891 }
jurzua
parents:
diff changeset
892
jurzua
parents:
diff changeset
893 //if the Collection Status == OK && the Codex.identifier != null
jurzua
parents:
diff changeset
894 Entity newCodex = new Entity(Node.TYPE_ABOX, CODEX, false);
jurzua
parents:
diff changeset
895 newCodex.addAttribute(new Attribute("identifier", TEXT, identifier));
jurzua
parents:
diff changeset
896 getWrapper().saveEntity(newCodex, user);
jurzua
parents:
diff changeset
897 Relation isPartOf = new Relation(newCodex, getCollectionLo().getEntity(), is_part_of);
jurzua
parents:
diff changeset
898 getWrapper().saveRelationAsNode(isPartOf, user);
111
22a18bfc66b0 new completion that uses ALIASes: AbstractListenerObject. was_copied_in in WITNESS form can use PLACE aliases now. some cleanup.
casties
parents: 1
diff changeset
899 getCodexLo().setEntityAndAttributeName(newCodex, "identifier");
1
jurzua
parents:
diff changeset
900
jurzua
parents:
diff changeset
901 } catch (Exception e) {
jurzua
parents:
diff changeset
902 logger.error(e.getMessage(), e);
jurzua
parents:
diff changeset
903 return false;
jurzua
parents:
diff changeset
904 }
jurzua
parents:
diff changeset
905 return true;
jurzua
parents:
diff changeset
906 }
jurzua
parents:
diff changeset
907
jurzua
parents:
diff changeset
908 public boolean isCreateCodexRendered() {
jurzua
parents:
diff changeset
909 return createCodexRendered;
jurzua
parents:
diff changeset
910 }
jurzua
parents:
diff changeset
911
jurzua
parents:
diff changeset
912 public void setCreateCodexRendered(boolean createCodexRendered) {
jurzua
parents:
diff changeset
913 this.createCodexRendered = createCodexRendered;
jurzua
parents:
diff changeset
914 }
jurzua
parents:
diff changeset
915
jurzua
parents:
diff changeset
916 @Override
jurzua
parents:
diff changeset
917 public String loadCloneEntity(){
jurzua
parents:
diff changeset
918 this.setCodex(getCloneEntity());
jurzua
parents:
diff changeset
919 this.setRenderUnityCheckerDialog(false);
jurzua
parents:
diff changeset
920 this.checkConsistencyFromCountryToCodex();
jurzua
parents:
diff changeset
921 return PAGE_EDITOR;
jurzua
parents:
diff changeset
922 }
jurzua
parents:
diff changeset
923
jurzua
parents:
diff changeset
924 public List<CodexForList> getCodicesAll() {
jurzua
parents:
diff changeset
925 return codicesAll;
jurzua
parents:
diff changeset
926 }
jurzua
parents:
diff changeset
927
jurzua
parents:
diff changeset
928 public void setCodicesAll(List<CodexForList> codicesAll) {
jurzua
parents:
diff changeset
929 this.codicesAll = codicesAll;
jurzua
parents:
diff changeset
930 }
jurzua
parents:
diff changeset
931
jurzua
parents:
diff changeset
932 public void setCodicesOverviewRendered(Boolean codicesOverviewRendered) {
jurzua
parents:
diff changeset
933 this.codicesOverviewRendered = codicesOverviewRendered;
jurzua
parents:
diff changeset
934 }
jurzua
parents:
diff changeset
935
jurzua
parents:
diff changeset
936 public Boolean getCodicesOverviewRendered() {
jurzua
parents:
diff changeset
937 return codicesOverviewRendered;
jurzua
parents:
diff changeset
938 }
jurzua
parents:
diff changeset
939
jurzua
parents:
diff changeset
940 /**
jurzua
parents:
diff changeset
941 * Teste ob es Codices mit gleichem identifier gibt!
jurzua
parents:
diff changeset
942 * @return
jurzua
parents:
diff changeset
943 */
jurzua
parents:
diff changeset
944 public Boolean getRenderShowAllCodexCandidates(){
jurzua
parents:
diff changeset
945 return renderShowAllCodexCandidates;
jurzua
parents:
diff changeset
946 }
jurzua
parents:
diff changeset
947
jurzua
parents:
diff changeset
948
jurzua
parents:
diff changeset
949
jurzua
parents:
diff changeset
950 public List<SelectItem> getSuggestedTitlesWritten() {
jurzua
parents:
diff changeset
951 return suggestedTitlesWritten;
jurzua
parents:
diff changeset
952 }
jurzua
parents:
diff changeset
953
jurzua
parents:
diff changeset
954 public void setSuggestedTitlesWritten(List<SelectItem> suggestedTitlesWritten) {
jurzua
parents:
diff changeset
955 this.suggestedTitlesWritten = suggestedTitlesWritten;
jurzua
parents:
diff changeset
956 }
jurzua
parents:
diff changeset
957
jurzua
parents:
diff changeset
958 public List<SelectItem> getSuggestedAuthorsWritten() {
jurzua
parents:
diff changeset
959 return suggestedAuthorsWritten;
jurzua
parents:
diff changeset
960 }
jurzua
parents:
diff changeset
961
jurzua
parents:
diff changeset
962 public void setSuggestedAuthorsWritten(List<SelectItem> suggestedAuthorsWritten) {
jurzua
parents:
diff changeset
963 this.suggestedAuthorsWritten = suggestedAuthorsWritten;
jurzua
parents:
diff changeset
964 }
jurzua
parents:
diff changeset
965
jurzua
parents:
diff changeset
966 public void codexCodexChangeListener(ValueChangeEvent event) {
jurzua
parents:
diff changeset
967 if (event.getNewValue() == null) {
jurzua
parents:
diff changeset
968 return;
jurzua
parents:
diff changeset
969 }
jurzua
parents:
diff changeset
970 if (event.getNewValue().equals(event.getOldValue())) {
jurzua
parents:
diff changeset
971 return;
jurzua
parents:
diff changeset
972 }
jurzua
parents:
diff changeset
973 this.getCodexLo().statusImage.setStatus(StatusImage.STATUS_UNSET);
jurzua
parents:
diff changeset
974 this.getCodexLo().attribute.setValue(event.getNewValue().toString());
jurzua
parents:
diff changeset
975 }
jurzua
parents:
diff changeset
976 public Long getValueTitleSelectedId() {
jurzua
parents:
diff changeset
977 return valueTitleSelectedId;
jurzua
parents:
diff changeset
978 }
jurzua
parents:
diff changeset
979
jurzua
parents:
diff changeset
980 public void setValueTitleSelectedId(Long valueTitleSelectedId) {
jurzua
parents:
diff changeset
981 this.valueTitleSelectedId = valueTitleSelectedId;
jurzua
parents:
diff changeset
982 }
jurzua
parents:
diff changeset
983
jurzua
parents:
diff changeset
984 public ListenerObject getCopyistLo() {
jurzua
parents:
diff changeset
985 return copyistLo;
jurzua
parents:
diff changeset
986 }
jurzua
parents:
diff changeset
987
jurzua
parents:
diff changeset
988 public void setCopyistLo(ListenerObject copyistLo) {
jurzua
parents:
diff changeset
989 this.copyistLo = copyistLo;
jurzua
parents:
diff changeset
990 }
jurzua
parents:
diff changeset
991
jurzua
parents:
diff changeset
992 public ListenerObject getCopyPlaceLo() {
jurzua
parents:
diff changeset
993 return copyPlaceLo;
jurzua
parents:
diff changeset
994 }
jurzua
parents:
diff changeset
995
112
59f26a5ef2b3 AliasListenerObject adds aliases to ListenerObject. Change all forms to enable ALIAS for (historical) PLACE fields. Remove REPOSITORY from event forms.
casties
parents: 111
diff changeset
996 public void setCopyPlaceLo(AliasListenerObject copyPlaceLo) {
1
jurzua
parents:
diff changeset
997 this.copyPlaceLo = copyPlaceLo;
jurzua
parents:
diff changeset
998 }
jurzua
parents:
diff changeset
999
jurzua
parents:
diff changeset
1000 public ListenerObject getPatronageLo() {
jurzua
parents:
diff changeset
1001 return patronageLo;
jurzua
parents:
diff changeset
1002 }
jurzua
parents:
diff changeset
1003
jurzua
parents:
diff changeset
1004 public void setPatronageLo(ListenerObject patronageLo) {
jurzua
parents:
diff changeset
1005 this.patronageLo = patronageLo;
jurzua
parents:
diff changeset
1006 }
jurzua
parents:
diff changeset
1007
jurzua
parents:
diff changeset
1008 public ListenerObject getTitleLo() {
jurzua
parents:
diff changeset
1009 return titleLo;
jurzua
parents:
diff changeset
1010 }
jurzua
parents:
diff changeset
1011
jurzua
parents:
diff changeset
1012 public void setTitleLo(ListenerObject titleLo) {
jurzua
parents:
diff changeset
1013 this.titleLo = titleLo;
jurzua
parents:
diff changeset
1014 }
jurzua
parents:
diff changeset
1015
jurzua
parents:
diff changeset
1016 public ListenerObject getAuthorLo() {
jurzua
parents:
diff changeset
1017 return authorLo;
jurzua
parents:
diff changeset
1018 }
jurzua
parents:
diff changeset
1019
jurzua
parents:
diff changeset
1020 public String getNewIdentifier() {
jurzua
parents:
diff changeset
1021 return newIdentifier;
jurzua
parents:
diff changeset
1022 }
jurzua
parents:
diff changeset
1023
jurzua
parents:
diff changeset
1024 public void setNewIdentifier(String newIdentifier) {
jurzua
parents:
diff changeset
1025 this.newIdentifier = newIdentifier;
jurzua
parents:
diff changeset
1026 }
jurzua
parents:
diff changeset
1027
jurzua
parents:
diff changeset
1028 public EntityList getStudiedByList() {
jurzua
parents:
diff changeset
1029 return studiedByList;
jurzua
parents:
diff changeset
1030 }
jurzua
parents:
diff changeset
1031
jurzua
parents:
diff changeset
1032 public Calendar getCopyDate() {
jurzua
parents:
diff changeset
1033 return copyDate;
jurzua
parents:
diff changeset
1034 }
jurzua
parents:
diff changeset
1035
jurzua
parents:
diff changeset
1036 public void setCopyDate(Calendar copyDate) {
jurzua
parents:
diff changeset
1037 this.copyDate = copyDate;
jurzua
parents:
diff changeset
1038 }
jurzua
parents:
diff changeset
1039
jurzua
parents:
diff changeset
1040 public void setStudiedByList(EntityList studiedByList) {
jurzua
parents:
diff changeset
1041 this.studiedByList = studiedByList;
jurzua
parents:
diff changeset
1042 }
jurzua
parents:
diff changeset
1043 public Long getValueAuthorSelectedId() {
jurzua
parents:
diff changeset
1044 return valueAuthorSelectedId;
jurzua
parents:
diff changeset
1045 }
jurzua
parents:
diff changeset
1046
jurzua
parents:
diff changeset
1047 public void setValueAuthorSelectedId(Long valueAuthorSelectedId) {
jurzua
parents:
diff changeset
1048 this.valueAuthorSelectedId = valueAuthorSelectedId;
jurzua
parents:
diff changeset
1049 }
jurzua
parents:
diff changeset
1050
jurzua
parents:
diff changeset
1051 public String getValueTextWritten() {
jurzua
parents:
diff changeset
1052 return valueTextWritten;
jurzua
parents:
diff changeset
1053 }
jurzua
parents:
diff changeset
1054
jurzua
parents:
diff changeset
1055 public void setValueTextWritten(String valueTextWritten) {
jurzua
parents:
diff changeset
1056 //this.valueTextWritten = valueTextWritten;
jurzua
parents:
diff changeset
1057 }
jurzua
parents:
diff changeset
1058
jurzua
parents:
diff changeset
1059 public String getValueAuthorWritten() {
jurzua
parents:
diff changeset
1060 return valueAuthorWritten;
jurzua
parents:
diff changeset
1061 }
jurzua
parents:
diff changeset
1062
jurzua
parents:
diff changeset
1063 public void setValueAuthorWritten(String valueAuthorWritten) {
jurzua
parents:
diff changeset
1064 //this.valueAuthorWritten = valueAuthorWritten;
jurzua
parents:
diff changeset
1065 }
jurzua
parents:
diff changeset
1066
jurzua
parents:
diff changeset
1067 public void setAuthorLo(ListenerObject authorLo) {
jurzua
parents:
diff changeset
1068 this.authorLo = authorLo;
jurzua
parents:
diff changeset
1069 }
jurzua
parents:
diff changeset
1070
jurzua
parents:
diff changeset
1071 public Long getSelectedTitleId() {
jurzua
parents:
diff changeset
1072 return selectedTitleId;
jurzua
parents:
diff changeset
1073 }
jurzua
parents:
diff changeset
1074
jurzua
parents:
diff changeset
1075 public void setSelectedTitleId(Long selectedTitleId) {
jurzua
parents:
diff changeset
1076 this.selectedTitleId = selectedTitleId;
jurzua
parents:
diff changeset
1077 }
jurzua
parents:
diff changeset
1078 public Long getSelectedPersonId() {
jurzua
parents:
diff changeset
1079 return selectedPersonId;
jurzua
parents:
diff changeset
1080 }
jurzua
parents:
diff changeset
1081
jurzua
parents:
diff changeset
1082 public void setSelectedPersonId(Long selectedPersonId) {
jurzua
parents:
diff changeset
1083 this.selectedPersonId = selectedPersonId;
jurzua
parents:
diff changeset
1084 }
jurzua
parents:
diff changeset
1085
jurzua
parents:
diff changeset
1086 public boolean isTextUnknown() {
jurzua
parents:
diff changeset
1087 return textUnknown;
jurzua
parents:
diff changeset
1088 }
jurzua
parents:
diff changeset
1089
jurzua
parents:
diff changeset
1090 public void setTextUnknown(boolean textUnknown) {
jurzua
parents:
diff changeset
1091 this.textUnknown = textUnknown;
jurzua
parents:
diff changeset
1092 }
jurzua
parents:
diff changeset
1093
jurzua
parents:
diff changeset
1094 public EntityList getPossibleExamplerOfList() {
jurzua
parents:
diff changeset
1095 return possibleExamplerOfList;
jurzua
parents:
diff changeset
1096 }
jurzua
parents:
diff changeset
1097
jurzua
parents:
diff changeset
1098 public void setPossibleExamplerOfList(EntityList possibleExamplerOfList) {
jurzua
parents:
diff changeset
1099 this.possibleExamplerOfList = possibleExamplerOfList;
jurzua
parents:
diff changeset
1100 }
jurzua
parents:
diff changeset
1101
jurzua
parents:
diff changeset
1102 }
jurzua
parents:
diff changeset
1103