001: package org.contineo.web.settings;
002:
003: import org.apache.commons.logging.Log;
004: import org.apache.commons.logging.LogFactory;
005:
006: import org.contineo.core.security.SecurityManager;
007: import org.contineo.core.security.User;
008: import org.contineo.core.security.dao.UserDAO;
009:
010: import org.contineo.util.Context;
011:
012: import org.contineo.web.SessionManagement;
013: import org.contineo.web.admin.UsersRecordsManager;
014: import org.contineo.web.i18n.Messages;
015:
016: import javax.faces.context.FacesContext;
017:
018: /**
019: * Personal data editing
020: *
021: * @author Marco Meschieri
022: * @version $Id: UserForm.java,v 1.1 2007/10/16 16:10:33 marco Exp $
023: * @since 3.0
024: */
025: public class PersonalDataForm {
026: protected static Log log = LogFactory
027: .getLog(PersonalDataForm.class);
028: private String name;
029: private String firstName;
030: private String street;
031: private String postalCode;
032: private String city;
033: private String country;
034: private String language;
035: private String email;
036: private String phone;
037:
038: public PersonalDataForm() {
039: super ();
040:
041: User user = SessionManagement.getUser();
042: name = user.getName();
043: firstName = user.getFirstName();
044: street = user.getStreet();
045: postalCode = user.getPostalcode();
046: city = user.getCity();
047: country = user.getCountry();
048: language = user.getLanguage();
049: email = user.getEmail();
050: phone = user.getTelephone();
051: }
052:
053: public String getCity() {
054: return city;
055: }
056:
057: public void setCity(String city) {
058: this .city = city;
059: }
060:
061: public String getCountry() {
062: return country;
063: }
064:
065: public void setCountry(String country) {
066: this .country = country;
067: }
068:
069: public String getEmail() {
070: return email;
071: }
072:
073: public void setEmail(String email) {
074: this .email = email;
075: }
076:
077: public String getFirstName() {
078: return firstName;
079: }
080:
081: public void setFirstName(String firstName) {
082: this .firstName = firstName;
083: }
084:
085: public String getLanguage() {
086: return language;
087: }
088:
089: public void setLanguage(String language) {
090: this .language = language;
091: }
092:
093: public String getName() {
094: return name;
095: }
096:
097: public void setName(String name) {
098: this .name = name;
099: }
100:
101: public String getPhone() {
102: return phone;
103: }
104:
105: public void setPhone(String phone) {
106: this .phone = phone;
107: }
108:
109: public String getPostalCode() {
110: return postalCode;
111: }
112:
113: public void setPostalCode(String postalCode) {
114: this .postalCode = postalCode;
115: }
116:
117: public String getStreet() {
118: return street;
119: }
120:
121: public void setStreet(String street) {
122: this .street = street;
123: }
124:
125: public String save() {
126: if (SessionManagement.isValid()) {
127: try {
128: UserDAO dao = (UserDAO) Context.getInstance().getBean(
129: UserDAO.class);
130: User user = SessionManagement.getUser();
131: user.setFirstName(firstName);
132: user.setName(name);
133: user.setCity(city);
134: user.setStreet(street);
135: user.setCountry(country);
136: user.setEmail(email);
137: user.setLanguage(language);
138: user.setPostalcode(postalCode);
139: user.setTelephone(phone);
140:
141: SecurityManager manager = (SecurityManager) Context
142: .getInstance().getBean(SecurityManager.class);
143: boolean stored = dao.store(user);
144:
145: if (!stored) {
146: Messages
147: .addLocalizedError("errors.action.saveuser.notstored");
148: } else {
149: Messages.addLocalizedInfo("msg.action.changeuser");
150: }
151:
152: user.initGroupNames();
153:
154: UsersRecordsManager recordsManager = ((UsersRecordsManager) FacesContext
155: .getCurrentInstance().getApplication()
156: .createValueBinding("#{usersRecordsManager}")
157: .getValue(FacesContext.getCurrentInstance()));
158: recordsManager.reload();
159: recordsManager.setSelectedPanel("list");
160: } catch (Exception e) {
161: log.error(e.getMessage(), e);
162: Messages
163: .addLocalizedError("errors.action.saveuser.notstored");
164: }
165:
166: return null;
167: } else {
168: return "login";
169: }
170: }
171: }
|