Author: sebawagner
Date: Sun Sep  9 14:51:52 2012
New Revision: 1382511

URL: http://svn.apache.org/viewvc?rev=1382511&view=rev
Log:
OPENMEETINGS-428 remove language and saluation mapping, use 
DropDownChoice<Long> and build custom mapping

Modified:
    
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/app/persistence/beans/user/Users.java
    
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/servlet/outputhandler/BackupImportController.java
    
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/web/components/admin/user/UserForm.java
    
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/web/components/admin/user/UsersPanel.html

Modified: 
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/app/persistence/beans/user/Users.java
URL: 
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/app/persistence/beans/user/Users.java?rev=1382511&r1=1382510&r2=1382511&view=diff
==============================================================================
--- 
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/app/persistence/beans/user/Users.java
 (original)
+++ 
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/app/persistence/beans/user/Users.java
 Sun Sep  9 14:51:52 2012
@@ -45,7 +45,6 @@ import org.openmeetings.app.persistence.
 import org.openmeetings.app.persistence.beans.basic.Server;
 import org.openmeetings.app.persistence.beans.basic.Sessiondata;
 import org.openmeetings.app.persistence.beans.domain.Organisation_Users;
-import org.openmeetings.app.persistence.beans.lang.FieldLanguage;
 import org.simpleframework.xml.Element;
 import org.simpleframework.xml.ElementList;
 import org.simpleframework.xml.Root;
@@ -110,16 +109,10 @@ public class Users implements Serializab
        @Element(data=true, required=false)
        private Integer status;
        
-       //for backward compatibility, delete when AS3/Flash is gone
        @Column(name = "salutations_id")
        @Element(name="title_id", data=true, required=false)
        private Long salutations_id;
        
-       @ManyToOne(fetch = FetchType.EAGER)
-       @JoinColumn(name = "salutations_id", insertable = false, updatable = 
false)
-       @Element(data=true, required=false)
-       private Salutations salutations;
-       
        @Column(name = "starttime")
        private Date starttime;
        
@@ -138,11 +131,6 @@ public class Users implements Serializab
        @Element(data=true, required=false)
        private Long language_id;
        
-       @ManyToOne(fetch = FetchType.EAGER)
-       @JoinColumn(name = "language_id", insertable = false, updatable = false)
-       //FIXME need to add correct language mapping
-       private FieldLanguage language;
-       
        @Column(name = "resethash")
        @Element(data=true, required=false)
        private String resethash;
@@ -368,14 +356,6 @@ public class Users implements Serializab
                this.salutations_id = salutations_id;
        }
        
-       public Salutations getSalutations() {
-               return salutations;
-       }
-
-       public void setSalutations(Salutations salutations) {
-               this.salutations = salutations;
-       }
-
        public Userlevel getUserlevel() {
                return userlevel;
        }
@@ -424,16 +404,6 @@ public class Users implements Serializab
                this.language_id = language_id;
        }
        
-       
-
-       public FieldLanguage getLanguage() {
-               return language;
-       }
-
-       public void setLanguage(FieldLanguage language) {
-               this.language = language;
-       }
-
        public List<Organisation_Users> getOrganisation_users() {
                return organisation_users;
        }

Modified: 
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/servlet/outputhandler/BackupImportController.java
URL: 
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/servlet/outputhandler/BackupImportController.java?rev=1382511&r1=1382510&r2=1382511&view=diff
==============================================================================
--- 
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/servlet/outputhandler/BackupImportController.java
 (original)
+++ 
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/servlet/outputhandler/BackupImportController.java
 Sun Sep  9 14:51:52 2012
@@ -759,7 +759,6 @@ public class BackupImportController exte
                        while (item != null) {
                                try {
                                        Users u = ser.read(Users.class, item, 
false);
-                                       u.setSalutations(null); //TODO need to 
be removed
                                        
                                        //HACK to handle Adresses and 
UserSipData inside user
                                        if (u.getAdresses() == null) {

Modified: 
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/web/components/admin/user/UserForm.java
URL: 
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/web/components/admin/user/UserForm.java?rev=1382511&r1=1382510&r2=1382511&view=diff
==============================================================================
--- 
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/web/components/admin/user/UserForm.java
 (original)
+++ 
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/web/components/admin/user/UserForm.java
 Sun Sep  9 14:51:52 2012
@@ -1,6 +1,8 @@
 package org.openmeetings.web.components.admin.user;
 
+import java.util.ArrayList;
 import java.util.Arrays;
+import java.util.List;
 
 import org.apache.wicket.ajax.AjaxRequestTarget;
 import org.apache.wicket.ajax.markup.html.form.AjaxButton;
@@ -14,7 +16,6 @@ import org.apache.wicket.markup.html.for
 import org.apache.wicket.markup.html.form.TextField;
 import org.apache.wicket.model.CompoundPropertyModel;
 import org.openmeetings.app.data.basic.FieldLanguageDaoImpl;
-import org.openmeetings.app.data.basic.Fieldmanagment;
 import org.openmeetings.app.data.basic.dao.OmTimeZoneDaoImpl;
 import org.openmeetings.app.data.user.Salutationmanagement;
 import org.openmeetings.app.data.user.Statemanagement;
@@ -28,16 +29,69 @@ import org.openmeetings.web.app.WebSessi
 
 public class UserForm extends Form<Users> {
 
+       private final List<Salutations> saluationList = Application.getBean(
+                       Salutationmanagement.class).getUserSalutations(
+                       WebSession.getLanguage());
+       private final List<FieldLanguage> languageList = Application.getBean(
+                       FieldLanguageDaoImpl.class).getLanguages();
+
+       private List<Long> getSalutationsIds() {
+               ArrayList<Long> saluationIdList = new ArrayList<Long>(
+                               saluationList.size());
+               for (Salutations saluation : saluationList) {
+                       saluationIdList.add(saluation.getSalutations_id());
+               }
+               return saluationIdList;
+       }
+
+       private String getSaluationLabelById(Long id) {
+               for (Salutations saluation : saluationList) {
+                       if (id.equals(saluation.getSalutations_id())) {
+                               return saluation.getLabel().getValue();
+                       }
+               }
+               throw new RuntimeException("Could not find saluation for id " + 
id);
+       }
+
+       private List<Long> getFieldLanguageIds() {
+               ArrayList<Long> languageIdList = new ArrayList<Long>(
+                               languageList.size());
+               for (FieldLanguage language : languageList) {
+                       languageIdList.add(language.getLanguage_id());
+               }
+               return languageIdList;
+       }
+
+       private String getFieldLanguageLabelById(Long id) {
+               for (FieldLanguage language : languageList) {
+                       if (id.equals(language.getLanguage_id())) {
+                               return language.getName();
+                       }
+               }
+               throw new RuntimeException("Could not find saluation for id " + 
id);
+       }
+
        public UserForm(String id, Users user) {
                super(id, new CompoundPropertyModel<Users>(user));
                setOutputMarkupId(true);
 
                add(new TextField<String>("login"));
 
-               add(new DropDownChoice<Salutations>("salutations", 
Application.getBean(
-                               Salutationmanagement.class).getUserSalutations(
-                               WebSession.getLanguage()), new 
ChoiceRenderer<Salutations>(
-                               "label.value", "salutations_id")));
+               // new ChoiceRenderer<Salutations>("label.value", 
"salutations_id"))
+
+               add(new DropDownChoice<Long>("salutations_id", 
getSalutationsIds(),
+                               new IChoiceRenderer<Long>() {
+                                       private static final long 
serialVersionUID = 1L;
+
+                                       public Object getDisplayValue(Long id) {
+                                               return 
getSaluationLabelById(id);
+                                       }
+
+                                       public String getIdValue(Long id, int 
index) {
+                                               return "" + id;
+                                       }
+
+                               }));
 
                add(new TextField<String>("firstname"));
                add(new TextField<String>("lastname"));
@@ -46,9 +100,19 @@ public class UserForm extends Form<Users
                                OmTimeZoneDaoImpl.class).getOmTimeZones(),
                                new ChoiceRenderer<OmTimeZone>("frontEndLabel", 
"jname")));
 
-               add(new DropDownChoice<FieldLanguage>("language", 
Application.getBean(
-                               FieldLanguageDaoImpl.class).getLanguages(),
-                               new ChoiceRenderer<FieldLanguage>("name", 
"language_id")));
+               add(new DropDownChoice<Long>("language_id", 
getFieldLanguageIds(),
+                               new IChoiceRenderer<Long>() {
+                                       private static final long 
serialVersionUID = 1L;
+
+                                       public Object getDisplayValue(Long id) {
+                                               return 
getFieldLanguageLabelById(id);
+                                       }
+
+                                       public String getIdValue(Long id, int 
index) {
+                                               return "" + id;
+                                       }
+
+                               }));
 
                add(new CheckBox("forceTimeZoneCheck"));
                add(new TextField<String>("adresses.email"));
@@ -75,12 +139,8 @@ public class UserForm extends Form<Users
                                Statemanagement.class).getStates(), new 
ChoiceRenderer<States>(
                                "name", "state_id")));
 
-               final String field159 = 
Application.getBean(Fieldmanagment.class)
-                               .getFieldByIdAndLanguage(159L, 
WebSession.getLanguage())
-                               .getValue();
-               final String field160 = 
Application.getBean(Fieldmanagment.class)
-                               .getFieldByIdAndLanguage(160L, 
WebSession.getLanguage())
-                               .getValue();
+               final String field159 = WebSession.getString(159);
+               final String field160 = WebSession.getString(160);
 
                add(new DropDownChoice<Integer>("status", Arrays.asList(0, 1),
                                new IChoiceRenderer<Integer>() {
@@ -102,18 +162,10 @@ public class UserForm extends Form<Users
 
                                }));
 
-               final String field166 = 
Application.getBean(Fieldmanagment.class)
-                               .getFieldByIdAndLanguage(166L, 
WebSession.getLanguage())
-                               .getValue();
-               final String field167 = 
Application.getBean(Fieldmanagment.class)
-                               .getFieldByIdAndLanguage(167L, 
WebSession.getLanguage())
-                               .getValue();
-               final String field168 = 
Application.getBean(Fieldmanagment.class)
-                               .getFieldByIdAndLanguage(168L, 
WebSession.getLanguage())
-                               .getValue();
-               final String field1311 = 
Application.getBean(Fieldmanagment.class)
-                               .getFieldByIdAndLanguage(1311L, 
WebSession.getLanguage())
-                               .getValue();
+               final String field166 = WebSession.getString(166);
+               final String field167 = WebSession.getString(167);
+               final String field168 = WebSession.getString(168);
+               final String field1311 = WebSession.getString(1311);
 
                add(new DropDownChoice<Long>("level_id", Arrays.asList(1L, 2L, 
3L, 4L),
                                new IChoiceRenderer<Long>() {

Modified: 
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/web/components/admin/user/UsersPanel.html
URL: 
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/web/components/admin/user/UsersPanel.html?rev=1382511&r1=1382510&r2=1382511&view=diff
==============================================================================
--- 
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/web/components/admin/user/UsersPanel.html
 (original)
+++ 
incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/web/components/admin/user/UsersPanel.html
 Sun Sep  9 14:51:52 2012
@@ -48,13 +48,13 @@
                                    <br/>
                                    <wicket:ommessage key="133" />: <input 
type="password" />
                                    <br/>
-                                   <wicket:ommessage key="135" />: <select 
wicket:id="salutations"/> <input type="text" wicket:id="firstname"/>
+                                   <wicket:ommessage key="135" />: <select 
wicket:id="salutations_id"/> <input type="text" wicket:id="firstname"/>
                                    <br/>
                                    <wicket:ommessage key="136" />: <input 
type="text" wicket:id="lastname"/>
                                    <br/>
                                    <wicket:ommessage key="1143" />: <select 
wicket:id="omTimeZone"/>
                                    <br/>
-                                   <wicket:ommessage key="111" />: <select 
wicket:id="language"/>
+                                   <wicket:ommessage key="111" />: <select 
wicket:id="language_id"/>
                                    <br/>
                                    <wicket:ommessage key="1149" />
                                    <br/>


Reply via email to