4 package eu
.etaxonomy
.taxeditor
.ui
.section
.user
;
6 import eu
.etaxonomy
.cdm
.model
.common
.User
;
7 import eu
.etaxonomy
.taxeditor
.store
.CdmStore
;
8 import eu
.etaxonomy
.taxeditor
.ui
.forms
.CdmFormFactory
;
9 import eu
.etaxonomy
.taxeditor
.ui
.forms
.CdmFormFactory
.SelectionType
;
10 import eu
.etaxonomy
.taxeditor
.ui
.forms
.CheckboxElement
;
11 import eu
.etaxonomy
.taxeditor
.ui
.forms
.ICdmFormElement
;
12 import eu
.etaxonomy
.taxeditor
.ui
.forms
.TextWithLabelElement
;
13 import eu
.etaxonomy
.taxeditor
.ui
.forms
.password
.EditPasswordElement
;
14 import eu
.etaxonomy
.taxeditor
.ui
.section
.AbstractCdmDetailElement
;
15 import eu
.etaxonomy
.taxeditor
.ui
.selection
.PersonSelectionElement
;
21 public class UserDetailElement
extends AbstractCdmDetailElement
<User
> {
23 private TextWithLabelElement text_username
;
24 private EditPasswordElement element_editPassword
;
25 private TextWithLabelElement text_emailAdress
;
26 private PersonSelectionElement selection_person
;
27 private CheckboxElement checkbox_credentialsNonExpired
;
28 private CheckboxElement checkbox_enabled
;
29 private CheckboxElement checkbox_accountNonLocked
;
30 private CheckboxElement checkbox_accountNonExpired
;
32 public UserDetailElement(CdmFormFactory formFactory
,
33 ICdmFormElement formElement
) {
34 super(formFactory
, formElement
);
41 * eu.etaxonomy.taxeditor.section.AbstractCdmDetailElement#createControls
42 * (eu.etaxonomy.taxeditor.forms.ICdmFormElement, java.lang.Object, int)
45 protected void createControls(ICdmFormElement formElement
, User entity
,
47 text_username
= formFactory
.createTextWithLabelElement(formElement
,
48 "Username", entity
.getUsername(), style
);
50 if (userIsAuthenticated()) {
51 element_editPassword
= formFactory
.createEditPasswordElement(
52 formElement
, "Change Password", getConversationHolder(),
56 text_emailAdress
= formFactory
.createTextWithLabelElement(formElement
,
57 "Email Adress", entity
.getEmailAddress(), style
);
59 selection_person
= (PersonSelectionElement
) formFactory
60 .createSelectionElement(SelectionType
.PERSON
,
61 getConversationHolder(), formElement
, "Person",
62 entity
.getPerson(), PersonSelectionElement
.DEFAULT
,
65 checkbox_accountNonExpired
= formFactory
.createCheckbox(formElement
,
66 "Account Non Expired", entity
.isAccountNonExpired(), style
);
67 checkbox_accountNonLocked
= formFactory
.createCheckbox(formElement
,
68 "Account Non Locked", entity
.isAccountNonLocked(), style
);
69 checkbox_enabled
= formFactory
.createCheckbox(formElement
, "Enabled",
70 entity
.isEnabled(), style
);
71 checkbox_credentialsNonExpired
= formFactory
.createCheckbox(
72 formElement
, "Credentials Non Expired",
73 entity
.isCredentialsNonExpired(), style
);
80 private boolean userIsAuthenticated() {
81 return getEntity().equals(
82 CdmStore
.getLoginManager().getAuthenticatedUser());
89 * eu.etaxonomy.taxeditor.section.AbstractCdmDetailElement#handleEvent(java
93 public void handleEvent(Object eventSource
) {
94 if (eventSource
== text_username
) {
95 getEntity().setUsername(text_username
.getText());
96 } else if (eventSource
== text_emailAdress
) {
97 getEntity().setEmailAddress(text_emailAdress
.getText());
98 } else if (eventSource
== selection_person
) {
99 getEntity().setPerson(selection_person
.getSelection());
100 } else if (eventSource
== checkbox_accountNonExpired
) {
101 getEntity().setAccountNonExpired(
102 checkbox_accountNonExpired
.getSelection());
103 } else if (eventSource
== checkbox_accountNonLocked
) {
104 getEntity().setAccountNonLocked(
105 checkbox_accountNonLocked
.getSelection());
106 } else if (eventSource
== checkbox_enabled
) {
107 getEntity().setEnabled(checkbox_enabled
.getSelection());
108 } else if (eventSource
== checkbox_credentialsNonExpired
) {
109 getEntity().setCredentialsNonExpired(
110 checkbox_credentialsNonExpired
.getSelection());