annotate src/main/java/de/mpiwg/itgroup/ismi/entry/beans/CurrentWitnessBean.java @ 136:502ae5b1a07d

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