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 2017/02/25 15:39:50 UTC

svn commit: r1784387 - in /openmeetings/application: branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/ branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/ branches/3.2.x/openmeetings-web/src/ma...

Author: solomax
Date: Sat Feb 25 15:39:50 2017
New Revision: 1784387

URL: http://svn.apache.org/viewvc?rev=1784387&view=rev
Log:
no jira: OmAjaxClientInfoBehavior is created

Added:
    openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/OmAjaxClientInfoBehavior.java
    openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/OmAjaxClientInfoBehavior.java
Modified:
    openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/WebSession.java
    openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/MainPanel.java
    openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/SignInDialog.java
    openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java
    openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/WebSession.java
    openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/MainPanel.java
    openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/SignInDialog.java
    openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java

Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/WebSession.java
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/WebSession.java?rev=1784387&r1=1784386&r2=1784387&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/WebSession.java (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/WebSession.java Sat Feb 25 15:39:50 2017
@@ -74,11 +74,13 @@ import org.apache.openmeetings.web.user.
 import org.apache.openmeetings.web.user.dashboard.WelcomeWidgetDescriptor;
 import org.apache.openmeetings.web.user.dashboard.admin.AdminWidget;
 import org.apache.openmeetings.web.user.dashboard.admin.AdminWidgetDescriptor;
+import org.apache.openmeetings.web.util.ExtendedClientProperties;
 import org.apache.openmeetings.web.util.OmUrlFragment;
 import org.apache.openmeetings.web.util.UserDashboard;
 import org.apache.wicket.authentication.IAuthenticationStrategy;
 import org.apache.wicket.authroles.authentication.AbstractAuthenticatedWebSession;
 import org.apache.wicket.authroles.authorization.strategies.role.Roles;
+import org.apache.wicket.core.request.ClientInfo;
 import org.apache.wicket.request.Request;
 import org.apache.wicket.util.string.StringValue;
 import org.apache.wicket.util.string.Strings;
@@ -113,6 +115,7 @@ public class WebSession extends Abstract
 	private Long loginError = null;
 	private String externalType;
 	private boolean kickedByAdmin = false;
+	private ExtendedClientProperties extProps = new ExtendedClientProperties();
 
 	public WebSession(Request request) {
 		super(request);
@@ -137,6 +140,7 @@ public class WebSession extends Abstract
 		browserTz = null;
 		loginError = null;
 		browserLocale = null;
+		extProps = new ExtendedClientProperties();
 	}
 
 	@Override
@@ -271,6 +275,8 @@ public class WebSession extends Abstract
 		Long _roomId = roomId;
 		Invitation _i = i;
 		SOAPLogin _soap = soap;
+		ClientInfo _info = clientInfo;
+		ExtendedClientProperties _extProps = extProps;
 		replaceSession(); // required to prevent session fixation
 		if (_sid != null) {
 			SID = _sid;
@@ -287,6 +293,12 @@ public class WebSession extends Abstract
 		if (_soap != null) {
 			soap = _soap;
 		}
+		if (_info != null) {
+			clientInfo = _info;
+		}
+		if (_extProps != null) {
+			extProps = _extProps;
+		}
 		userId = u.getId();
 		if (rights == null || rights.isEmpty()) {
 			Set<Right> r = new HashSet<>(u.getRights());
@@ -591,4 +603,8 @@ public class WebSession extends Abstract
 			Application.get().restartResponseAtSignInPage();
 		}
 	}
+
+	public ExtendedClientProperties getExtendedProperties() {
+		return extProps;
+	}
 }

Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/MainPanel.java
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/MainPanel.java?rev=1784387&r1=1784386&r2=1784387&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/MainPanel.java (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/MainPanel.java Sat Feb 25 15:39:50 2017
@@ -58,25 +58,21 @@ import org.apache.openmeetings.web.user.
 import org.apache.openmeetings.web.user.UserInfoDialog;
 import org.apache.openmeetings.web.user.chat.ChatPanel;
 import org.apache.openmeetings.web.util.ContactsHelper;
-import org.apache.openmeetings.web.util.ExtendedClientProperties;
 import org.apache.openmeetings.web.util.OmUrlFragment;
 import org.apache.wicket.Component;
 import org.apache.wicket.MarkupContainer;
 import org.apache.wicket.ajax.AbstractAjaxTimerBehavior;
 import org.apache.wicket.ajax.AbstractDefaultAjaxBehavior;
-import org.apache.wicket.ajax.AjaxClientInfoBehavior;
 import org.apache.wicket.ajax.AjaxRequestTarget;
 import org.apache.wicket.ajax.markup.html.AjaxLink;
 import org.apache.wicket.core.request.handler.IPartialPageRequestHandler;
 import org.apache.wicket.devutils.debugbar.DebugBar;
 import org.apache.wicket.markup.head.IHeaderResponse;
-import org.apache.wicket.markup.head.JavaScriptHeaderItem;
 import org.apache.wicket.markup.head.PriorityHeaderItem;
 import org.apache.wicket.markup.html.WebMarkupContainer;
 import org.apache.wicket.markup.html.panel.EmptyPanel;
 import org.apache.wicket.markup.html.panel.Panel;
 import org.apache.wicket.model.CompoundPropertyModel;
-import org.apache.wicket.protocol.http.request.WebClientInfo;
 import org.apache.wicket.protocol.ws.api.WebSocketBehavior;
 import org.apache.wicket.protocol.ws.api.WebSocketRequestHandler;
 import org.apache.wicket.protocol.ws.api.message.AbortedMessage;
@@ -84,8 +80,6 @@ import org.apache.wicket.protocol.ws.api
 import org.apache.wicket.protocol.ws.api.message.ClosedMessage;
 import org.apache.wicket.protocol.ws.api.message.ConnectedMessage;
 import org.apache.wicket.protocol.ws.api.message.TextMessage;
-import org.apache.wicket.request.cycle.RequestCycle;
-import org.apache.wicket.request.resource.JavaScriptResourceReference;
 import org.apache.wicket.util.time.Duration;
 import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
@@ -117,7 +111,6 @@ public class MainPanel extends Panel {
 			WebSocketHelper.sendClient(client, new byte[1]);
 		}
 	};
-	private final ExtendedClientProperties extProps = new ExtendedClientProperties();
 
 	public MainPanel(String id) {
 		this(id, null);
@@ -259,20 +252,7 @@ public class MainPanel extends Panel {
 				client = null;
 			}
 		});
-		add(new AjaxClientInfoBehavior() {
-			private static final long serialVersionUID = 1L;
-
-			@Override
-			public void renderHead(Component component, IHeaderResponse response) {
-				super.renderHead(component, response);
-				response.render(JavaScriptHeaderItem.forReference(new JavaScriptResourceReference(MainPanel.class, "main.js")));
-			}
-
-			@Override
-			protected WebClientInfo newWebClientInfo(RequestCycle requestCycle) {
-				return new WebClientInfo(requestCycle, extProps);
-			}
-		});
+		add(new OmAjaxClientInfoBehavior());
 	}
 
 	@Override
@@ -370,8 +350,4 @@ public class MainPanel extends Panel {
 	public Client getClient() {
 		return client;
 	}
-
-	public ExtendedClientProperties getExtendedProperties() {
-		return extProps;
-	}
 }

Added: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/OmAjaxClientInfoBehavior.java
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/OmAjaxClientInfoBehavior.java?rev=1784387&view=auto
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/OmAjaxClientInfoBehavior.java (added)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/OmAjaxClientInfoBehavior.java Sat Feb 25 15:39:50 2017
@@ -0,0 +1,43 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License") +  you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.openmeetings.web.common;
+
+import org.apache.openmeetings.web.app.WebSession;
+import org.apache.wicket.Component;
+import org.apache.wicket.ajax.AjaxClientInfoBehavior;
+import org.apache.wicket.markup.head.IHeaderResponse;
+import org.apache.wicket.markup.head.JavaScriptHeaderItem;
+import org.apache.wicket.protocol.http.request.WebClientInfo;
+import org.apache.wicket.request.cycle.RequestCycle;
+import org.apache.wicket.request.resource.JavaScriptResourceReference;
+
+public class OmAjaxClientInfoBehavior extends AjaxClientInfoBehavior {
+	private static final long serialVersionUID = 1L;
+
+	@Override
+	public void renderHead(Component component, IHeaderResponse response) {
+		super.renderHead(component, response);
+		response.render(JavaScriptHeaderItem.forReference(new JavaScriptResourceReference(MainPanel.class, "main.js")));
+	}
+
+	@Override
+	protected WebClientInfo newWebClientInfo(RequestCycle requestCycle) {
+		return new WebClientInfo(requestCycle, WebSession.get().getExtendedProperties());
+	}
+}

Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/SignInDialog.java
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/SignInDialog.java?rev=1784387&r1=1784386&r2=1784387&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/SignInDialog.java (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/SignInDialog.java Sat Feb 25 15:39:50 2017
@@ -40,10 +40,10 @@ import org.apache.openmeetings.db.entity
 import org.apache.openmeetings.web.app.Application;
 import org.apache.openmeetings.web.app.OmAuthenticationStrategy;
 import org.apache.openmeetings.web.app.WebSession;
+import org.apache.openmeetings.web.common.OmAjaxClientInfoBehavior;
 import org.apache.openmeetings.web.pages.HashPage;
 import org.apache.wicket.AttributeModifier;
 import org.apache.wicket.RestartResponseException;
-import org.apache.wicket.ajax.AjaxClientInfoBehavior;
 import org.apache.wicket.ajax.AjaxEventBehavior;
 import org.apache.wicket.ajax.AjaxRequestTarget;
 import org.apache.wicket.ajax.markup.html.AjaxLink;
@@ -92,7 +92,7 @@ public class SignInDialog extends Abstra
 	public SignInDialog(String id) {
 		super(id, Application.getString(108));
 		add(form = new SignInForm("signin"));
-		add(new AjaxClientInfoBehavior());
+		add(new OmAjaxClientInfoBehavior());
 	}
 
 	public void setRegisterDialog(RegisterDialog r) {

Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java?rev=1784387&r1=1784386&r2=1784387&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java Sat Feb 25 15:39:50 2017
@@ -202,7 +202,7 @@ public class RoomMenuPanel extends Panel
 		add((roomName = new Label("roomName", r.getName())).setOutputMarkupPlaceholderTag(true).setOutputMarkupId(true));
 		String tag = getGroup().getTag();
 		add(logo, new Label("tag", tag).setVisible(!Strings.isEmpty(tag)));
-		add((shareBtn = new StartSharingButton("share", room.getClient(), room.getMainPanel().getExtendedProperties()))
+		add((shareBtn = new StartSharingButton("share", room.getClient(), WebSession.get().getExtendedProperties()))
 				.setOutputMarkupPlaceholderTag(true).setOutputMarkupId(true));
 		RoomInvitationForm rif = new RoomInvitationForm("form", room.getRoom().getId());
 		add(invite = new InvitationDialog("invite", rif));

Modified: openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/WebSession.java
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/WebSession.java?rev=1784387&r1=1784386&r2=1784387&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/WebSession.java (original)
+++ openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/WebSession.java Sat Feb 25 15:39:50 2017
@@ -74,11 +74,13 @@ import org.apache.openmeetings.web.user.
 import org.apache.openmeetings.web.user.dashboard.WelcomeWidgetDescriptor;
 import org.apache.openmeetings.web.user.dashboard.admin.AdminWidget;
 import org.apache.openmeetings.web.user.dashboard.admin.AdminWidgetDescriptor;
+import org.apache.openmeetings.web.util.ExtendedClientProperties;
 import org.apache.openmeetings.web.util.OmUrlFragment;
 import org.apache.openmeetings.web.util.UserDashboard;
 import org.apache.wicket.authentication.IAuthenticationStrategy;
 import org.apache.wicket.authroles.authentication.AbstractAuthenticatedWebSession;
 import org.apache.wicket.authroles.authorization.strategies.role.Roles;
+import org.apache.wicket.core.request.ClientInfo;
 import org.apache.wicket.request.Request;
 import org.apache.wicket.util.string.StringValue;
 import org.apache.wicket.util.string.Strings;
@@ -113,6 +115,7 @@ public class WebSession extends Abstract
 	private Long loginError = null;
 	private String externalType;
 	private boolean kickedByAdmin = false;
+	private ExtendedClientProperties extProps = new ExtendedClientProperties();
 
 	public WebSession(Request request) {
 		super(request);
@@ -137,6 +140,7 @@ public class WebSession extends Abstract
 		browserTz = null;
 		loginError = null;
 		browserLocale = null;
+		extProps = new ExtendedClientProperties();
 	}
 
 	@Override
@@ -271,6 +275,8 @@ public class WebSession extends Abstract
 		Long _roomId = roomId;
 		Invitation _i = i;
 		SOAPLogin _soap = soap;
+		ClientInfo _info = clientInfo;
+		ExtendedClientProperties _extProps = extProps;
 		replaceSession(); // required to prevent session fixation
 		if (_sid != null) {
 			SID = _sid;
@@ -287,6 +293,12 @@ public class WebSession extends Abstract
 		if (_soap != null) {
 			soap = _soap;
 		}
+		if (_info != null) {
+			clientInfo = _info;
+		}
+		if (_extProps != null) {
+			extProps = _extProps;
+		}
 		userId = u.getId();
 		if (rights == null || rights.isEmpty()) {
 			Set<Right> r = new HashSet<>(u.getRights());
@@ -591,4 +603,8 @@ public class WebSession extends Abstract
 			Application.get().restartResponseAtSignInPage();
 		}
 	}
+
+	public ExtendedClientProperties getExtendedProperties() {
+		return extProps;
+	}
 }

Modified: openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/MainPanel.java
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/MainPanel.java?rev=1784387&r1=1784386&r2=1784387&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/MainPanel.java (original)
+++ openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/MainPanel.java Sat Feb 25 15:39:50 2017
@@ -58,25 +58,21 @@ import org.apache.openmeetings.web.user.
 import org.apache.openmeetings.web.user.UserInfoDialog;
 import org.apache.openmeetings.web.user.chat.ChatPanel;
 import org.apache.openmeetings.web.util.ContactsHelper;
-import org.apache.openmeetings.web.util.ExtendedClientProperties;
 import org.apache.openmeetings.web.util.OmUrlFragment;
 import org.apache.wicket.Component;
 import org.apache.wicket.MarkupContainer;
 import org.apache.wicket.ajax.AbstractAjaxTimerBehavior;
 import org.apache.wicket.ajax.AbstractDefaultAjaxBehavior;
-import org.apache.wicket.ajax.AjaxClientInfoBehavior;
 import org.apache.wicket.ajax.AjaxRequestTarget;
 import org.apache.wicket.ajax.markup.html.AjaxLink;
 import org.apache.wicket.core.request.handler.IPartialPageRequestHandler;
 import org.apache.wicket.devutils.debugbar.DebugBar;
 import org.apache.wicket.markup.head.IHeaderResponse;
-import org.apache.wicket.markup.head.JavaScriptHeaderItem;
 import org.apache.wicket.markup.head.PriorityHeaderItem;
 import org.apache.wicket.markup.html.WebMarkupContainer;
 import org.apache.wicket.markup.html.panel.EmptyPanel;
 import org.apache.wicket.markup.html.panel.Panel;
 import org.apache.wicket.model.CompoundPropertyModel;
-import org.apache.wicket.protocol.http.request.WebClientInfo;
 import org.apache.wicket.protocol.ws.api.WebSocketBehavior;
 import org.apache.wicket.protocol.ws.api.WebSocketRequestHandler;
 import org.apache.wicket.protocol.ws.api.message.AbortedMessage;
@@ -84,8 +80,6 @@ import org.apache.wicket.protocol.ws.api
 import org.apache.wicket.protocol.ws.api.message.ClosedMessage;
 import org.apache.wicket.protocol.ws.api.message.ConnectedMessage;
 import org.apache.wicket.protocol.ws.api.message.TextMessage;
-import org.apache.wicket.request.cycle.RequestCycle;
-import org.apache.wicket.request.resource.JavaScriptResourceReference;
 import org.apache.wicket.util.time.Duration;
 import org.red5.logging.Red5LoggerFactory;
 import org.slf4j.Logger;
@@ -117,7 +111,6 @@ public class MainPanel extends Panel {
 			WebSocketHelper.sendClient(client, new byte[1]);
 		}
 	};
-	private final ExtendedClientProperties extProps = new ExtendedClientProperties();
 
 	public MainPanel(String id) {
 		this(id, null);
@@ -259,20 +252,7 @@ public class MainPanel extends Panel {
 				client = null;
 			}
 		});
-		add(new AjaxClientInfoBehavior() {
-			private static final long serialVersionUID = 1L;
-
-			@Override
-			public void renderHead(Component component, IHeaderResponse response) {
-				super.renderHead(component, response);
-				response.render(JavaScriptHeaderItem.forReference(new JavaScriptResourceReference(MainPanel.class, "main.js")));
-			}
-
-			@Override
-			protected WebClientInfo newWebClientInfo(RequestCycle requestCycle) {
-				return new WebClientInfo(requestCycle, extProps);
-			}
-		});
+		add(new OmAjaxClientInfoBehavior());
 	}
 
 	@Override
@@ -370,8 +350,4 @@ public class MainPanel extends Panel {
 	public Client getClient() {
 		return client;
 	}
-
-	public ExtendedClientProperties getExtendedProperties() {
-		return extProps;
-	}
 }

Added: openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/OmAjaxClientInfoBehavior.java
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/OmAjaxClientInfoBehavior.java?rev=1784387&view=auto
==============================================================================
--- openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/OmAjaxClientInfoBehavior.java (added)
+++ openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/OmAjaxClientInfoBehavior.java Sat Feb 25 15:39:50 2017
@@ -0,0 +1,43 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License") +  you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.openmeetings.web.common;
+
+import org.apache.openmeetings.web.app.WebSession;
+import org.apache.wicket.Component;
+import org.apache.wicket.ajax.AjaxClientInfoBehavior;
+import org.apache.wicket.markup.head.IHeaderResponse;
+import org.apache.wicket.markup.head.JavaScriptHeaderItem;
+import org.apache.wicket.protocol.http.request.WebClientInfo;
+import org.apache.wicket.request.cycle.RequestCycle;
+import org.apache.wicket.request.resource.JavaScriptResourceReference;
+
+public class OmAjaxClientInfoBehavior extends AjaxClientInfoBehavior {
+	private static final long serialVersionUID = 1L;
+
+	@Override
+	public void renderHead(Component component, IHeaderResponse response) {
+		super.renderHead(component, response);
+		response.render(JavaScriptHeaderItem.forReference(new JavaScriptResourceReference(MainPanel.class, "main.js")));
+	}
+
+	@Override
+	protected WebClientInfo newWebClientInfo(RequestCycle requestCycle) {
+		return new WebClientInfo(requestCycle, WebSession.get().getExtendedProperties());
+	}
+}

Modified: openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/SignInDialog.java
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/SignInDialog.java?rev=1784387&r1=1784386&r2=1784387&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/SignInDialog.java (original)
+++ openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/SignInDialog.java Sat Feb 25 15:39:50 2017
@@ -40,10 +40,10 @@ import org.apache.openmeetings.db.entity
 import org.apache.openmeetings.web.app.Application;
 import org.apache.openmeetings.web.app.OmAuthenticationStrategy;
 import org.apache.openmeetings.web.app.WebSession;
+import org.apache.openmeetings.web.common.OmAjaxClientInfoBehavior;
 import org.apache.openmeetings.web.pages.HashPage;
 import org.apache.wicket.AttributeModifier;
 import org.apache.wicket.RestartResponseException;
-import org.apache.wicket.ajax.AjaxClientInfoBehavior;
 import org.apache.wicket.ajax.AjaxEventBehavior;
 import org.apache.wicket.ajax.AjaxRequestTarget;
 import org.apache.wicket.ajax.markup.html.AjaxLink;
@@ -92,7 +92,7 @@ public class SignInDialog extends Abstra
 	public SignInDialog(String id) {
 		super(id, Application.getString(108));
 		add(form = new SignInForm("signin"));
-		add(new AjaxClientInfoBehavior());
+		add(new OmAjaxClientInfoBehavior());
 	}
 
 	public void setRegisterDialog(RegisterDialog r) {

Modified: openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java?rev=1784387&r1=1784386&r2=1784387&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java (original)
+++ openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java Sat Feb 25 15:39:50 2017
@@ -202,7 +202,7 @@ public class RoomMenuPanel extends Panel
 		add((roomName = new Label("roomName", r.getName())).setOutputMarkupPlaceholderTag(true).setOutputMarkupId(true));
 		String tag = getGroup().getTag();
 		add(logo, new Label("tag", tag).setVisible(!Strings.isEmpty(tag)));
-		add((shareBtn = new StartSharingButton("share", room.getClient(), room.getMainPanel().getExtendedProperties()))
+		add((shareBtn = new StartSharingButton("share", room.getClient(), WebSession.get().getExtendedProperties()))
 				.setOutputMarkupPlaceholderTag(true).setOutputMarkupId(true));
 		RoomInvitationForm rif = new RoomInvitationForm("form", room.getRoom().getId());
 		add(invite = new InvitationDialog("invite", rif));