You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openmeetings.apache.org by se...@apache.org on 2012/09/09 12:44:55 UTC

svn commit: r1382444 - in /incubator/openmeetings/trunk/singlewebapp: ./ src/org/openmeetings/app/persistence/beans/user/ src/org/openmeetings/web/components/admin/user/

Author: sebawagner
Date: Sun Sep  9 10:44:54 2012
New Revision: 1382444

URL: http://svn.apache.org/viewvc?rev=1382444&view=rev
Log:
OPENMEETINGS-428 Refactor User administration to Wicket - couple of fields, add wcket-detatime package for datepicker

Modified:
    incubator/openmeetings/trunk/singlewebapp/ivy.xml
    incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/app/persistence/beans/user/Users.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/ivy.xml
URL: http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/ivy.xml?rev=1382444&r1=1382443&r2=1382444&view=diff
==============================================================================
--- incubator/openmeetings/trunk/singlewebapp/ivy.xml (original)
+++ incubator/openmeetings/trunk/singlewebapp/ivy.xml Sun Sep  9 10:44:54 2012
@@ -236,6 +236,9 @@
 		<dependency org="org.apache.wicket" name="wicket-extensions" rev="6.0.0-beta3" conf="openmeetings->*" transitive="false">
 			<include type="jar" />
 		</dependency>
+		<dependency org="org.apache.wicket" name="wicket-datetime" rev="6.0.0-beta3" conf="openmeetings->*" transitive="false">
+			<include type="jar" />
+		</dependency>
 		
 		<!-- iCal4j seems to need this JAR -->
 		<dependency org="edu.emory.mathcs" name="backport-util-concurrent" rev="3.1" conf="openmeetings->*"/>

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=1382444&r1=1382443&r2=1382444&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 10:44:54 2012
@@ -45,6 +45,7 @@ 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;
@@ -136,6 +137,10 @@ public class Users implements Serializab
 	@Column(name = "language_id")
 	@Element(data=true, required=false)
 	private Long language_id;
+	@ManyToOne(fetch = FetchType.EAGER)
+	@JoinColumn(name = "language_id", insertable = false, updatable = false)
+	@Element(data=true, required=false)
+	private FieldLanguage language;
 	
 	@Column(name = "resethash")
 	@Element(data=true, required=false)
@@ -417,6 +422,16 @@ public class Users implements Serializab
 	public void setLanguage_id(Long language_id) {
 		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/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=1382444&r1=1382443&r2=1382444&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 10:44:54 2012
@@ -2,60 +2,82 @@ package org.openmeetings.web.components.
 
 import org.apache.wicket.ajax.AjaxRequestTarget;
 import org.apache.wicket.ajax.markup.html.form.AjaxButton;
+import org.apache.wicket.extensions.markup.html.form.DateTextField;
+import org.apache.wicket.extensions.yui.calendar.DatePicker;
+import org.apache.wicket.markup.html.form.CheckBox;
 import org.apache.wicket.markup.html.form.ChoiceRenderer;
 import org.apache.wicket.markup.html.form.DropDownChoice;
 import org.apache.wicket.markup.html.form.Form;
 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.dao.OmTimeZoneDaoImpl;
 import org.openmeetings.app.data.user.Salutationmanagement;
 import org.openmeetings.app.persistence.beans.basic.OmTimeZone;
+import org.openmeetings.app.persistence.beans.lang.FieldLanguage;
 import org.openmeetings.app.persistence.beans.user.Salutations;
 import org.openmeetings.app.persistence.beans.user.Users;
 import org.openmeetings.web.app.Application;
 import org.openmeetings.web.app.WebSession;
 
 public class UserForm extends Form<Users> {
-	
 
 	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")));
-		
+
+		add(new DropDownChoice<Salutations>("salutations", Application.getBean(
+				Salutationmanagement.class).getUserSalutations(
+				WebSession.getLanguage()), new ChoiceRenderer<Salutations>(
+				"label.value", "salutations_id")));
+
 		add(new TextField<String>("firstname"));
-		
-		add(new DropDownChoice<OmTimeZone>("omTimeZone", 
-				Application.getBean(OmTimeZoneDaoImpl.class).getOmTimeZones(), 
-        		new ChoiceRenderer<OmTimeZone>("frontEndLabel", "jname")));
-
-		
-        //add(new SimpleFormComponentLabel("login-label", fc));
-        
-        // add a button that can be used to submit the form via ajax
-        add(new AjaxButton("ajax-button", this) {
+		add(new TextField<String>("lastname"));
+
+		add(new DropDownChoice<OmTimeZone>("omTimeZone", Application.getBean(
+				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 CheckBox("forceTimeZoneCheck"));
+		add(new TextField<String>("adresses.email"));
+		add(new TextField<String>("adresses.phone"));
+		add(new CheckBox("sendSMS"));
+		DateTextField age = new DateTextField("age");
+		DatePicker datePicker = new DatePicker() {
+			private static final long serialVersionUID = 1L;
+
+			@Override
+			protected String getAdditionalJavaScript() {
+				return "${calendar}.cfg.setProperty(\"navigator\",true,false); ${calendar}.render();";
+			}
+		};
+		datePicker.setShowOnFieldClick(true);
+		datePicker.setAutoHide(true);
+		age.add(datePicker);
+		add(age);
+
+		// add a button that can be used to submit the form via ajax
+		add(new AjaxButton("ajax-button", this) {
 			private static final long serialVersionUID = 839803820502260006L;
 
 			@Override
-            protected void onSubmit(AjaxRequestTarget target, Form<?> form)
-            {
-                // repaint the feedback panel so that it is hidden
-                // target.add(feedback);
-            }
-
-            @Override
-            protected void onError(AjaxRequestTarget target, Form<?> form)
-            {
-                // repaint the feedback panel so errors are shown
-                // target.add(feedback);
-            }
-        });
+			protected void onSubmit(AjaxRequestTarget target, Form<?> form) {
+				// repaint the feedback panel so that it is hidden
+				// target.add(feedback);
+			}
+
+			@Override
+			protected void onError(AjaxRequestTarget target, Form<?> form) {
+				// repaint the feedback panel so errors are shown
+				// target.add(feedback);
+			}
+		});
 	}
 
 	/**

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=1382444&r1=1382443&r2=1382444&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 10:44:54 2012
@@ -50,8 +50,25 @@
 			            <br/>
 			            <wicket:ommessage key="135" />: <select wicket:id="salutations"/> <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"/>
+			            <br/>
+			            <wicket:ommessage key="1149" />
+			            <br/>
+			             <wicket:ommessage key="1148" />: <input type="checkbox" wicket:id="forceTimeZoneCheck" />
+			            <br/>
+			            <wicket:ommessage key="137" />: <input type="text" wicket:id="adresses.email"/>
+			            <br/>
+			            <wicket:ommessage key="607" />: <input type="text" wicket:id="adresses.phone"/>
+			            <br/>
+			            <wicket:ommessage key="1503" />: <input type="checkbox" wicket:id="sendSMS"/>
+			            <br/>
+			            <wicket:ommessage key="138" />: <input type="text" wicket:id="age"/>
+			            <br/>
+			            <br/>
 			            <input type="submit" value="submit via ajax" wicket:id="ajax-button"/>
 			        </form>
 				</td>



Re: svn commit: r1382444 - in /incubator/openmeetings/trunk/singlewebapp: ./ src/org/openmeetings/app/persistence/beans/user/ src/org/openmeetings/web/components/admin/user/

Posted by "seba.wagner@gmail.com" <se...@gmail.com>.
I have removed the mappings for salutations and language completely
again and use DropDownChoice<Long> for those comboboxes that have no
one-to-many mapping.
I think its better that way to have no duplicated attributes and to
stick with what we have.

Thanks for reviewing!
Sebastian

2012/9/9 Maxim Solodovnik <so...@gmail.com>:
> I'll remove @Element annotation from here
> +       @Element(data=true, required=false)
> +       private FieldLanguage language;
>
> to avoid export/import errors
>
>
> On Sun, Sep 9, 2012 at 5:44 PM, <se...@apache.org> wrote:
>>
>> Author: sebawagner
>> Date: Sun Sep  9 10:44:54 2012
>> New Revision: 1382444
>>
>> URL: http://svn.apache.org/viewvc?rev=1382444&view=rev
>> Log:
>> OPENMEETINGS-428 Refactor User administration to Wicket - couple of
>> fields, add wcket-detatime package for datepicker
>>
>> Modified:
>>     incubator/openmeetings/trunk/singlewebapp/ivy.xml
>>
>> incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/app/persistence/beans/user/Users.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/ivy.xml
>> URL:
>> http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/ivy.xml?rev=1382444&r1=1382443&r2=1382444&view=diff
>>
>> ==============================================================================
>> --- incubator/openmeetings/trunk/singlewebapp/ivy.xml (original)
>> +++ incubator/openmeetings/trunk/singlewebapp/ivy.xml Sun Sep  9 10:44:54
>> 2012
>> @@ -236,6 +236,9 @@
>>                 <dependency org="org.apache.wicket"
>> name="wicket-extensions" rev="6.0.0-beta3" conf="openmeetings->*"
>> transitive="false">
>>                         <include type="jar" />
>>                 </dependency>
>> +               <dependency org="org.apache.wicket" name="wicket-datetime"
>> rev="6.0.0-beta3" conf="openmeetings->*" transitive="false">
>> +                       <include type="jar" />
>> +               </dependency>
>>
>>                 <!-- iCal4j seems to need this JAR -->
>>                 <dependency org="edu.emory.mathcs"
>> name="backport-util-concurrent" rev="3.1" conf="openmeetings->*"/>
>>
>> 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=1382444&r1=1382443&r2=1382444&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 10:44:54 2012
>> @@ -45,6 +45,7 @@ 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;
>> @@ -136,6 +137,10 @@ public class Users implements Serializab
>>         @Column(name = "language_id")
>>         @Element(data=true, required=false)
>>         private Long language_id;
>> +       @ManyToOne(fetch = FetchType.EAGER)
>> +       @JoinColumn(name = "language_id", insertable = false, updatable =
>> false)
>> +       @Element(data=true, required=false)
>> +       private FieldLanguage language;
>>
>>         @Column(name = "resethash")
>>         @Element(data=true, required=false)
>> @@ -417,6 +422,16 @@ public class Users implements Serializab
>>         public void setLanguage_id(Long language_id) {
>>                 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/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=1382444&r1=1382443&r2=1382444&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 10:44:54 2012
>> @@ -2,60 +2,82 @@ package org.openmeetings.web.components.
>>
>>  import org.apache.wicket.ajax.AjaxRequestTarget;
>>  import org.apache.wicket.ajax.markup.html.form.AjaxButton;
>> +import org.apache.wicket.extensions.markup.html.form.DateTextField;
>> +import org.apache.wicket.extensions.yui.calendar.DatePicker;
>> +import org.apache.wicket.markup.html.form.CheckBox;
>>  import org.apache.wicket.markup.html.form.ChoiceRenderer;
>>  import org.apache.wicket.markup.html.form.DropDownChoice;
>>  import org.apache.wicket.markup.html.form.Form;
>>  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.dao.OmTimeZoneDaoImpl;
>>  import org.openmeetings.app.data.user.Salutationmanagement;
>>  import org.openmeetings.app.persistence.beans.basic.OmTimeZone;
>> +import org.openmeetings.app.persistence.beans.lang.FieldLanguage;
>>  import org.openmeetings.app.persistence.beans.user.Salutations;
>>  import org.openmeetings.app.persistence.beans.user.Users;
>>  import org.openmeetings.web.app.Application;
>>  import org.openmeetings.web.app.WebSession;
>>
>>  public class UserForm extends Form<Users> {
>> -
>>
>>         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")));
>> -
>> +
>> +               add(new DropDownChoice<Salutations>("salutations",
>> Application.getBean(
>> +
>> Salutationmanagement.class).getUserSalutations(
>> +                               WebSession.getLanguage()), new
>> ChoiceRenderer<Salutations>(
>> +                               "label.value", "salutations_id")));
>> +
>>                 add(new TextField<String>("firstname"));
>> -
>> -               add(new DropDownChoice<OmTimeZone>("omTimeZone",
>> -
>> Application.getBean(OmTimeZoneDaoImpl.class).getOmTimeZones(),
>> -                       new ChoiceRenderer<OmTimeZone>("frontEndLabel",
>> "jname")));
>> -
>> -
>> -        //add(new SimpleFormComponentLabel("login-label", fc));
>> -
>> -        // add a button that can be used to submit the form via ajax
>> -        add(new AjaxButton("ajax-button", this) {
>> +               add(new TextField<String>("lastname"));
>> +
>> +               add(new DropDownChoice<OmTimeZone>("omTimeZone",
>> Application.getBean(
>> +                               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 CheckBox("forceTimeZoneCheck"));
>> +               add(new TextField<String>("adresses.email"));
>> +               add(new TextField<String>("adresses.phone"));
>> +               add(new CheckBox("sendSMS"));
>> +               DateTextField age = new DateTextField("age");
>> +               DatePicker datePicker = new DatePicker() {
>> +                       private static final long serialVersionUID = 1L;
>> +
>> +                       @Override
>> +                       protected String getAdditionalJavaScript() {
>> +                               return
>> "${calendar}.cfg.setProperty(\"navigator\",true,false);
>> ${calendar}.render();";
>> +                       }
>> +               };
>> +               datePicker.setShowOnFieldClick(true);
>> +               datePicker.setAutoHide(true);
>> +               age.add(datePicker);
>> +               add(age);
>> +
>> +               // add a button that can be used to submit the form via
>> ajax
>> +               add(new AjaxButton("ajax-button", this) {
>>                         private static final long serialVersionUID =
>> 839803820502260006L;
>>
>>                         @Override
>> -            protected void onSubmit(AjaxRequestTarget target, Form<?>
>> form)
>> -            {
>> -                // repaint the feedback panel so that it is hidden
>> -                // target.add(feedback);
>> -            }
>> -
>> -            @Override
>> -            protected void onError(AjaxRequestTarget target, Form<?>
>> form)
>> -            {
>> -                // repaint the feedback panel so errors are shown
>> -                // target.add(feedback);
>> -            }
>> -        });
>> +                       protected void onSubmit(AjaxRequestTarget target,
>> Form<?> form) {
>> +                               // repaint the feedback panel so that it
>> is hidden
>> +                               // target.add(feedback);
>> +                       }
>> +
>> +                       @Override
>> +                       protected void onError(AjaxRequestTarget target,
>> Form<?> form) {
>> +                               // repaint the feedback panel so errors
>> are shown
>> +                               // target.add(feedback);
>> +                       }
>> +               });
>>         }
>>
>>         /**
>>
>> 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=1382444&r1=1382443&r2=1382444&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 10:44:54 2012
>> @@ -50,8 +50,25 @@
>>                                     <br/>
>>                                     <wicket:ommessage key="135" />:
>> <select wicket:id="salutations"/> <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"/>
>> +                                   <br/>
>> +                                   <wicket:ommessage key="1149" />
>> +                                   <br/>
>> +                                    <wicket:ommessage key="1148" />:
>> <input type="checkbox" wicket:id="forceTimeZoneCheck" />
>> +                                   <br/>
>> +                                   <wicket:ommessage key="137" />: <input
>> type="text" wicket:id="adresses.email"/>
>> +                                   <br/>
>> +                                   <wicket:ommessage key="607" />: <input
>> type="text" wicket:id="adresses.phone"/>
>> +                                   <br/>
>> +                                   <wicket:ommessage key="1503" />:
>> <input type="checkbox" wicket:id="sendSMS"/>
>> +                                   <br/>
>> +                                   <wicket:ommessage key="138" />: <input
>> type="text" wicket:id="age"/>
>> +                                   <br/>
>> +                                   <br/>
>>                                     <input type="submit" value="submit via
>> ajax" wicket:id="ajax-button"/>
>>                                 </form>
>>                                 </td>
>>
>>
>
>
>
> --
> WBR
> Maxim aka solomax



-- 
Sebastian Wagner
https://twitter.com/#!/dead_lock
http://www.webbase-design.de
http://www.wagner-sebastian.com
seba.wagner@gmail.com

Re: svn commit: r1382444 - in /incubator/openmeetings/trunk/singlewebapp: ./ src/org/openmeetings/app/persistence/beans/user/ src/org/openmeetings/web/components/admin/user/

Posted by Maxim Solodovnik <so...@gmail.com>.
I'll remove @Element annotation from here
+       @Element(data=true, required=false)
+       private FieldLanguage language;

to avoid export/import errors

On Sun, Sep 9, 2012 at 5:44 PM, <se...@apache.org> wrote:

> Author: sebawagner
> Date: Sun Sep  9 10:44:54 2012
> New Revision: 1382444
>
> URL: http://svn.apache.org/viewvc?rev=1382444&view=rev
> Log:
> OPENMEETINGS-428 Refactor User administration to Wicket - couple of
> fields, add wcket-detatime package for datepicker
>
> Modified:
>     incubator/openmeetings/trunk/singlewebapp/ivy.xml
>
> incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/app/persistence/beans/user/Users.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/ivy.xml
> URL:
> http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/ivy.xml?rev=1382444&r1=1382443&r2=1382444&view=diff
>
> ==============================================================================
> --- incubator/openmeetings/trunk/singlewebapp/ivy.xml (original)
> +++ incubator/openmeetings/trunk/singlewebapp/ivy.xml Sun Sep  9 10:44:54
> 2012
> @@ -236,6 +236,9 @@
>                 <dependency org="org.apache.wicket"
> name="wicket-extensions" rev="6.0.0-beta3" conf="openmeetings->*"
> transitive="false">
>                         <include type="jar" />
>                 </dependency>
> +               <dependency org="org.apache.wicket" name="wicket-datetime"
> rev="6.0.0-beta3" conf="openmeetings->*" transitive="false">
> +                       <include type="jar" />
> +               </dependency>
>
>                 <!-- iCal4j seems to need this JAR -->
>                 <dependency org="edu.emory.mathcs"
> name="backport-util-concurrent" rev="3.1" conf="openmeetings->*"/>
>
> 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=1382444&r1=1382443&r2=1382444&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 10:44:54 2012
> @@ -45,6 +45,7 @@ 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;
> @@ -136,6 +137,10 @@ public class Users implements Serializab
>         @Column(name = "language_id")
>         @Element(data=true, required=false)
>         private Long language_id;
> +       @ManyToOne(fetch = FetchType.EAGER)
> +       @JoinColumn(name = "language_id", insertable = false, updatable =
> false)
> +       @Element(data=true, required=false)
> +       private FieldLanguage language;
>
>         @Column(name = "resethash")
>         @Element(data=true, required=false)
> @@ -417,6 +422,16 @@ public class Users implements Serializab
>         public void setLanguage_id(Long language_id) {
>                 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/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=1382444&r1=1382443&r2=1382444&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 10:44:54 2012
> @@ -2,60 +2,82 @@ package org.openmeetings.web.components.
>
>  import org.apache.wicket.ajax.AjaxRequestTarget;
>  import org.apache.wicket.ajax.markup.html.form.AjaxButton;
> +import org.apache.wicket.extensions.markup.html.form.DateTextField;
> +import org.apache.wicket.extensions.yui.calendar.DatePicker;
> +import org.apache.wicket.markup.html.form.CheckBox;
>  import org.apache.wicket.markup.html.form.ChoiceRenderer;
>  import org.apache.wicket.markup.html.form.DropDownChoice;
>  import org.apache.wicket.markup.html.form.Form;
>  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.dao.OmTimeZoneDaoImpl;
>  import org.openmeetings.app.data.user.Salutationmanagement;
>  import org.openmeetings.app.persistence.beans.basic.OmTimeZone;
> +import org.openmeetings.app.persistence.beans.lang.FieldLanguage;
>  import org.openmeetings.app.persistence.beans.user.Salutations;
>  import org.openmeetings.app.persistence.beans.user.Users;
>  import org.openmeetings.web.app.Application;
>  import org.openmeetings.web.app.WebSession;
>
>  public class UserForm extends Form<Users> {
> -
>
>         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")));
> -
> +
> +               add(new DropDownChoice<Salutations>("salutations",
> Application.getBean(
> +
> Salutationmanagement.class).getUserSalutations(
> +                               WebSession.getLanguage()), new
> ChoiceRenderer<Salutations>(
> +                               "label.value", "salutations_id")));
> +
>                 add(new TextField<String>("firstname"));
> -
> -               add(new DropDownChoice<OmTimeZone>("omTimeZone",
> -
> Application.getBean(OmTimeZoneDaoImpl.class).getOmTimeZones(),
> -                       new ChoiceRenderer<OmTimeZone>("frontEndLabel",
> "jname")));
> -
> -
> -        //add(new SimpleFormComponentLabel("login-label", fc));
> -
> -        // add a button that can be used to submit the form via ajax
> -        add(new AjaxButton("ajax-button", this) {
> +               add(new TextField<String>("lastname"));
> +
> +               add(new DropDownChoice<OmTimeZone>("omTimeZone",
> Application.getBean(
> +                               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 CheckBox("forceTimeZoneCheck"));
> +               add(new TextField<String>("adresses.email"));
> +               add(new TextField<String>("adresses.phone"));
> +               add(new CheckBox("sendSMS"));
> +               DateTextField age = new DateTextField("age");
> +               DatePicker datePicker = new DatePicker() {
> +                       private static final long serialVersionUID = 1L;
> +
> +                       @Override
> +                       protected String getAdditionalJavaScript() {
> +                               return
> "${calendar}.cfg.setProperty(\"navigator\",true,false);
> ${calendar}.render();";
> +                       }
> +               };
> +               datePicker.setShowOnFieldClick(true);
> +               datePicker.setAutoHide(true);
> +               age.add(datePicker);
> +               add(age);
> +
> +               // add a button that can be used to submit the form via
> ajax
> +               add(new AjaxButton("ajax-button", this) {
>                         private static final long serialVersionUID =
> 839803820502260006L;
>
>                         @Override
> -            protected void onSubmit(AjaxRequestTarget target, Form<?>
> form)
> -            {
> -                // repaint the feedback panel so that it is hidden
> -                // target.add(feedback);
> -            }
> -
> -            @Override
> -            protected void onError(AjaxRequestTarget target, Form<?> form)
> -            {
> -                // repaint the feedback panel so errors are shown
> -                // target.add(feedback);
> -            }
> -        });
> +                       protected void onSubmit(AjaxRequestTarget target,
> Form<?> form) {
> +                               // repaint the feedback panel so that it
> is hidden
> +                               // target.add(feedback);
> +                       }
> +
> +                       @Override
> +                       protected void onError(AjaxRequestTarget target,
> Form<?> form) {
> +                               // repaint the feedback panel so errors
> are shown
> +                               // target.add(feedback);
> +                       }
> +               });
>         }
>
>         /**
>
> 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=1382444&r1=1382443&r2=1382444&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 10:44:54 2012
> @@ -50,8 +50,25 @@
>                                     <br/>
>                                     <wicket:ommessage key="135" />:
> <select wicket:id="salutations"/> <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"/>
> +                                   <br/>
> +                                   <wicket:ommessage key="1149" />
> +                                   <br/>
> +                                    <wicket:ommessage key="1148" />:
> <input type="checkbox" wicket:id="forceTimeZoneCheck" />
> +                                   <br/>
> +                                   <wicket:ommessage key="137" />: <input
> type="text" wicket:id="adresses.email"/>
> +                                   <br/>
> +                                   <wicket:ommessage key="607" />: <input
> type="text" wicket:id="adresses.phone"/>
> +                                   <br/>
> +                                   <wicket:ommessage key="1503" />:
> <input type="checkbox" wicket:id="sendSMS"/>
> +                                   <br/>
> +                                   <wicket:ommessage key="138" />: <input
> type="text" wicket:id="age"/>
> +                                   <br/>
> +                                   <br/>
>                                     <input type="submit" value="submit via
> ajax" wicket:id="ajax-button"/>
>                                 </form>
>                                 </td>
>
>
>


-- 
WBR
Maxim aka solomax