annotate src/main/java/de/mpiwg/itgroup/ismi/entry/beans/CurrentWitnessBean.java @ 143:1c09041f1182

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