You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openmeetings.apache.org by so...@apache.org on 2015/02/10 20:18:46 UTC

svn commit: r1658785 - in /openmeetings: branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/user/ branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/user/ branches/3.0.x/src/web/java/org/apache/openmeetings/web/common/ branches/3.0.x/s...

Author: solomax
Date: Tue Feb 10 19:18:45 2015
New Revision: 1658785

URL: http://svn.apache.org/r1658785
Log:
[OPENMEETINGS-1170] profile tab is being updated on user settings update

Modified:
    openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/user/UserDao.java
    openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/user/Address.java
    openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/user/Organisation.java
    openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/user/Organisation_Users.java
    openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/user/State.java
    openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/user/User.java
    openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/common/BasePanel.java
    openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/common/GeneralUserForm.java
    openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/common/UserPanel.java
    openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/user/profile/SettingsPanel.java
    openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/user/profile/UserProfilePanel.html
    openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/user/profile/UserProfilePanel.java
    openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserDao.java
    openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/user/Organisation.java
    openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/user/OrganisationUser.java
    openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/user/State.java
    openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/user/User.java
    openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/BasePanel.java
    openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/GeneralUserForm.java
    openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/UserPanel.java
    openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/MainPage.html
    openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/SettingsPanel.java
    openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/UserProfilePanel.html
    openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/UserProfilePanel.java
    openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/UserChoiceProvider.java
    openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/css/theme.css
    openmeetings/trunk/singlewebapp/pom.xml

Modified: openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/user/UserDao.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/user/UserDao.java?rev=1658785&r1=1658784&r2=1658785&view=diff
==============================================================================
--- openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/user/UserDao.java (original)
+++ openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/dao/user/UserDao.java Tue Feb 10 19:18:45 2015
@@ -213,6 +213,10 @@ public class UserDao implements IDataPro
 			u.setUpdatetime(new Date());
 			u =	em.merge(u);
 		}
+		//this is necessary due to organisation details are lost on update
+		for (Organisation_Users ou : u.getOrganisation_users()) {
+			em.refresh(ou);
+		}
 		return u;
 	}
 	

Modified: openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/user/Address.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/user/Address.java?rev=1658785&r1=1658784&r2=1658785&view=diff
==============================================================================
--- openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/user/Address.java (original)
+++ openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/user/Address.java Tue Feb 10 19:18:45 2015
@@ -39,8 +39,7 @@ import org.simpleframework.xml.Root;
 @Table(name = "address")
 @Root(name="address")
 public class Address implements Serializable {
-
-	private static final long serialVersionUID = 1387576041912128161L;
+	private static final long serialVersionUID = 1L;
 	@Id
 	@GeneratedValue(strategy = GenerationType.IDENTITY)
 	@Column(name = "id")

Modified: openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/user/Organisation.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/user/Organisation.java?rev=1658785&r1=1658784&r2=1658785&view=diff
==============================================================================
--- openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/user/Organisation.java (original)
+++ openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/user/Organisation.java Tue Feb 10 19:18:45 2015
@@ -107,7 +107,6 @@ public class Organisation implements Ser
 		this.updatedby = updatedby;
 	}	
 	
-    
 	public Date getStarttime() {
 		return starttime;
 	}
@@ -127,5 +126,10 @@ public class Organisation implements Ser
 	}
 	public void setDeleted(boolean deleted) {
 		this.deleted = deleted;
+	}
+	@Override
+	public String toString() {
+		return "Organisation [id=" + organisation_id + ", name="
+				+ name + ", deleted=" + deleted + "]";
 	}	
 }

Modified: openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/user/Organisation_Users.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/user/Organisation_Users.java?rev=1658785&r1=1658784&r2=1658785&view=diff
==============================================================================
--- openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/user/Organisation_Users.java (original)
+++ openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/user/Organisation_Users.java Tue Feb 10 19:18:45 2015
@@ -49,7 +49,7 @@ import org.simpleframework.xml.Root;
 @Table(name = "organisation_users")
 @Root(name="user_organisation")
 public class Organisation_Users implements Serializable, IDataProviderEntity {
-	private static final long serialVersionUID = 7206870465903375817L;
+	private static final long serialVersionUID = 1L;
 	@Id
 	@GeneratedValue(strategy = GenerationType.IDENTITY)
 	@Column(name = "id")
@@ -77,12 +77,9 @@ public class Organisation_Users implemen
 	private boolean deleted;
 	
 	@Column(name = "is_moderator")
-	@Element(data=true, required=false)
+	@Element(data = true, required = false)
 	private Boolean isModerator;
 	
-	public Organisation_Users() {
-	}
-	
 	public Organisation_Users(Organisation organisation) {
 		this.organisation = organisation;
 	}
@@ -167,4 +164,12 @@ public class Organisation_Users implemen
 			return false;
 		return true;
 	}
+
+	@Override
+	public String toString() {
+		return "Organisation_Users [id="
+				+ organisation_users_id + ", organisation=" + organisation
+				+ ", user=" + user + ", deleted=" + deleted + "]";
+	}
+	
 }

Modified: openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/user/State.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/user/State.java?rev=1658785&r1=1658784&r2=1658785&view=diff
==============================================================================
--- openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/user/State.java (original)
+++ openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/user/State.java Tue Feb 10 19:18:45 2015
@@ -40,7 +40,7 @@ import javax.persistence.Table;
 })
 @Table(name = "state")
 public class State implements Serializable {
-	private static final long serialVersionUID = -1629546369219451403L;
+	private static final long serialVersionUID = 1L;
 	@Id
 	@GeneratedValue(strategy = GenerationType.IDENTITY)
 	@Column(name = "id")
@@ -119,4 +119,10 @@ public class State implements Serializab
 	public void setCode(int code) {
 		this.code = code;
 	}
+
+	@Override
+	public String toString() {
+		return "State [id=" + state_id + ", name=" + name + ", deleted="
+				+ deleted + ", shortName=" + shortName + ", code=" + code + "]";
+	}
 }

Modified: openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/user/User.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/user/User.java?rev=1658785&r1=1658784&r2=1658785&view=diff
==============================================================================
--- openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/user/User.java (original)
+++ openmeetings/branches/3.0.x/src/db/java/org/apache/openmeetings/db/entity/user/User.java Tue Feb 10 19:18:45 2015
@@ -588,11 +588,11 @@ public class User implements Serializabl
 
 	@Override
 	public String toString() {
-		return "User [user_id=" + user_id + ", firstname=" + firstname
+		return "User [id=" + user_id + ", firstname=" + firstname
 				+ ", lastname=" + lastname + ", login=" + login
 				+ ", pictureuri=" + pictureuri + ", deleted=" + deleted
 				+ ", language_id=" + language_id + ", adresses=" + adresses
-				+ ", externalId=" + externalUserId + ", externalType="
-				+ externalUserType + ", type=" + type + "]";
+				+ ", externalId=" + externalUserId + ", externalType=" + externalUserType
+				+ ", type=" + type + "]";
 	}
 }

Modified: openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/common/BasePanel.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/common/BasePanel.java?rev=1658785&r1=1658784&r2=1658785&view=diff
==============================================================================
--- openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/common/BasePanel.java (original)
+++ openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/common/BasePanel.java Tue Feb 10 19:18:45 2015
@@ -20,15 +20,21 @@ package org.apache.openmeetings.web.comm
 
 import org.apache.wicket.ajax.AjaxRequestTarget;
 import org.apache.wicket.markup.html.panel.Panel;
+import org.apache.wicket.model.IModel;
 
 public abstract class BasePanel extends Panel {
-	private static final long serialVersionUID = 8663740955529405678L;
+	private static final long serialVersionUID = 1L;
 
 	public BasePanel(String id) {
 		super(id);
 		setOutputMarkupId(true);
 	}
 
+	public BasePanel(String id, IModel<?> model) {
+		super(id, model);
+		setOutputMarkupId(true);
+	}
+
 	/**
 	 * Overwrite this method to execute Java code after Panel is loaded by the
 	 * {@link MenuPanel}

Modified: openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/common/GeneralUserForm.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/common/GeneralUserForm.java?rev=1658785&r1=1658784&r2=1658785&view=diff
==============================================================================
--- openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/common/GeneralUserForm.java (original)
+++ openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/common/GeneralUserForm.java Tue Feb 10 19:18:45 2015
@@ -134,8 +134,7 @@ public class GeneralUserForm extends For
 		add(new TextField<String>("adresses.additionalname"));
 		add(new TextField<String>("adresses.zip"));
 		add(new TextField<String>("adresses.town"));
-		add(new DropDownChoice<State>("adresses.states", getBean(StateDao.class).getStates()
-				, new ChoiceRenderer<State>("name", "state_id")));
+		add(new DropDownChoice<State>("adresses.states", getBean(StateDao.class).getStates(), new ChoiceRenderer<State>("name", "state_id")));
 		add(new TextArea<String>("adresses.comment"));
 
 		final List<Organisation_Users> orgUsers;

Modified: openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/common/UserPanel.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/common/UserPanel.java?rev=1658785&r1=1658784&r2=1658785&view=diff
==============================================================================
--- openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/common/UserPanel.java (original)
+++ openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/common/UserPanel.java Tue Feb 10 19:18:45 2015
@@ -29,15 +29,20 @@ import org.apache.openmeetings.db.dao.ro
 import org.apache.openmeetings.db.entity.room.Room;
 import org.apache.openmeetings.web.app.WebSession;
 import org.apache.wicket.authroles.authorization.strategies.role.annotations.AuthorizeInstantiation;
+import org.apache.wicket.model.IModel;
 
 @AuthorizeInstantiation("Dashboard")
 public abstract class UserPanel extends BasePanel {
-	private static final long serialVersionUID = 8607846885689465360L;
+	private static final long serialVersionUID = 1L;
 
 	public UserPanel(String id) {
 		super(id);
 	}
 	
+	public UserPanel(String id, IModel<?> model) {
+		super(id, model);
+	}
+	
 	public static List<Room> getMyRooms() {
 		List<Room> result = new ArrayList<Room>();
 		result.add(getBean(IRoomManager.class).getRoomByOwnerAndTypeId(getUserId(), 1L, WebSession.getString(1306L)));

Modified: openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/user/profile/SettingsPanel.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/user/profile/SettingsPanel.java?rev=1658785&r1=1658784&r2=1658785&view=diff
==============================================================================
--- openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/user/profile/SettingsPanel.java (original)
+++ openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/user/profile/SettingsPanel.java Tue Feb 10 19:18:45 2015
@@ -18,13 +18,16 @@
  */
 package org.apache.openmeetings.web.user.profile;
 
+import static org.apache.openmeetings.web.app.Application.getBean;
 import static org.apache.openmeetings.web.app.WebSession.getUserId;
 
 import java.util.ArrayList;
 import java.util.List;
 
+import org.apache.openmeetings.db.dao.user.UserDao;
 import org.apache.openmeetings.web.app.WebSession;
 import org.apache.openmeetings.web.common.UserPanel;
+import org.apache.wicket.ajax.AjaxRequestTarget;
 import org.apache.wicket.extensions.markup.html.tabs.AbstractTab;
 import org.apache.wicket.extensions.markup.html.tabs.ITab;
 import org.apache.wicket.markup.html.WebMarkupContainer;
@@ -46,12 +49,26 @@ public class SettingsPanel extends UserP
 		super(id);
 		
 		List<ITab> tabs = new ArrayList<ITab>();
-		tabs.add(new AbstractTab(Model.of(WebSession.getString(1170))) {
+		tabs.add(new AjaxTab(Model.of(WebSession.getString(1170))) {
 			private static final long serialVersionUID = 1L;
+			UserProfilePanel profilePanel = null;
 
 			@Override
-			public WebMarkupContainer getPanel(String panelId) {
-				return new UserProfilePanel(panelId, getUserId());
+			protected WebMarkupContainer getLazyPanel(String panelId) {
+				if (profilePanel == null) {
+					profilePanel = new UserProfilePanel(panelId, getUserId());
+					profilePanel.setOutputMarkupId(true);
+				}
+				return profilePanel;
+			}
+			
+			@Override
+			public boolean load(AjaxRequestTarget target) {
+				if (profilePanel != null) {
+					profilePanel.setDefaultModelObject(getBean(UserDao.class).get(getUserId()));
+					target.add(profilePanel);
+				}
+				return super.load(target);
 			}
 		});
 		tabs.add(new AjaxTab(Model.of(WebSession.getString(1188))) {
@@ -59,7 +76,7 @@ public class SettingsPanel extends UserP
 
 			@Override
 			protected WebMarkupContainer getLazyPanel(String panelId) {
-				return new MessagesContactsPanel(panelId); //TODO
+				return new MessagesContactsPanel(panelId);
 			}
 		});
 		tabs.add(new AbstractTab(Model.of(WebSession.getString(1171))) {

Modified: openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/user/profile/UserProfilePanel.html
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/user/profile/UserProfilePanel.html?rev=1658785&r1=1658784&r2=1658785&view=diff
==============================================================================
--- openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/user/profile/UserProfilePanel.html (original)
+++ openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/user/profile/UserProfilePanel.html Tue Feb 10 19:18:45 2015
@@ -30,10 +30,10 @@
 							<td><wicket:ommessage key="1164"/></td><td><span wicket:id="firstname"></span>&nbsp;<span wicket:id="lastname"></span></td>
 						</tr>
 						<tr>
-							<td><wicket:ommessage key="1165"/></td><td><span wicket:id="tz"></span></td>
+							<td><wicket:ommessage key="1165"/></td><td><span wicket:id="timeZoneId"></span></td>
 						</tr>
 						<tr>
-							<td><wicket:ommessage key="1296"/></td><td><span wicket:id="created"></span></td>
+							<td><wicket:ommessage key="1296"/></td><td><span wicket:id="regdate"></span></td>
 						</tr>
 					</table>
 				</td>
@@ -45,11 +45,11 @@
 				<table>
 					<tr>
 						<td><wicket:ommessage key="1162"/></td>
-						<td><textarea wicket:id="offer"></textarea></td>
+						<td><textarea wicket:id="userOffers"></textarea></td>
 					</tr>
 					<tr>
 						<td><wicket:ommessage key="1163"/></td>
-						<td><textarea wicket:id="interest"></textarea></td>
+						<td><textarea wicket:id="userSearchs"></textarea></td>
 					</tr>
 				</table>
 			</fieldset> 
@@ -60,23 +60,23 @@
 				<table wicket:id="address">
 					<tr>
 						<td><wicket:ommessage key="607" /></td>
-						<td><span wicket:id="phone"></span></td>
+						<td><span wicket:id="adresses.phone"></span></td>
 					</tr>
 					<tr>
 						<td><wicket:ommessage key="139" /></td>
-						<td><span wicket:id="street"></span>&nbsp;<span wicket:id="additionalname"></span></td>
+						<td><span wicket:id="adresses.street"></span>&nbsp;<span wicket:id="adresses.additionalname"></span></td>
 					</tr>
 					<tr>
 						<td><wicket:ommessage key="140" /></td>
-						<td><span wicket:id="zip"></span>&nbsp;<span wicket:id="town"></span></td>
+						<td><span wicket:id="adresses.zip"></span>&nbsp;<span wicket:id="adresses.town"></span></td>
 					</tr>
 					<tr>
 						<td><wicket:ommessage key="141" /></td>
-						<td><span wicket:id="state"></span></td>
+						<td><span wicket:id="adresses.states.name"></span></td>
 					</tr>
 					<tr>
 						<td><wicket:ommessage key="142" /></td>
-						<td><span wicket:id="address"></span></td>
+						<td><span wicket:id="adresses.comment"></span></td>
 					</tr>
 				</table>
 				<div wicket:id="addressDenied"></div>

Modified: openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/user/profile/UserProfilePanel.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/user/profile/UserProfilePanel.java?rev=1658785&r1=1658784&r2=1658785&view=diff
==============================================================================
--- openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/user/profile/UserProfilePanel.java (original)
+++ openmeetings/branches/3.0.x/src/web/java/org/apache/openmeetings/web/user/profile/UserProfilePanel.java Tue Feb 10 19:18:45 2015
@@ -23,8 +23,6 @@ import static org.apache.openmeetings.we
 
 import org.apache.openmeetings.db.dao.user.UserContactsDao;
 import org.apache.openmeetings.db.dao.user.UserDao;
-import org.apache.openmeetings.db.entity.user.Address;
-import org.apache.openmeetings.db.entity.user.State;
 import org.apache.openmeetings.db.entity.user.User;
 import org.apache.openmeetings.web.app.WebSession;
 import org.apache.openmeetings.web.common.ProfileImagePanel;
@@ -32,47 +30,44 @@ import org.apache.openmeetings.web.commo
 import org.apache.wicket.markup.html.WebMarkupContainer;
 import org.apache.wicket.markup.html.basic.Label;
 import org.apache.wicket.markup.html.form.TextArea;
-import org.apache.wicket.model.Model;
+import org.apache.wicket.model.CompoundPropertyModel;
 
 public class UserProfilePanel extends UserPanel {
 	private static final long serialVersionUID = 1L;
 	private final WebMarkupContainer address = new WebMarkupContainer("address");
 	private final Label addressDenied = new Label("addressDenied", "");
 
-	private void setAddress(User u) {
-		if (getUserId() == u.getUser_id() || Boolean.TRUE.equals(u.getShowContactData()) 
-				|| (Boolean.TRUE.equals(u.getShowContactDataToContacts())
-						&& getBean(UserContactsDao.class).checkUserContacts(u.getUser_id(), getUserId()) > 0))
+	public UserProfilePanel(String id, long userId) {
+		this(id, new CompoundPropertyModel<User>(getBean(UserDao.class).get(userId)));
+	}
+	
+	public UserProfilePanel(String id, CompoundPropertyModel<User> model) {
+		super(id, model);
+
+		add(new ProfileImagePanel("img", model.getObject().getUser_id()));
+		add(new Label("firstname"));
+		add(new Label("lastname"));
+		add(new Label("timeZoneId"));
+		add(new Label("regdate"));
+		add(new TextArea<String>("userOffers").setEnabled(false));
+		add(new TextArea<String>("userSearchs").setEnabled(false));
+		if (getUserId() == model.getObject().getUser_id() || Boolean.TRUE.equals(model.getObject().getShowContactData()) 
+				|| (Boolean.TRUE.equals(model.getObject().getShowContactDataToContacts())
+						&& getBean(UserContactsDao.class).checkUserContacts(model.getObject().getUser_id(), getUserId()) > 0))
 		{
 			addressDenied.setVisible(false);
-			Address a = u.getAdresses() == null ? new Address() : u.getAdresses();
-			address.add(new Label("phone", a.getPhone()));
-			address.add(new Label("street", a.getStreet()));
-			address.add(new Label("additionalname", a.getAdditionalname()));
-			address.add(new Label("zip", a.getZip()));
-			address.add(new Label("town", a.getTown()));
-			State s = a.getStates();
-			address.add(new Label("state", s == null ? null : s.getName()));
-			address.add(new Label("address", a.getComment()));
+			address.add(new Label("adresses.phone"));
+			address.add(new Label("adresses.street"));
+			address.add(new Label("adresses.additionalname"));
+			address.add(new Label("adresses.zip"));
+			address.add(new Label("adresses.town"));
+			address.add(new Label("adresses.states.name"));
+			address.add(new Label("adresses.comment"));
 		} else {
 			address.setVisible(false);
-			addressDenied.setDefaultModelObject(WebSession.getString(Boolean.TRUE.equals(u.getShowContactDataToContacts()) ? 1269 : 1268));
+			addressDenied.setDefaultModelObject(WebSession.getString(Boolean.TRUE.equals(model.getObject().getShowContactDataToContacts()) ? 1269 : 1268));
 		}
-	}
-	
-	public UserProfilePanel(String id, long userId) {
-		super(id);
-
-		User u = getBean(UserDao.class).get(userId);
-		add(new ProfileImagePanel("img", userId));
-		add(new Label("firstname", u.getFirstname()));
-		add(new Label("lastname", u.getLastname()));
-		add(new Label("tz", u.getTimeZoneId()));
-		add(new Label("created", u.getRegdate()));
-		add(new TextArea<String>("offer", Model.of(u.getUserOffers())).setEnabled(false));
-		add(new TextArea<String>("interest", Model.of(u.getUserSearchs())).setEnabled(false));
-		setAddress(u);
-		add(address);
+		add(address.setDefaultModel(model));
 		add(addressDenied);
 	}
 }

Modified: openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserDao.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserDao.java?rev=1658785&r1=1658784&r2=1658785&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserDao.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserDao.java Tue Feb 10 19:18:45 2015
@@ -213,6 +213,10 @@ public class UserDao implements IDataPro
 			u.setUpdatetime(new Date());
 			u =	em.merge(u);
 		}
+		//this is necessary due to organisation details are lost on update
+		for (OrganisationUser ou : u.getOrganisationUsers()) {
+			em.refresh(ou);
+		}
 		return u;
 	}
 	

Modified: openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/user/Organisation.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/user/Organisation.java?rev=1658785&r1=1658784&r2=1658785&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/user/Organisation.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/user/Organisation.java Tue Feb 10 19:18:45 2015
@@ -126,5 +126,10 @@ public class Organisation implements IDa
 	}
 	public void setDeleted(boolean deleted) {
 		this.deleted = deleted;
+	}
+	@Override
+	public String toString() {
+		return "Organisation [id=" + id + ", name="
+				+ name + ", deleted=" + deleted + "]";
 	}	
 }

Modified: openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/user/OrganisationUser.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/user/OrganisationUser.java?rev=1658785&r1=1658784&r2=1658785&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/user/OrganisationUser.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/user/OrganisationUser.java Tue Feb 10 19:18:45 2015
@@ -79,9 +79,6 @@ public class OrganisationUser implements
 	@Element(data = true, required = false)
 	private Boolean isModerator;
 	
-	public OrganisationUser() {
-	}
-	
 	public OrganisationUser(Organisation organisation) {
 		this.organisation = organisation;
 	}
@@ -166,4 +163,12 @@ public class OrganisationUser implements
 			return false;
 		return true;
 	}
+
+	@Override
+	public String toString() {
+		return "Organisation_Users [id="
+				+ id + ", organisation=" + organisation
+				+ ", user=" + user + ", deleted=" + deleted + "]";
+	}
+	
 }

Modified: openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/user/State.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/user/State.java?rev=1658785&r1=1658784&r2=1658785&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/user/State.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/user/State.java Tue Feb 10 19:18:45 2015
@@ -118,4 +118,10 @@ public class State implements IDataProvi
 	public void setCode(int code) {
 		this.code = code;
 	}
+
+	@Override
+	public String toString() {
+		return "State [id=" + id + ", name=" + name + ", deleted="
+				+ deleted + ", shortName=" + shortName + ", code=" + code + "]";
+	}
 }

Modified: openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/user/User.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/user/User.java?rev=1658785&r1=1658784&r2=1658785&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/user/User.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/user/User.java Tue Feb 10 19:18:45 2015
@@ -585,11 +585,11 @@ public class User implements IDataProvid
 
 	@Override
 	public String toString() {
-		return "User [user_id=" + id + ", firstname=" + firstname
+		return "User [id=" + id + ", firstname=" + firstname
 				+ ", lastname=" + lastname + ", login=" + login
 				+ ", pictureuri=" + pictureuri + ", deleted=" + deleted
 				+ ", languageId=" + languageId + ", adresses=" + adresses
-				+ ", externalId=" + externalUserId + ", externalType="
-				+ externalUserType + ", type=" + type + "]";
+				+ ", externalId=" + externalUserId + ", externalType=" + externalUserType
+				+ ", type=" + type + "]";
 	}
 }

Modified: openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/BasePanel.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/BasePanel.java?rev=1658785&r1=1658784&r2=1658785&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/BasePanel.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/BasePanel.java Tue Feb 10 19:18:45 2015
@@ -22,6 +22,7 @@ import org.apache.openmeetings.web.commo
 import org.apache.openmeetings.web.pages.MainPage;
 import org.apache.wicket.ajax.AjaxRequestTarget;
 import org.apache.wicket.markup.html.panel.Panel;
+import org.apache.wicket.model.IModel;
 
 public abstract class BasePanel extends Panel {
 	private static final long serialVersionUID = 1L;
@@ -31,6 +32,11 @@ public abstract class BasePanel extends
 		setOutputMarkupId(true);
 	}
 
+	public BasePanel(String id, IModel<?> model) {
+		super(id, model);
+		setOutputMarkupId(true);
+	}
+
 	protected MainPage getMainPage() {
 		return (MainPage)super.getPage();
 	}

Modified: openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/GeneralUserForm.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/GeneralUserForm.java?rev=1658785&r1=1658784&r2=1658785&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/GeneralUserForm.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/GeneralUserForm.java Tue Feb 10 19:18:45 2015
@@ -60,7 +60,6 @@ import org.apache.wicket.model.IModel;
 import org.apache.wicket.model.Model;
 import org.apache.wicket.model.PropertyModel;
 import org.apache.wicket.util.string.Strings;
-
 import org.wicketstuff.select2.Response;
 import org.wicketstuff.select2.Select2MultiChoice;
 import org.wicketstuff.select2.TextChoiceProvider;

Modified: openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/UserPanel.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/UserPanel.java?rev=1658785&r1=1658784&r2=1658785&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/UserPanel.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/UserPanel.java Tue Feb 10 19:18:45 2015
@@ -29,6 +29,7 @@ import org.apache.openmeetings.db.dao.ro
 import org.apache.openmeetings.db.entity.room.Room;
 import org.apache.openmeetings.web.app.WebSession;
 import org.apache.wicket.authroles.authorization.strategies.role.annotations.AuthorizeInstantiation;
+import org.apache.wicket.model.IModel;
 
 @AuthorizeInstantiation("Dashboard")
 public abstract class UserPanel extends BasePanel {
@@ -38,6 +39,10 @@ public abstract class UserPanel extends
 		super(id);
 	}
 	
+	public UserPanel(String id, IModel<?> model) {
+		super(id, model);
+	}
+	
 	public static List<Room> getMyRooms() {
 		List<Room> result = new ArrayList<Room>();
 		result.add(getBean(IRoomManager.class).getRoomByOwnerAndTypeId(getUserId(), 1L, WebSession.getString(1306L)));

Modified: openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/MainPage.html
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/MainPage.html?rev=1658785&r1=1658784&r2=1658785&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/MainPage.html (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/MainPage.html Tue Feb 10 19:18:45 2015
@@ -49,7 +49,7 @@
 			wicket:id="about"><wicket:ommessage key="1549"/></a></span>
 		</div>
 		<div wicket:id="dev" id="devMenu"/>
-		<div id="busy_indicator"><wicket:ommessage key="1554"/></div>
+		<div id="busy_indicator" class="ui-widget-header"><span><wicket:ommessage key="1554"/></span></div>
 		<div wicket:id="menu"></div>
 	</div>
 	<div wicket:id="contents"><div wicket:id="child"></div></div>

Modified: openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/SettingsPanel.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/SettingsPanel.java?rev=1658785&r1=1658784&r2=1658785&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/SettingsPanel.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/SettingsPanel.java Tue Feb 10 19:18:45 2015
@@ -18,13 +18,16 @@
  */
 package org.apache.openmeetings.web.user.profile;
 
+import static org.apache.openmeetings.web.app.Application.getBean;
 import static org.apache.openmeetings.web.app.WebSession.getUserId;
 
 import java.util.ArrayList;
 import java.util.List;
 
+import org.apache.openmeetings.db.dao.user.UserDao;
 import org.apache.openmeetings.web.app.WebSession;
 import org.apache.openmeetings.web.common.UserPanel;
+import org.apache.wicket.ajax.AjaxRequestTarget;
 import org.apache.wicket.extensions.markup.html.tabs.AbstractTab;
 import org.apache.wicket.extensions.markup.html.tabs.ITab;
 import org.apache.wicket.markup.html.WebMarkupContainer;
@@ -46,12 +49,26 @@ public class SettingsPanel extends UserP
 		super(id);
 		
 		List<ITab> tabs = new ArrayList<ITab>();
-		tabs.add(new AbstractTab(Model.of(WebSession.getString(1170))) {
+		tabs.add(new AjaxTab(Model.of(WebSession.getString(1170))) {
 			private static final long serialVersionUID = 1L;
+			UserProfilePanel profilePanel = null;
 
 			@Override
-			public WebMarkupContainer getPanel(String panelId) {
-				return new UserProfilePanel(panelId, getUserId());
+			protected WebMarkupContainer getLazyPanel(String panelId) {
+				if (profilePanel == null) {
+					profilePanel = new UserProfilePanel(panelId, getUserId());
+					profilePanel.setOutputMarkupId(true);
+				}
+				return profilePanel;
+			}
+			
+			@Override
+			public boolean load(AjaxRequestTarget target) {
+				if (profilePanel != null) {
+					profilePanel.setDefaultModelObject(getBean(UserDao.class).get(getUserId()));
+					target.add(profilePanel);
+				}
+				return super.load(target);
 			}
 		});
 		tabs.add(new AjaxTab(Model.of(WebSession.getString(1188))) {
@@ -59,7 +76,7 @@ public class SettingsPanel extends UserP
 
 			@Override
 			protected WebMarkupContainer getLazyPanel(String panelId) {
-				return new MessagesContactsPanel(panelId); //TODO
+				return new MessagesContactsPanel(panelId);
 			}
 		});
 		tabs.add(new AbstractTab(Model.of(WebSession.getString(1171))) {

Modified: openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/UserProfilePanel.html
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/UserProfilePanel.html?rev=1658785&r1=1658784&r2=1658785&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/UserProfilePanel.html (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/UserProfilePanel.html Tue Feb 10 19:18:45 2015
@@ -30,10 +30,10 @@
 							<td><wicket:ommessage key="1164"/></td><td><span wicket:id="firstname"></span>&nbsp;<span wicket:id="lastname"></span></td>
 						</tr>
 						<tr>
-							<td><wicket:ommessage key="1165"/></td><td><span wicket:id="tz"></span></td>
+							<td><wicket:ommessage key="1165"/></td><td><span wicket:id="timeZoneId"></span></td>
 						</tr>
 						<tr>
-							<td><wicket:ommessage key="1296"/></td><td><span wicket:id="created"></span></td>
+							<td><wicket:ommessage key="1296"/></td><td><span wicket:id="regdate"></span></td>
 						</tr>
 					</table>
 				</td>
@@ -45,11 +45,11 @@
 				<table>
 					<tr>
 						<td><wicket:ommessage key="1162"/></td>
-						<td><textarea wicket:id="offer"></textarea></td>
+						<td><textarea wicket:id="userOffers"></textarea></td>
 					</tr>
 					<tr>
 						<td><wicket:ommessage key="1163"/></td>
-						<td><textarea wicket:id="interest"></textarea></td>
+						<td><textarea wicket:id="userSearchs"></textarea></td>
 					</tr>
 				</table>
 			</fieldset> 
@@ -60,23 +60,23 @@
 				<table wicket:id="address">
 					<tr>
 						<td><wicket:ommessage key="607" /></td>
-						<td><span wicket:id="phone"></span></td>
+						<td><span wicket:id="adresses.phone"></span></td>
 					</tr>
 					<tr>
 						<td><wicket:ommessage key="139" /></td>
-						<td><span wicket:id="street"></span>&nbsp;<span wicket:id="additionalname"></span></td>
+						<td><span wicket:id="adresses.street"></span>&nbsp;<span wicket:id="adresses.additionalname"></span></td>
 					</tr>
 					<tr>
 						<td><wicket:ommessage key="140" /></td>
-						<td><span wicket:id="zip"></span>&nbsp;<span wicket:id="town"></span></td>
+						<td><span wicket:id="adresses.zip"></span>&nbsp;<span wicket:id="adresses.town"></span></td>
 					</tr>
 					<tr>
 						<td><wicket:ommessage key="141" /></td>
-						<td><span wicket:id="state"></span></td>
+						<td><span wicket:id="adresses.states.name"></span></td>
 					</tr>
 					<tr>
 						<td><wicket:ommessage key="142" /></td>
-						<td><span wicket:id="address"></span></td>
+						<td><span wicket:id="adresses.comment"></span></td>
 					</tr>
 				</table>
 				<div wicket:id="addressDenied"></div>

Modified: openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/UserProfilePanel.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/UserProfilePanel.java?rev=1658785&r1=1658784&r2=1658785&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/UserProfilePanel.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/UserProfilePanel.java Tue Feb 10 19:18:45 2015
@@ -23,8 +23,6 @@ import static org.apache.openmeetings.we
 
 import org.apache.openmeetings.db.dao.user.UserContactsDao;
 import org.apache.openmeetings.db.dao.user.UserDao;
-import org.apache.openmeetings.db.entity.user.Address;
-import org.apache.openmeetings.db.entity.user.State;
 import org.apache.openmeetings.db.entity.user.User;
 import org.apache.openmeetings.web.app.WebSession;
 import org.apache.openmeetings.web.common.ProfileImagePanel;
@@ -32,46 +30,43 @@ import org.apache.openmeetings.web.commo
 import org.apache.wicket.markup.html.WebMarkupContainer;
 import org.apache.wicket.markup.html.basic.Label;
 import org.apache.wicket.markup.html.form.TextArea;
-import org.apache.wicket.model.Model;
+import org.apache.wicket.model.CompoundPropertyModel;
 
 public class UserProfilePanel extends UserPanel {
 	private static final long serialVersionUID = 1L;
 	private final WebMarkupContainer address = new WebMarkupContainer("address");
 	private final Label addressDenied = new Label("addressDenied", "");
 
-	private void setAddress(User u) {
-		if (getUserId() == u.getId() || u.isShowContactData() || (u.isShowContactDataToContacts() 
-				&& getBean(UserContactsDao.class).checkUserContacts(u.getId(), getUserId()) > 0))
+	public UserProfilePanel(String id, long userId) {
+		this(id, new CompoundPropertyModel<User>(getBean(UserDao.class).get(userId)));
+	}
+	
+	public UserProfilePanel(String id, CompoundPropertyModel<User> model) {
+		super(id, model);
+
+		add(new ProfileImagePanel("img", model.getObject().getId()));
+		add(new Label("firstname"));
+		add(new Label("lastname"));
+		add(new Label("timeZoneId"));
+		add(new Label("regdate"));
+		add(new TextArea<String>("userOffers").setEnabled(false));
+		add(new TextArea<String>("userSearchs").setEnabled(false));
+		if (getUserId() == model.getObject().getId() || model.getObject().isShowContactData() 
+				|| (model.getObject().isShowContactDataToContacts() && getBean(UserContactsDao.class).checkUserContacts(model.getObject().getId(), getUserId()) > 0))
 		{
 			addressDenied.setVisible(false);
-			Address a = u.getAdresses() == null ? new Address() : u.getAdresses();
-			address.add(new Label("phone", a.getPhone()));
-			address.add(new Label("street", a.getStreet()));
-			address.add(new Label("additionalname", a.getAdditionalname()));
-			address.add(new Label("zip", a.getZip()));
-			address.add(new Label("town", a.getTown()));
-			State s = a.getStates();
-			address.add(new Label("state", s == null ? null : s.getName()));
-			address.add(new Label("address", a.getComment()));
+			address.add(new Label("adresses.phone"));
+			address.add(new Label("adresses.street"));
+			address.add(new Label("adresses.additionalname"));
+			address.add(new Label("adresses.zip"));
+			address.add(new Label("adresses.town"));
+			address.add(new Label("adresses.states.name"));
+			address.add(new Label("adresses.comment"));
 		} else {
 			address.setVisible(false);
-			addressDenied.setDefaultModelObject(WebSession.getString(u.isShowContactDataToContacts() ? 1269 : 1268));
+			addressDenied.setDefaultModelObject(WebSession.getString(Boolean.TRUE.equals(model.getObject().isShowContactDataToContacts()) ? 1269 : 1268));
 		}
-	}
-	
-	public UserProfilePanel(String id, long userId) {
-		super(id);
-
-		User u = getBean(UserDao.class).get(userId);
-		add(new ProfileImagePanel("img", userId));
-		add(new Label("firstname", u.getFirstname()));
-		add(new Label("lastname", u.getLastname()));
-		add(new Label("tz", u.getTimeZoneId()));
-		add(new Label("created", u.getRegdate()));
-		add(new TextArea<String>("offer", Model.of(u.getUserOffers())).setEnabled(false));
-		add(new TextArea<String>("interest", Model.of(u.getUserSearchs())).setEnabled(false));
-		setAddress(u);
-		add(address);
+		add(address.setDefaultModel(model));
 		add(addressDenied);
 	}
 }

Modified: openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/UserChoiceProvider.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/UserChoiceProvider.java?rev=1658785&r1=1658784&r2=1658785&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/UserChoiceProvider.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/UserChoiceProvider.java Tue Feb 10 19:18:45 2015
@@ -36,7 +36,7 @@ import org.apache.wicket.validation.Vali
 import org.wicketstuff.select2.ChoiceProvider;
 import org.wicketstuff.select2.Response;
 
-public class UserChoiceProvider extends ChoiceProvider<User> {
+public class UserChoiceProvider implements ChoiceProvider<User> {
 	private static final long serialVersionUID = 1L;
 	private final static int PAGE_SIZE = 10;
 	private Map<String, User> newContacts = new Hashtable<String, User>();
@@ -109,10 +109,15 @@ public class UserChoiceProvider extends
 		return c;
 	}
 
+	@Override
     public void toJson(User choice, JSONWriter writer) throws JSONException {
     	writer
     		.key("id").value(getId(choice))
     		.key("text").value(FormatHelper.formatUser(choice, true))
     		.key("contact").value(choice.getType() == Type.contact);
-    };
+    }
+
+	@Override
+	public void detach() {
+	}
 }

Modified: openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/css/theme.css
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/css/theme.css?rev=1658785&r1=1658784&r2=1658785&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/css/theme.css (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/css/theme.css Tue Feb 10 19:18:45 2015
@@ -69,13 +69,16 @@ html, body {
 #busy_indicator {
 	display: none;
 	float: right;
-	margin-top: 5px;
 	z-index: 1000;
 	width: 200px;
 	font-weight: bold;
 	text-align: center;
 	font-size: 1em;
 	color: #FF0000;
+	height: 30px;
+}
+#busy_indicator span {
+	margin-top: 5px;
 }
 .clickable {
 	cursor: pointer;

Modified: openmeetings/trunk/singlewebapp/pom.xml
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/pom.xml?rev=1658785&r1=1658784&r2=1658785&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/pom.xml (original)
+++ openmeetings/trunk/singlewebapp/pom.xml Tue Feb 10 19:18:45 2015
@@ -43,7 +43,7 @@
 		<maven-site.version>3.4</maven-site.version>
 		<wicket.version>7.0.0-M5</wicket.version>
 		<wicketju.version>7.0.0-M5</wicketju.version>
-		<wickets.version>7.0.0-M4</wickets.version>
+		<wickets.version>7.0.0-M5</wickets.version>
 		<red5-server.version>1.0.5-RELEASE</red5-server.version>
 		<red5-client.version>1.0.5-RELEASE</red5-client.version>
 		<batik.version>1.7</batik.version>