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/11/29 11:12:38 UTC

openmeetings git commit: [OPENMEETINGS-1721] some sonar issues are updated

Repository: openmeetings
Updated Branches:
  refs/heads/4.0.x f8e195323 -> eb50df095


[OPENMEETINGS-1721] some sonar issues are updated


Project: http://git-wip-us.apache.org/repos/asf/openmeetings/repo
Commit: http://git-wip-us.apache.org/repos/asf/openmeetings/commit/eb50df09
Tree: http://git-wip-us.apache.org/repos/asf/openmeetings/tree/eb50df09
Diff: http://git-wip-us.apache.org/repos/asf/openmeetings/diff/eb50df09

Branch: refs/heads/4.0.x
Commit: eb50df095a9c503efe04a2bc13f357dd7d05d8a9
Parents: f8e1953
Author: Maxim Solodovnik <so...@gmail.com>
Authored: Wed Nov 29 18:12:28 2017 +0700
Committer: Maxim Solodovnik <so...@gmail.com>
Committed: Wed Nov 29 18:12:28 2017 +0700

----------------------------------------------------------------------
 .../openmeetings/core/remote/MobileService.java |  5 +--
 .../openmeetings/db/dao/basic/ChatDao.java      |  8 +++--
 .../db/dao/calendar/AppointmentDao.java         | 11 +++---
 .../db/dao/calendar/OmCalendarDao.java          |  6 ++--
 .../openmeetings/db/dao/room/PollDao.java       |  3 +-
 .../openmeetings/db/dao/room/RoomDao.java       |  5 +--
 .../openmeetings/db/dao/user/GroupUserDao.java  |  5 +--
 .../db/dao/user/UserContactDao.java             |  9 ++---
 .../openmeetings/db/dao/user/UserDao.java       |  3 +-
 .../openmeetings/db/dto/room/Whiteboard.java    |  3 +-
 .../backup/converter/WbConverter.java           |  3 +-
 .../util/OpenmeetingsVariables.java             |  1 +
 .../openmeetings/web/admin/AdminBaseForm.java   |  5 +++
 .../openmeetings/web/admin/AdminBasePanel.java  |  6 +++-
 .../web/admin/configurations/ConfigForm.java    |  2 +-
 .../web/admin/configurations/ConfigsPanel.java  |  4 +--
 .../web/admin/connection/ConnectionsPanel.java  |  2 +-
 .../web/admin/email/EmailPanel.java             |  2 +-
 .../web/admin/groups/GroupForm.java             |  2 +-
 .../web/admin/groups/GroupsPanel.java           |  4 +--
 .../web/admin/labels/LabelsForm.java            |  8 ++---
 .../web/admin/labels/LangPanel.java             |  4 +--
 .../openmeetings/web/admin/ldaps/LdapForm.java  |  8 ++---
 .../web/admin/ldaps/LdapsPanel.java             |  4 +--
 .../openmeetings/web/admin/oauth/OAuthForm.java |  8 ++---
 .../web/admin/oauth/OAuthPanel.java             |  4 +--
 .../openmeetings/web/admin/rooms/RoomForm.java  |  2 +-
 .../web/admin/rooms/RoomsPanel.java             |  4 +--
 .../openmeetings/web/admin/users/UserForm.java  |  4 +--
 .../web/admin/users/UsersPanel.java             |  2 +-
 .../openmeetings/web/common/BasePanel.java      |  1 +
 .../web/common/ConfirmableAjaxBorder.java       |  4 ++-
 .../openmeetings/web/common/MainPanel.java      |  2 +-
 .../openmeetings/web/common/OmButton.java       |  4 ++-
 .../web/common/tree/FileItemPanel.java          |  3 +-
 .../web/common/tree/FileTreePanel.java          |  5 +--
 .../web/pages/install/InstallWizard.java        | 35 +++++++++++++++-----
 .../web/room/RoomResourceReference.java         |  3 +-
 .../web/room/menu/RoomMenuPanel.java            | 10 ++++--
 .../web/room/sidebar/RoomFilePanel.java         |  3 +-
 .../openmeetings/web/room/wb/WbPanel.java       | 13 ++++----
 .../openmeetings/web/user/MessageDialog.java    |  3 +-
 .../web/user/calendar/CalendarPanel.java        |  6 ++--
 .../web/user/dashboard/StartWidgetView.java     |  5 +--
 .../web/user/profile/MessagesContactsPanel.java | 24 +++++++-------
 .../web/user/profile/ProfileForm.java           |  3 +-
 .../web/user/rooms/RoomEnterBehavior.java       |  4 ++-
 .../web/user/rooms/RoomListPanel.java           |  3 +-
 48 files changed, 164 insertions(+), 104 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/MobileService.java
----------------------------------------------------------------------
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/MobileService.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/MobileService.java
index 96f3a58..7fa8107 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/MobileService.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/MobileService.java
@@ -25,6 +25,7 @@ import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_EMAIL_VE
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_MYROOMS_ENABLED;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_REGISTER_FRONTEND;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_REGISTER_OAUTH;
+import static org.apache.openmeetings.util.OpenmeetingsVariables.PARAM_USER_ID;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getBaseUrl;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.util.Version.getVersion;
@@ -253,7 +254,7 @@ public class MobileService {
 			add(result, "sid", sd.getSessionId());
 			add(result, "publicSid", c.getUid());
 			add(result, "status", 0);
-			add(result, "userId", u.getId());
+			add(result, PARAM_USER_ID, u.getId());
 			add(result, "firstname", u.getFirstname());
 			add(result, "lastname", u.getLastname());
 			add(result, "login", u.getLogin());
@@ -275,7 +276,7 @@ public class MobileService {
 					Map<String, Object> map = new HashMap<>();
 					add(map, "streamId", c.getId());
 					add(map, "broadCastId", c.getBroadcastId());
-					add(map, "userId", c.getUserId());
+					add(map, PARAM_USER_ID, c.getUserId());
 					add(map, "firstname", c.getFirstname());
 					add(map, "lastname", c.getLastname());
 					add(map, "publicSid", c.getUid());

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/basic/ChatDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/basic/ChatDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/basic/ChatDao.java
index 05d79c4..fc374c4 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/basic/ChatDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/basic/ChatDao.java
@@ -18,6 +18,8 @@
  */
 package org.apache.openmeetings.db.dao.basic;
 
+import static org.apache.openmeetings.util.OpenmeetingsVariables.PARAM_USER_ID;
+
 import java.util.Date;
 import java.util.List;
 
@@ -66,7 +68,7 @@ public class ChatDao {
 
 	public List<ChatMessage> getUser(long userId, int start, int count) {
 		return em.createNamedQuery("getChatMessagesByUser", ChatMessage.class)
-				.setParameter("userId", userId)
+				.setParameter(PARAM_USER_ID, userId)
 				.setFirstResult(start)
 				.setMaxResults(count)
 				.getResultList();
@@ -74,7 +76,7 @@ public class ChatDao {
 
 	public List<ChatMessage> getUserRecent(long userId, Date date, int start, int count) {
 		return em.createNamedQuery("getChatMessagesByUserTime", ChatMessage.class)
-				.setParameter("userId", userId)
+				.setParameter(PARAM_USER_ID, userId)
 				.setParameter("date", date)
 				.setFirstResult(start)
 				.setMaxResults(count)
@@ -106,6 +108,6 @@ public class ChatDao {
 	}
 
 	public void deleteUser(Long userId) {
-		em.createNamedQuery("deleteChatUser").setParameter("userId", userId).executeUpdate();
+		em.createNamedQuery("deleteChatUser").setParameter(PARAM_USER_ID, userId).executeUpdate();
 	}
 }

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/AppointmentDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/AppointmentDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/AppointmentDao.java
index 99c37a3..adae9fb 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/AppointmentDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/AppointmentDao.java
@@ -19,6 +19,7 @@
 package org.apache.openmeetings.db.dao.calendar;
 
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_CALENDAR_ROOM_CAPACITY;
+import static org.apache.openmeetings.util.OpenmeetingsVariables.PARAM_USER_ID;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 
 import java.util.ArrayList;
@@ -158,13 +159,13 @@ public class AppointmentDao {
 		TypedQuery<Appointment> query = em.createNamedQuery("appointmentsInRange", Appointment.class);
 		query.setParameter("start", start);
 		query.setParameter("end", end);
-		query.setParameter("userId", userId);
+		query.setParameter(PARAM_USER_ID, userId);
 
 		List<Appointment> listAppoints = new ArrayList<>(query.getResultList());
 		TypedQuery<Appointment> q1 = em.createNamedQuery("joinedAppointmentsInRange", Appointment.class);
 		q1.setParameter("start", start);
 		q1.setParameter("end", end);
-		q1.setParameter("userId", userId);
+		q1.setParameter(PARAM_USER_ID, userId);
 		for (Appointment a : q1.getResultList()) {
 			a.setConnectedEvent(true);
 			listAppoints.add(a);
@@ -184,20 +185,20 @@ public class AppointmentDao {
 	// next appointment to select date
 	public Appointment getNext(Long userId, Date start) {
 		List<Appointment> list = em.createNamedQuery("getNextAppointment", Appointment.class)
-				.setParameter("start", start).setParameter("userId", userId).getResultList();
+				.setParameter("start", start).setParameter(PARAM_USER_ID, userId).getResultList();
 		return list == null || list.isEmpty() ? null : list.get(0);
 	}
 
 	public List<Appointment> searchByTitle(Long userId, String title) {
 		return em.createNamedQuery("getAppointmentsByTitle", Appointment.class)
-				.setParameter("title", title).setParameter("userId", userId).getResultList();
+				.setParameter("title", title).setParameter(PARAM_USER_ID, userId).getResultList();
 	}
 
 	// ---------------------------------------------------------------------------------------------
 	public Appointment getByRoom(Long userId, Long roomId) {
 		try {
 			List<Appointment> list = em.createNamedQuery("getAppointmentByOwnerRoomId", Appointment.class)
-					.setParameter("userId", userId)
+					.setParameter(PARAM_USER_ID, userId)
 					.setParameter("roomId", roomId)
 					.getResultList();
 

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/OmCalendarDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/OmCalendarDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/OmCalendarDao.java
index 018815a..837debb 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/OmCalendarDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/OmCalendarDao.java
@@ -18,6 +18,8 @@
  */
 package org.apache.openmeetings.db.dao.calendar;
 
+import static org.apache.openmeetings.util.OpenmeetingsVariables.PARAM_USER_ID;
+
 import java.util.Date;
 import java.util.List;
 
@@ -61,7 +63,7 @@ public class OmCalendarDao {
 	 */
 	public List<OmCalendar> getByUser(Long userId) {
 		return em.createNamedQuery("getCalendarbyUser", OmCalendar.class)
-				.setParameter("userId", userId)
+				.setParameter(PARAM_USER_ID, userId)
 				.getResultList();
 	}
 
@@ -73,7 +75,7 @@ public class OmCalendarDao {
 	 */
 	public List<OmCalendar> getGoogleCalendars(Long userId) {
 		return em.createNamedQuery("getGoogleCalendars", OmCalendar.class)
-				.setParameter("userId", userId)
+				.setParameter(PARAM_USER_ID, userId)
 				.getResultList();
 	}
 

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/PollDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/PollDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/PollDao.java
index 24f0597..52f931e 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/PollDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/PollDao.java
@@ -18,6 +18,7 @@
  */
 package org.apache.openmeetings.db.dao.room;
 
+import static org.apache.openmeetings.util.OpenmeetingsVariables.PARAM_USER_ID;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 
 import java.util.Date;
@@ -110,7 +111,7 @@ public class PollDao {
 	public boolean hasVoted(Long roomId, Long userId) {
 		return !em.createNamedQuery("hasVoted", RoomPollAnswer.class)
 				.setParameter("roomId", roomId)
-				.setParameter("userId", userId)
+				.setParameter(PARAM_USER_ID, userId)
 				.getResultList().isEmpty();
 	}
 }

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java
index 5763e56..af190ee 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java
@@ -19,6 +19,7 @@
 package org.apache.openmeetings.db.dao.room;
 
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_SIP_ROOM_PREFIX;
+import static org.apache.openmeetings.util.OpenmeetingsVariables.PARAM_USER_ID;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.RECENT_ROOMS_COUNT;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.isSipEnabled;
@@ -203,7 +204,7 @@ public class RoomDao implements IGroupAdminDataProviderDao<Room> {
 		endCal.set(Calendar.SECOND, 59);
 
 		return em.createNamedQuery("appointedRoomsInRangeByUser", Room.class)
-				.setParameter("userId", userId)
+				.setParameter(PARAM_USER_ID, userId)
 				.setParameter("start", startCal.getTime())
 				.setParameter("end", endCal.getTime())
 				.getResultList();
@@ -298,7 +299,7 @@ public class RoomDao implements IGroupAdminDataProviderDao<Room> {
 		//(RECENT_ROOMS_COUNT + 1) passes required to preserve the order :(
 		for (ConferenceLog l : em.createNamedQuery("getLogRecentRooms", ConferenceLog.class)
 				.setParameter("roomEnter", ConferenceLog.Type.roomEnter)
-				.setParameter("userId", userId)
+				.setParameter(PARAM_USER_ID, userId)
 				.getResultList())
 		{
 			if (!ids.contains(l.getRoomId())) {

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/GroupUserDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/GroupUserDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/GroupUserDao.java
index fa9a938..02cbb21 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/GroupUserDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/GroupUserDao.java
@@ -19,6 +19,7 @@
 package org.apache.openmeetings.db.dao.user;
 
 import static org.apache.openmeetings.util.DaoHelper.UNSUPPORTED;
+import static org.apache.openmeetings.util.OpenmeetingsVariables.PARAM_USER_ID;
 
 import java.util.List;
 
@@ -79,13 +80,13 @@ public class GroupUserDao implements IDataProviderDao<GroupUser> {
 
 	public GroupUser getByGroupAndUser(Long groupId, Long userId) {
 		List<GroupUser> list = em.createNamedQuery("isUserInGroup", GroupUser.class)
-				.setParameter("groupId", groupId).setParameter("userId", userId).getResultList();
+				.setParameter("groupId", groupId).setParameter(PARAM_USER_ID, userId).getResultList();
 		return list.isEmpty() ? null : list.get(0);
 	}
 
 	public boolean isUserInGroup(long groupId, long userId) {
 		return !em.createNamedQuery("isUserInGroup", GroupUser.class)
-				.setParameter("groupId", groupId).setParameter("userId", userId).getResultList().isEmpty();
+				.setParameter("groupId", groupId).setParameter(PARAM_USER_ID, userId).getResultList().isEmpty();
 	}
 
 	@Override

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserContactDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserContactDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserContactDao.java
index a76fe5d..0dda168 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserContactDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserContactDao.java
@@ -18,6 +18,7 @@
  */
 package org.apache.openmeetings.db.dao.user;
 
+import static org.apache.openmeetings.util.OpenmeetingsVariables.PARAM_USER_ID;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 
 import java.util.Date;
@@ -77,7 +78,7 @@ public class UserContactDao {
 
 	public UserContact get(Long userId, Long ownerId) {
 		List<UserContact> ll = em.createNamedQuery("getContactByUserOwner", UserContact.class)
-				.setParameter("userId", userId)
+				.setParameter(PARAM_USER_ID, userId)
 				.setParameter("ownerId", ownerId)
 				.getResultList();
 		log.info("number of contacts:: " + (ll == null ? null : ll.size()));
@@ -91,7 +92,7 @@ public class UserContactDao {
 
 	public List<UserContact> get(long ownerId, int first, int count) {
 		TypedQuery<UserContact> q = em.createNamedQuery("getContactsByUser", UserContact.class);
-		q.setParameter("userId", ownerId);
+		q.setParameter(PARAM_USER_ID, ownerId);
 		q.setFirstResult(first);
 		q.setMaxResults(count);
 		return q.getResultList();
@@ -99,7 +100,7 @@ public class UserContactDao {
 
 	public long count(long ownerId) {
 		TypedQuery<Long> q = em.createNamedQuery("countContactsByUser", Long.class);
-		q.setParameter("userId", ownerId);
+		q.setParameter(PARAM_USER_ID, ownerId);
 		return q.getSingleResult();
 	}
 
@@ -112,7 +113,7 @@ public class UserContactDao {
 
 	public List<UserContact> getContactRequestsByUserAndStatus(Long userId, boolean pending) {
 		return em.createNamedQuery("getContactRequestsByUserAndStatus", UserContact.class)
-				.setParameter("userId", userId)
+				.setParameter(PARAM_USER_ID, userId)
 				.setParameter("pending", pending)
 				.getResultList();
 	}

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserDao.java
index 1093c5f..a808549 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserDao.java
@@ -20,6 +20,7 @@ package org.apache.openmeetings.db.dao.user;
 
 import static org.apache.openmeetings.db.util.UserHelper.getMinLoginLength;
 import static org.apache.openmeetings.util.DaoHelper.getStringParam;
+import static org.apache.openmeetings.util.OpenmeetingsVariables.PARAM_USER_ID;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getDefaultLang;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 
@@ -437,7 +438,7 @@ public class UserDao implements IGroupAdminDataProviderDao<User> {
 	 */
 	public boolean verifyPassword(Long userId, String password) {
 		List<String> l = em.createNamedQuery("getPassword", String.class)
-			.setParameter("userId", userId).getResultList();
+			.setParameter(PARAM_USER_ID, userId).getResultList();
 		if (l == null || l.size() != 1) {
 			return false;
 		}

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/Whiteboard.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/Whiteboard.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/Whiteboard.java
index 82bfe31..2785787 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/Whiteboard.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/Whiteboard.java
@@ -47,6 +47,7 @@ public class Whiteboard implements Serializable {
 	public static final String ATTR_TYPE = "type";
 	public static final String ATTR_FILE_ID = "fileId";
 	public static final String ATTR_FILE_TYPE = "fileType";
+	public static final String ATTR_SLIDE = "slide";
 	public enum ZoomMode {
 		fullFit
 		, pageWidth
@@ -130,7 +131,7 @@ public class Whiteboard implements Serializable {
 		JSONArray arr = new JSONArray();
 		roomItems.entrySet().removeIf(e -> {
 				JSONObject o = new JSONObject(e.getValue());
-				boolean match = !FileItem.Type.Presentation.name().equals(o.optString(ATTR_FILE_TYPE)) && o.optInt("slide", -1) == slide;
+				boolean match = !FileItem.Type.Presentation.name().equals(o.optString(ATTR_FILE_TYPE)) && o.optInt(ATTR_SLIDE, -1) == slide;
 				if (match) {
 					arr.put(e);
 				}

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-install/src/main/java/org/apache/openmeetings/backup/converter/WbConverter.java
----------------------------------------------------------------------
diff --git a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/converter/WbConverter.java b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/converter/WbConverter.java
index 023d6c9..da30ec9 100644
--- a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/converter/WbConverter.java
+++ b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/converter/WbConverter.java
@@ -22,6 +22,7 @@ import static java.nio.charset.StandardCharsets.UTF_8;
 import static org.apache.commons.lang3.math.NumberUtils.toLong;
 import static org.apache.openmeetings.db.dto.room.Whiteboard.ATTR_FILE_ID;
 import static org.apache.openmeetings.db.dto.room.Whiteboard.ATTR_FILE_TYPE;
+import static org.apache.openmeetings.db.dto.room.Whiteboard.ATTR_SLIDE;
 import static org.apache.openmeetings.db.dto.room.Whiteboard.ATTR_TYPE;
 import static org.apache.openmeetings.util.OmFileHelper.EXTENSION_WML;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
@@ -78,7 +79,7 @@ public class WbConverter {
 		double top = ((Number)props.get(props.size() - 4)).doubleValue();
 		double w = ((Number)props.get(props.size() - 3)).doubleValue();
 		double h = ((Number)props.get(props.size() - 2)).doubleValue();
-		JSONObject o = new JSONObject().put("slide", 0);
+		JSONObject o = new JSONObject().put(ATTR_SLIDE, 0);
 		if (addDim) {
 			o.put("left", left)
 				.put("top", top)

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-util/src/main/java/org/apache/openmeetings/util/OpenmeetingsVariables.java
----------------------------------------------------------------------
diff --git a/openmeetings-util/src/main/java/org/apache/openmeetings/util/OpenmeetingsVariables.java b/openmeetings-util/src/main/java/org/apache/openmeetings/util/OpenmeetingsVariables.java
index 8e9adba..6aa3aa7 100644
--- a/openmeetings-util/src/main/java/org/apache/openmeetings/util/OpenmeetingsVariables.java
+++ b/openmeetings-util/src/main/java/org/apache/openmeetings/util/OpenmeetingsVariables.java
@@ -23,6 +23,7 @@ import com.github.openjson.JSONObject;
 public class OpenmeetingsVariables {
 	public static final String ATTR_CLASS = "class";
 	public static final String ATTR_TITLE = "title";
+	public static final String PARAM_USER_ID = "userId";
 	public static final String CONFIG_CRYPT = "crypt.class.name";
 	public static final String CONFIG_DASHBOARD_SHOW_CHAT = "dashboard.show.chat";
 	public static final String CONFIG_DASHBOARD_SHOW_MYROOMS = "dashboard.show.myrooms";

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/AdminBaseForm.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/AdminBaseForm.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/AdminBaseForm.java
index c7759d0..b774100 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/AdminBaseForm.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/AdminBaseForm.java
@@ -19,6 +19,7 @@
 package org.apache.openmeetings.web.admin;
 
 import org.apache.wicket.ajax.AjaxRequestTarget;
+import org.apache.wicket.core.request.handler.IPartialPageRequestHandler;
 import org.apache.wicket.markup.html.form.Form;
 import org.apache.wicket.model.IModel;
 
@@ -185,4 +186,8 @@ public abstract class AdminBaseForm<T> extends Form<T> {
 	protected void onDeleteError(AjaxRequestTarget target, Form<?> form) {
 		//no-op
 	}
+
+	public static void reinitJs(IPartialPageRequestHandler handler) {
+		AdminBasePanel.reinitJs(handler);
+	}
 }

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/AdminBasePanel.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/AdminBasePanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/AdminBasePanel.java
index 97ea37e..0683287 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/AdminBasePanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/AdminBasePanel.java
@@ -47,7 +47,7 @@ public abstract class AdminBasePanel extends BasePanel {
 	@Override
 	public BasePanel onMenuPanelLoad(IPartialPageRequestHandler handler) {
 		super.onMenuPanelLoad(handler);
-		handler.appendJavaScript("adminPanelInit();");
+		reinitJs(handler);
 		return this;
 	}
 
@@ -58,4 +58,8 @@ public abstract class AdminBasePanel extends BasePanel {
 		}
 		return sb;
 	}
+
+	public static void reinitJs(IPartialPageRequestHandler handler) {
+		handler.appendJavaScript("adminPanelInit();");
+	}
 }

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/configurations/ConfigForm.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/configurations/ConfigForm.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/configurations/ConfigForm.java
index fa7fccc..0458819 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/configurations/ConfigForm.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/configurations/ConfigForm.java
@@ -130,7 +130,7 @@ public class ConfigForm extends AdminBaseForm<Configuration> {
 
 	private void refresh(AjaxRequestTarget target) {
 		target.add(this);
-		target.appendJavaScript("adminPanelInit();");
+		reinitJs(target);
 	}
 
 	private void update(AjaxRequestTarget target) {

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/configurations/ConfigsPanel.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/configurations/ConfigsPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/configurations/ConfigsPanel.java
index 1f3db9b..36b4b4c 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/configurations/ConfigsPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/configurations/ConfigsPanel.java
@@ -59,7 +59,7 @@ public class ConfigsPanel extends AdminBasePanel {
 				item.add(new Label("id"));
 				item.add(new Label("key"));
 				item.add(new Label("value"));
-				item.add(new AjaxEventBehavior("click") {
+				item.add(new AjaxEventBehavior(EVT_CLICK) {
 					private static final long serialVersionUID = 1L;
 
 					@Override
@@ -67,7 +67,7 @@ public class ConfigsPanel extends AdminBasePanel {
 						form.hideNewRecord();
 						form.setModelObject(c);
 						target.add(form, listContainer);
-						target.appendJavaScript("adminPanelInit();");
+						reinitJs(target);
 					}
 				});
 				item.add(AttributeModifier.replace(ATTR_CLASS, getRowClass(c.getId(), form.getModelObject().getId())));

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/connection/ConnectionsPanel.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/connection/ConnectionsPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/connection/ConnectionsPanel.java
index 3417320..b01b08b 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/connection/ConnectionsPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/connection/ConnectionsPanel.java
@@ -115,7 +115,7 @@ public class ConnectionsPanel extends AdminBasePanel {
 				}
 				item.add(new Label("server", _c.getServerId()));
 				item.add(confirm);
-				item.add(new AjaxEventBehavior("click") {
+				item.add(new AjaxEventBehavior(EVT_CLICK) {
 					private static final long serialVersionUID = 1L;
 
 					@Override

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/email/EmailPanel.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/email/EmailPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/email/EmailPanel.java
index 8a53739..7752e80 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/email/EmailPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/email/EmailPanel.java
@@ -53,7 +53,7 @@ public class EmailPanel extends AdminBasePanel {
 				item.add(new Label("id"));
 				item.add(new Label("status", getString("admin.email.status." + m.getStatus().name())));
 				item.add(new Label("subject"));
-				item.add(new AjaxEventBehavior("click") {
+				item.add(new AjaxEventBehavior(EVT_CLICK) {
 					private static final long serialVersionUID = 1L;
 
 					@Override

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/groups/GroupForm.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/groups/GroupForm.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/groups/GroupForm.java
index b2d33a8..971003c 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/groups/GroupForm.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/groups/GroupForm.java
@@ -184,7 +184,7 @@ public class GroupForm extends AdminBaseForm<Group> {
 		reminderDays.setEnabled(getModelObject().isLimited());
 		logo.update();
 		target.add(this, groupList);
-		target.appendJavaScript("adminPanelInit();");
+		reinitJs(target);
 	}
 
 	private long getGroupId() {

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/groups/GroupsPanel.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/groups/GroupsPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/groups/GroupsPanel.java
index 9fd12a5..cce84cd 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/groups/GroupsPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/groups/GroupsPanel.java
@@ -66,7 +66,7 @@ public class GroupsPanel extends AdminBasePanel {
 				final Group g = item.getModelObject();
 				item.add(new Label("id"));
 				item.add(new Label("name"));
-				item.add(new AjaxEventBehavior("click") {
+				item.add(new AjaxEventBehavior(EVT_CLICK) {
 					private static final long serialVersionUID = 1L;
 
 					@Override
@@ -75,7 +75,7 @@ public class GroupsPanel extends AdminBasePanel {
 						form.setModelObject(g);
 						form.updateView(target);
 						target.add(listContainer);
-						target.appendJavaScript("adminPanelInit();");
+						reinitJs(target);
 					}
 				});
 				item.add(AttributeModifier.append(ATTR_CLASS, getRowClass(g.getId(), form.getModelObject().getId())));

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/labels/LabelsForm.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/labels/LabelsForm.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/labels/LabelsForm.java
index a636e9c..ca67add 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/labels/LabelsForm.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/labels/LabelsForm.java
@@ -55,14 +55,14 @@ public class LabelsForm extends AdminBaseForm<StringLabel> {
 		value = null;
 		setModelObject(new StringLabel(key, value));
 		target.add(this);
-		target.appendJavaScript("adminPanelInit();");
+		reinitJs(target);
 	}
 
 	@Override
 	protected void onRefreshSubmit(AjaxRequestTarget target, Form<?> form) {
 		this.setModelObject(new StringLabel(key, value));
 		target.add(this);
-		target.appendJavaScript("adminPanelInit();");
+		reinitJs(target);
 	}
 
 	@Override
@@ -74,7 +74,7 @@ public class LabelsForm extends AdminBaseForm<StringLabel> {
 		}
 		hideNewRecord();
 		target.add(panel.listContainer);
-		target.appendJavaScript("adminPanelInit();");
+		reinitJs(target);
 	}
 
 	@Override
@@ -85,6 +85,6 @@ public class LabelsForm extends AdminBaseForm<StringLabel> {
 			error("Unexpected error while deleting label:" + e.getMessage());
 		}
 		target.add(panel.listContainer);
-		target.appendJavaScript("adminPanelInit();");
+		reinitJs(target);
 	}
 }

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/labels/LangPanel.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/labels/LangPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/labels/LangPanel.java
index 91e2dbc..b1fadae 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/labels/LangPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/labels/LangPanel.java
@@ -114,7 +114,7 @@ public class LangPanel extends AdminBasePanel {
 				final StringLabel fv = item.getModelObject();
 				item.add(new Label("key"));
 				item.add(new Label("value"));
-				item.add(new AjaxEventBehavior("click") {
+				item.add(new AjaxEventBehavior(EVT_CLICK) {
 					private static final long serialVersionUID = 1L;
 
 					@Override
@@ -122,7 +122,7 @@ public class LangPanel extends AdminBasePanel {
 						form.setModelObject(fv);
 						form.hideNewRecord();
 						target.add(form, listContainer);
-						target.appendJavaScript("adminPanelInit();");
+						reinitJs(target);
 					}
 				});
 				item.add(AttributeModifier.append(ATTR_CLASS, getRowClass(fv.getId(), form.getModelObject().getId())));

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/ldaps/LdapForm.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/ldaps/LdapForm.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/ldaps/LdapForm.java
index 8ec5d54..e4c0ec9 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/ldaps/LdapForm.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/ldaps/LdapForm.java
@@ -75,14 +75,14 @@ public class LdapForm extends AdminBaseForm<LdapConfig> {
 		setModelObject(getBean(LdapConfigDao.class).update(getModelObject(), WebSession.getUserId()));
 		hideNewRecord();
 		target.add(this, listContainer);
-		target.appendJavaScript("adminPanelInit();");
+		reinitJs(target);
 	}
 
 	@Override
 	protected void onNewSubmit(AjaxRequestTarget target, Form<?> form) {
 		this.setModelObject(new LdapConfig());
 		target.add(this);
-		target.appendJavaScript("adminPanelInit();");
+		reinitJs(target);
 	}
 
 	@Override
@@ -95,7 +95,7 @@ public class LdapForm extends AdminBaseForm<LdapConfig> {
 		}
 		this.setModelObject(ldapConfig);
 		target.add(this);
-		target.appendJavaScript("adminPanelInit();");
+		reinitJs(target);
 	}
 
 	@Override
@@ -104,6 +104,6 @@ public class LdapForm extends AdminBaseForm<LdapConfig> {
 		this.setModelObject(new LdapConfig());
 		target.add(listContainer);
 		target.add(this);
-		target.appendJavaScript("adminPanelInit();");
+		reinitJs(target);
 	}
 }

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/ldaps/LdapsPanel.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/ldaps/LdapsPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/ldaps/LdapsPanel.java
index e46c3a0..770c8cc 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/ldaps/LdapsPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/ldaps/LdapsPanel.java
@@ -58,7 +58,7 @@ public class LdapsPanel extends AdminBasePanel {
 				item.add(new Label("id"));
 				item.add(new Label("name"));
 				item.add(new Label("configFileName"));
-				item.add(new AjaxEventBehavior("click") {
+				item.add(new AjaxEventBehavior(EVT_CLICK) {
 					private static final long serialVersionUID = 1L;
 
 					@Override
@@ -66,7 +66,7 @@ public class LdapsPanel extends AdminBasePanel {
 						form.setModelObject(lc);
 						form.hideNewRecord();
 						target.add(form, listContainer);
-						target.appendJavaScript("adminPanelInit();");
+						reinitJs(target);
 					}
 				});
 				item.add(AttributeModifier.replace(ATTR_CLASS, getRowClass(lc.getId(), form.getModelObject().getId())));

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/oauth/OAuthForm.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/oauth/OAuthForm.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/oauth/OAuthForm.java
index f779eee..91b05c6 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/oauth/OAuthForm.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/oauth/OAuthForm.java
@@ -87,14 +87,14 @@ public class OAuthForm extends AdminBaseForm<OAuthServer> {
 		hideNewRecord();
 		target.add(this);
 		target.add(listContainer);
-		target.appendJavaScript("adminPanelInit();");
+		reinitJs(target);
 	}
 
 	@Override
 	protected void onNewSubmit(AjaxRequestTarget target, Form<?> form) {
 		this.setModelObject(new OAuthServer());
 		target.add(this);
-		target.appendJavaScript("adminPanelInit();");
+		reinitJs(target);
 	}
 
 	@Override
@@ -107,7 +107,7 @@ public class OAuthForm extends AdminBaseForm<OAuthServer> {
 		}
 		this.setModelObject(server);
 		target.add(this);
-		target.appendJavaScript("adminPanelInit();");
+		reinitJs(target);
 	}
 
 	@Override
@@ -116,6 +116,6 @@ public class OAuthForm extends AdminBaseForm<OAuthServer> {
 		this.setModelObject(new OAuthServer());
 		target.add(listContainer);
 		target.add(this);
-		target.appendJavaScript("adminPanelInit();");
+		reinitJs(target);
 	}
 }

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/oauth/OAuthPanel.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/oauth/OAuthPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/oauth/OAuthPanel.java
index 7d1cca6..d3549e8 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/oauth/OAuthPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/oauth/OAuthPanel.java
@@ -52,7 +52,7 @@ public class OAuthPanel extends AdminBasePanel {
 				final OAuthServer server = item.getModelObject();
 				item.add(new Label("id"));
 				item.add(new Label("name"));
-				item.add(new AjaxEventBehavior("click") {
+				item.add(new AjaxEventBehavior(EVT_CLICK) {
 					private static final long serialVersionUID = 1L;
 
 					@Override
@@ -60,7 +60,7 @@ public class OAuthPanel extends AdminBasePanel {
 						form.setModelObject(server);
 						form.hideNewRecord();
 						target.add(form, listContainer);
-						target.appendJavaScript("adminPanelInit();");
+						reinitJs(target);
 					}
 				});
 				item.add(AttributeModifier.replace(ATTR_CLASS, getRowClass(server.getId(), form.getModelObject().getId())));

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java
index e951762..3f81565 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java
@@ -484,7 +484,7 @@ public class RoomForm extends AdminBaseForm<Room> {
 		target.add(roomList);
 		target.add(pin.setEnabled(getModelObject().isSipEnabled()));
 		updateClients(target);
-		target.appendJavaScript("adminPanelInit();");
+		reinitJs(target);
 	}
 
 	@Override

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomsPanel.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomsPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomsPanel.java
index 275ae28..4016b30 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomsPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomsPanel.java
@@ -55,7 +55,7 @@ public class RoomsPanel extends AdminBasePanel {
 				item.add(new Label("id"));
 				item.add(new Label("name"));
 				item.add(new Label("ispublic"));
-				item.add(new AjaxEventBehavior("click") {
+				item.add(new AjaxEventBehavior(EVT_CLICK) {
 					private static final long serialVersionUID = 1L;
 
 					@Override
@@ -64,7 +64,7 @@ public class RoomsPanel extends AdminBasePanel {
 						form.setModelObject(getBean(RoomDao.class).get(roomId));
 						form.updateView(target);
 						target.add(form, listContainer);
-						target.appendJavaScript("adminPanelInit();");
+						reinitJs(target);
 					}
 				});
 				item.add(AttributeModifier.replace(ATTR_CLASS, getRowClass(room.getId(), form.getModelObject().getId())));

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/users/UserForm.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/users/UserForm.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/users/UserForm.java
index 2c3574f..91e3068 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/users/UserForm.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/users/UserForm.java
@@ -197,7 +197,7 @@ public class UserForm extends AdminBaseForm<User> {
 		hideNewRecord();
 		target.add(this);
 		target.add(listContainer);
-		target.appendJavaScript("adminPanelInit();");
+		reinitJs(target);
 		if (u.getGroupUsers().isEmpty()) {
 			warning.open(target);
 		}
@@ -270,7 +270,7 @@ public class UserForm extends AdminBaseForm<User> {
 		updateDomain(target);
 		if (target != null) {
 			target.add(this, listContainer);
-			target.appendJavaScript("adminPanelInit();");
+			reinitJs(target);
 		}
 	}
 

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/users/UsersPanel.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/users/UsersPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/users/UsersPanel.java
index 64838a5..f1afc7d 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/users/UsersPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/users/UsersPanel.java
@@ -73,7 +73,7 @@ public class UsersPanel extends AdminBasePanel {
 				item.add(new Label("login"));
 				item.add(new Label("firstname"));
 				item.add(new Label("lastname"));
-				item.add(new AjaxEventBehavior("click") {
+				item.add(new AjaxEventBehavior(EVT_CLICK) {
 					private static final long serialVersionUID = 1L;
 
 					@Override

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/BasePanel.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/BasePanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/BasePanel.java
index 0022b6c..4ea6ba9 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/BasePanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/BasePanel.java
@@ -29,6 +29,7 @@ import org.apache.wicket.model.IModel;
 
 public abstract class BasePanel extends Panel {
 	private static final long serialVersionUID = 1L;
+	public static final String EVT_CLICK = "click";
 
 	public BasePanel(String id) {
 		super(id);

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/ConfirmableAjaxBorder.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/ConfirmableAjaxBorder.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/ConfirmableAjaxBorder.java
index 375e1fc..46c68f2 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/ConfirmableAjaxBorder.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/ConfirmableAjaxBorder.java
@@ -18,6 +18,8 @@
  */
 package org.apache.openmeetings.web.common;
 
+import static org.apache.openmeetings.web.common.BasePanel.EVT_CLICK;
+
 import org.apache.wicket.ajax.AjaxEventBehavior;
 import org.apache.wicket.ajax.AjaxRequestTarget;
 import org.apache.wicket.ajax.attributes.AjaxRequestAttributes;
@@ -72,7 +74,7 @@ public abstract class ConfirmableAjaxBorder extends Border {
 	@Override
 	protected void onInitialize() {
 		super.onInitialize();
-		add(new AjaxEventBehavior("click") {
+		add(new AjaxEventBehavior(EVT_CLICK) {
 			private static final long serialVersionUID = 1L;
 
 			@Override

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/MainPanel.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/MainPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/MainPanel.java
index bb5c9cc..28c175f 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/MainPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/MainPanel.java
@@ -21,6 +21,7 @@ package org.apache.openmeetings.web.common;
 import static org.apache.openmeetings.db.util.AuthLevelUtil.hasAdminLevel;
 import static org.apache.openmeetings.db.util.AuthLevelUtil.hasGroupAdminLevel;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_MYROOMS_ENABLED;
+import static org.apache.openmeetings.util.OpenmeetingsVariables.PARAM_USER_ID;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.web.app.Application.addOnlineUser;
 import static org.apache.openmeetings.web.app.Application.getBean;
@@ -98,7 +99,6 @@ public class MainPanel extends Panel {
 	private static final Logger log = Red5LoggerFactory.getLogger(MainPanel.class, getWebAppRootKey());
 	private static final String DELIMITER = "     ";
 	private final WebMarkupContainer EMPTY = new WebMarkupContainer(CHILD_ID);
-	public static final String PARAM_USER_ID = "userId";
 	private String uid = null;
 	private final MenuPanel menu;
 	private final WebMarkupContainer topControls = new WebMarkupContainer("topControls");

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/OmButton.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/OmButton.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/OmButton.java
index e3d6b5f..9075d68 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/OmButton.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/OmButton.java
@@ -18,6 +18,8 @@
  */
 package org.apache.openmeetings.web.common;
 
+import static org.apache.openmeetings.web.common.BasePanel.EVT_CLICK;
+
 import org.apache.wicket.ajax.AjaxEventBehavior;
 import org.apache.wicket.ajax.AjaxRequestTarget;
 
@@ -28,7 +30,7 @@ public abstract class OmButton extends Button {
 
 	public OmButton(String id) {
 		super(id);
-		add(new AjaxEventBehavior("click") {
+		add(new AjaxEventBehavior(EVT_CLICK) {
 			private static final long serialVersionUID = 1L;
 
 			@Override

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileItemPanel.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileItemPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileItemPanel.java
index 1db38f4..17ded5e 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileItemPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileItemPanel.java
@@ -19,6 +19,7 @@
 package org.apache.openmeetings.web.common.tree;
 
 import static org.apache.openmeetings.web.app.Application.getBean;
+import static org.apache.openmeetings.web.common.BasePanel.EVT_CLICK;
 
 import org.apache.openmeetings.db.dao.file.FileItemLogDao;
 import org.apache.openmeetings.db.entity.file.BaseFileItem;
@@ -44,7 +45,7 @@ public class FileItemPanel extends FolderPanel {
 		} else {
 			visible |= !f.exists();
 		}
-		errors.add(new AjaxEventBehavior("click") {
+		errors.add(new AjaxEventBehavior(EVT_CLICK) {
 			private static final long serialVersionUID = 1L;
 
 			@Override

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileTreePanel.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileTreePanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileTreePanel.java
index 6a44cb6..75170ae 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileTreePanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileTreePanel.java
@@ -24,6 +24,7 @@ import static org.apache.openmeetings.util.OmFileHelper.EXTENSION_PDF;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.ATTR_CLASS;
 import static org.apache.openmeetings.web.app.Application.getBean;
 import static org.apache.openmeetings.web.app.WebSession.getUserId;
+import static org.apache.openmeetings.web.common.BasePanel.EVT_CLICK;
 import static org.apache.wicket.util.time.Duration.NONE;
 
 import java.io.File;
@@ -122,7 +123,7 @@ public abstract class FileTreePanel extends Panel {
 	private ConfirmableAjaxBorder trashBorder;
 	private final Long roomId;
 	private boolean readOnly = true;
-	private final Component createDir = new WebMarkupContainer("create").add(new AjaxEventBehavior("click") {
+	private final Component createDir = new WebMarkupContainer("create").add(new AjaxEventBehavior(EVT_CLICK) {
 		private static final long serialVersionUID = 1L;
 
 		@Override
@@ -205,7 +206,7 @@ public abstract class FileTreePanel extends Panel {
 		form.add(trashToolbar);
 		trashToolbar.add(getUpload());
 		trashToolbar.add(createDir);
-		trashToolbar.add(new WebMarkupContainer("refresh").add(new AjaxEventBehavior("click") {
+		trashToolbar.add(new WebMarkupContainer("refresh").add(new AjaxEventBehavior(EVT_CLICK) {
 			private static final long serialVersionUID = 1L;
 
 			@Override

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizard.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizard.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizard.java
index d1591dc..4a9dee0 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizard.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizard.java
@@ -245,13 +245,17 @@ public class InstallWizard extends AbstractWizard<InstallationConfig> {
 				});
 			}
 
+			private String getDbName(ConnectionProperties props) {
+				return getString("install.wizard.db.step.instructions." + props.getDbType().name());
+			}
+
 			@Override
 			protected void onValidateModelObjects() {
 				ConnectionProperties props = getModelObject();
 				try {
 					Class.forName(props.getDriver());
 				} catch (Exception e) {
-					form.error(new StringResourceModel("install.wizard.db.step.nodriver", InstallWizard.this).setParameters(getString("install.wizard.db.step.instructions." + props.getDbType().name())).getObject());
+					form.error(new StringResourceModel("install.wizard.db.step.nodriver", InstallWizard.this).setParameters(getDbName(props)).getObject());
 					return;
 				}
 				boolean valid = true;
@@ -278,10 +282,10 @@ public class InstallWizard extends AbstractWizard<InstallationConfig> {
 						valid &= ps.execute();
 					}
 					if (!valid) {
-						form.error(getString("install.wizard.db.step.notvalid") + "<br/>" + getString("install.wizard.db.step.instructions." + props.getDbType().name()));
+						form.error(getString("install.wizard.db.step.notvalid") + "<br/>" + getDbName(props));
 					}
 				} catch (Exception e) {
-					form.error(e.getMessage() + "<br/>" + getString("install.wizard.db.step.instructions." + props.getDbType().name()));
+					form.error(e.getMessage() + "<br/>" + getDbName(props));
 					log.error("error while testing DB", e);
 					valid = false;
 				}
@@ -483,6 +487,7 @@ public class InstallWizard extends AbstractWizard<InstallationConfig> {
 	private final class ParamsStep3 extends BaseStep {
 		private static final long serialVersionUID = 1L;
 		private static final String REGEX = "\\r\\n|\\r|\\n";
+		private static final String OPT_VERSION = "-version";
 		private final TextField<String> ffmpegPath;
 		private final TextField<String> imageMagicPath;
 		private final TextField<String> soxPath;
@@ -506,7 +511,7 @@ public class InstallWizard extends AbstractWizard<InstallationConfig> {
 				private static final long serialVersionUID = 1L;
 				@Override
 				protected void onSubmit(AjaxRequestTarget target) {
-					checkToolPath(imageMagicPath, new String[] {getToolPath(imageMagicPath.getValue(), "convert" + EXEC_EXT), "-version"});
+					checkMagicPath();
 					target.add(getFeedbackPanel());
 				}
 			});
@@ -514,7 +519,7 @@ public class InstallWizard extends AbstractWizard<InstallationConfig> {
 				private static final long serialVersionUID = 1L;
 				@Override
 				protected void onSubmit(AjaxRequestTarget target) {
-					checkToolPath(ffmpegPath, new String[] {getToolPath(ffmpegPath.getValue(), "ffmpeg" + EXEC_EXT), "-version"});
+					checkFfmpegPath();
 					target.add(getFeedbackPanel());
 				}
 			});
@@ -522,7 +527,7 @@ public class InstallWizard extends AbstractWizard<InstallationConfig> {
 				private static final long serialVersionUID = 1L;
 				@Override
 				protected void onSubmit(AjaxRequestTarget target) {
-					checkToolPath(soxPath, new String[] {getToolPath(soxPath.getValue(), "sox" + EXEC_EXT), "--version"});
+					checkSoxPath();
 					target.add(getFeedbackPanel());
 				}
 			});
@@ -545,6 +550,18 @@ public class InstallWizard extends AbstractWizard<InstallationConfig> {
 			return result.isOk();
 		}
 
+		private boolean checkMagicPath() {
+			return checkToolPath(imageMagicPath, new String[] {getToolPath(imageMagicPath.getValue(), "convert" + EXEC_EXT), OPT_VERSION});
+		}
+
+		private boolean checkFfmpegPath() {
+			return checkToolPath(ffmpegPath, new String[] {getToolPath(ffmpegPath.getValue(), "ffmpeg" + EXEC_EXT), OPT_VERSION});
+		}
+
+		private boolean checkSoxPath() {
+			return checkToolPath(soxPath, new String[] {getToolPath(soxPath.getValue(), "sox" + EXEC_EXT), "--version"});
+		}
+
 		private boolean checkOfficePath() {
 			String err  = "";
 			try {
@@ -556,9 +573,9 @@ public class InstallWizard extends AbstractWizard<InstallationConfig> {
 		}
 
 		private boolean checkAllPath() {
-			boolean result = checkToolPath(imageMagicPath, new String[] {getToolPath(imageMagicPath.getValue(), "convert" + EXEC_EXT), "-version"});
-			result = checkToolPath(ffmpegPath, new String[] {getToolPath(ffmpegPath.getValue(), "ffmpeg" + EXEC_EXT), "-version"}) && result;
-			result = checkToolPath(soxPath, new String[] {getToolPath(soxPath.getValue(), "sox" + EXEC_EXT), "--version"}) && result;
+			boolean result = checkMagicPath();
+			result = checkFfmpegPath() && result;
+			result = checkSoxPath() && result;
 			result = checkOfficePath() && result;
 			isAllChecked = true;
 			return result;

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomResourceReference.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomResourceReference.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomResourceReference.java
index a004d99..a2da700 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomResourceReference.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomResourceReference.java
@@ -19,6 +19,7 @@
 package org.apache.openmeetings.web.room;
 
 import static org.apache.openmeetings.db.dto.room.Whiteboard.ATTR_FILE_ID;
+import static org.apache.openmeetings.db.dto.room.Whiteboard.ATTR_SLIDE;
 import static org.apache.openmeetings.util.OmFileHelper.EXTENSION_JPG;
 import static org.apache.openmeetings.util.OmFileHelper.JPG_MIME_TYPE;
 import static org.apache.openmeetings.util.OmFileHelper.MP4_MIME_TYPE;
@@ -128,7 +129,7 @@ public class RoomResourceReference extends FileItemResourceReference<FileItem> {
 	@Override
 	protected File getFile(FileItem f, Attributes attr) {
 		String ext = f.getType() == FileItem.Type.Presentation
-				? attr.getParameters().get("slide").toString() : null;
+				? attr.getParameters().get(ATTR_SLIDE).toString() : null;
 		return getFile(f, ext);
 	}
 

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java
index 7c7a4bf..62a33da 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java
@@ -193,7 +193,7 @@ public class RoomMenuPanel extends Panel {
 
 		@Override
 		public void onClick(AjaxRequestTarget target) {
-			target.appendJavaScript(String.format("WbArea.download('%s');", EXTENSION_PNG));
+			download(target, EXTENSION_PNG);
 		}
 	};
 	private final RoomMenuItem downloadJpgMenuItem = new RoomMenuItem(Application.getString("download.jpg"), Application.getString("download.jpg")) {
@@ -201,7 +201,7 @@ public class RoomMenuPanel extends Panel {
 
 		@Override
 		public void onClick(AjaxRequestTarget target) {
-			target.appendJavaScript(String.format("WbArea.download('%s');", EXTENSION_JPG));
+			download(target, EXTENSION_JPG);
 		}
 	};
 	private final RoomMenuItem downloadPdfMenuItem = new RoomMenuItem(Application.getString("download.pdf"), Application.getString("download.pdf")) {
@@ -209,7 +209,7 @@ public class RoomMenuPanel extends Panel {
 
 		@Override
 		public void onClick(AjaxRequestTarget target) {
-			target.appendJavaScript(String.format("WbArea.download('%s');", EXTENSION_PDF));
+			download(target, EXTENSION_PDF);
 		}
 	};
 	private final ImagePanel logo = new ImagePanel("logo") {
@@ -385,4 +385,8 @@ public class RoomMenuPanel extends Panel {
 			throw new RedirectToUrlException(url);
 		}
 	}
+
+	private static void download(AjaxRequestTarget target, String type) {
+		target.appendJavaScript(String.format("WbArea.download('%s');", EXTENSION_PDF));
+	}
 }

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomFilePanel.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomFilePanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomFilePanel.java
index 98b96df..3a17f10 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomFilePanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomFilePanel.java
@@ -21,6 +21,7 @@ package org.apache.openmeetings.web.room.sidebar;
 import static org.apache.openmeetings.util.OmFileHelper.getHumanSize;
 import static org.apache.openmeetings.web.app.Application.getBean;
 import static org.apache.openmeetings.web.app.WebSession.getUserId;
+import static org.apache.openmeetings.web.common.BasePanel.EVT_CLICK;
 
 import org.apache.openmeetings.db.dao.file.FileItemDao;
 import org.apache.openmeetings.db.dao.record.RecordingDao;
@@ -71,7 +72,7 @@ public class RoomFilePanel extends FileTreePanel {
 	protected Component getUpload() {
 		return super.getUpload()
 				.setVisible(true)
-				.add(new AjaxEventBehavior("click") {
+				.add(new AjaxEventBehavior(EVT_CLICK) {
 					private static final long serialVersionUID = 1L;
 
 					@Override

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/WbPanel.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/WbPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/WbPanel.java
index 91ba21d..715f3a3 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/WbPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/wb/WbPanel.java
@@ -20,6 +20,7 @@ package org.apache.openmeetings.web.room.wb;
 
 import static org.apache.openmeetings.db.dto.room.Whiteboard.ATTR_FILE_ID;
 import static org.apache.openmeetings.db.dto.room.Whiteboard.ATTR_FILE_TYPE;
+import static org.apache.openmeetings.db.dto.room.Whiteboard.ATTR_SLIDE;
 import static org.apache.openmeetings.db.dto.room.Whiteboard.ATTR_TYPE;
 import static org.apache.openmeetings.db.dto.room.Whiteboard.ITEMS_KEY;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.ATTR_CLASS;
@@ -186,7 +187,7 @@ public class WbPanel extends AbstractWbPanel {
 		sb.append("WbArea.activateWb(").append(wbj).append(");");
 		Whiteboard wb = wbs.get(wbs.getActiveWb());
 		if (wb != null) {
-			sb.append("WbArea.setSlide(").append(wbj.put("slide", wb.getSlide())).append(");");
+			sb.append("WbArea.setSlide(").append(wbj.put(ATTR_SLIDE, wb.getSlide())).append(");");
 		}
 		sb.append("WbArea.loadVideos();");
 	}
@@ -255,7 +256,7 @@ public class WbPanel extends AbstractWbPanel {
 							arr.put(new JSONObject()
 									.put("wbId", wb.getId())
 									.put("uid", o.getString("uid"))
-									.put("slide", o.getString("slide"))
+									.put(ATTR_SLIDE, o.getString(ATTR_SLIDE))
 									.put("status", sts));
 						}
 					}
@@ -308,7 +309,7 @@ public class WbPanel extends AbstractWbPanel {
 				{
 					Whiteboard wb = WhiteboardCache.get(roomId).get(obj.optLong("wbId", -1));
 					if (wb != null) {
-						wb.setSlide(obj.optInt("slide", 0));
+						wb.setSlide(obj.optInt(ATTR_SLIDE, 0));
 						WhiteboardCache.update(roomId, wb);
 						sendWbOthers(WbAction.setSlide, obj);
 					}
@@ -388,7 +389,7 @@ public class WbPanel extends AbstractWbPanel {
 				case clearSlide:
 				{
 					Whiteboard wb = WhiteboardCache.get(roomId).get(obj.getLong("wbId"));
-					JSONArray arr = wb.clearSlide(obj.getInt("slide"));
+					JSONArray arr = wb.clearSlide(obj.getInt(ATTR_SLIDE));
 					if (arr.length() != 0) {
 						WhiteboardCache.update(roomId, wb);
 						addUndo(wb.getId(), new UndoObject(UndoObject.Type.remove, arr));
@@ -450,7 +451,7 @@ public class WbPanel extends AbstractWbPanel {
 						JSONObject ns = obj.getJSONObject("status");
 						po.put("status", ns.put("updated", System.currentTimeMillis()));
 						WhiteboardCache.update(roomId, wb.put(uid, po));
-						obj.put("slide", po.getInt("slide"));
+						obj.put(ATTR_SLIDE, po.getInt(ATTR_SLIDE));
 						sendWbAll(WbAction.videoStatus, obj);
 					}
 				}
@@ -585,7 +586,7 @@ public class WbPanel extends AbstractWbPanel {
 							.put("width", fi.getWidth() == null ? DEFAULT_WIDTH : fi.getWidth())
 							.put("height", fi.getHeight() == null ? DEFAULT_HEIGHT : fi.getHeight())
 							.put("uid", wuid)
-							.put("slide", wb.getSlide())
+							.put(ATTR_SLIDE, wb.getSlide())
 							;
 					if (FileItem.Type.Video == fi.getType() || FileItem.Type.Recording == fi.getType()) {
 						file.put(ATTR_TYPE, "video");

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/MessageDialog.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/MessageDialog.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/MessageDialog.java
index a9b8ffe..55bea25 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/MessageDialog.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/MessageDialog.java
@@ -25,6 +25,7 @@ import static org.apache.openmeetings.web.app.Application.getBean;
 import static org.apache.openmeetings.web.app.Application.getContactsLink;
 import static org.apache.openmeetings.web.app.Application.getInvitationLink;
 import static org.apache.openmeetings.web.app.WebSession.getUserId;
+import static org.apache.openmeetings.web.common.BasePanel.EVT_CLICK;
 import static org.apache.openmeetings.web.util.CalendarWebHelper.getZoneId;
 
 import java.time.LocalDateTime;
@@ -104,7 +105,7 @@ public class MessageDialog extends AbstractFormDialog<PrivateMessage> {
 		form.add(new WysiwygEditor("message", toolbar));
 		form.add(roomParamsBlock.setOutputMarkupId(true));
 		final CheckBox bookedRoom = new CheckBox("bookedRoom");
-		form.add(bookedRoom.setOutputMarkupId(true).add(new AjaxEventBehavior("click") {
+		form.add(bookedRoom.setOutputMarkupId(true).add(new AjaxEventBehavior(EVT_CLICK) {
 			private static final long serialVersionUID = 1L;
 
 			@Override

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/CalendarPanel.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/CalendarPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/CalendarPanel.java
index 85c7d33..55b8c26 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/CalendarPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/CalendarPanel.java
@@ -278,7 +278,7 @@ public class CalendarPanel extends UserBasePanel {
 			protected void populateItem(final ListItem<OmCalendar> item) {
 				item.setOutputMarkupId(true);
 				final OmCalendar cal = item.getModelObject();
-				item.add(new Button("item", new PropertyModel<String>(cal, "title")).add(new AjaxEventBehavior("click") {
+				item.add(new Button("item", new PropertyModel<String>(cal, "title")).add(new AjaxEventBehavior(EVT_CLICK) {
 					private static final long serialVersionUID = 1L;
 
 					@Override
@@ -290,7 +290,7 @@ public class CalendarPanel extends UserBasePanel {
 			}
 		});
 
-		add(new Button("syncCalendarButton").add(new AjaxEventBehavior("click") {
+		add(new Button("syncCalendarButton").add(new AjaxEventBehavior(EVT_CLICK) {
 			private static final long serialVersionUID = 1L;
 
 			@Override
@@ -299,7 +299,7 @@ public class CalendarPanel extends UserBasePanel {
 			}
 		}));
 
-		add(new Button("submitCalendar").add(new AjaxEventBehavior("click") {
+		add(new Button("submitCalendar").add(new AjaxEventBehavior(EVT_CLICK) {
 			private static final long serialVersionUID = 1L;
 
 			@Override

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/StartWidgetView.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/StartWidgetView.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/StartWidgetView.java
index dae36ad..a06b574 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/StartWidgetView.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/StartWidgetView.java
@@ -18,6 +18,7 @@
  */
 package org.apache.openmeetings.web.user.dashboard;
 
+import static org.apache.openmeetings.web.common.BasePanel.EVT_CLICK;
 import static org.apache.openmeetings.web.util.OmUrlFragment.CALENDAR;
 import static org.apache.openmeetings.web.util.OmUrlFragment.ROOMS_PUBLIC;
 
@@ -44,7 +45,7 @@ public class StartWidgetView extends WidgetView {
 		add(new WebMarkupContainer("step4").add(new PublicRoomsEventBehavior()));
 		add(new Label("123msg", Application.getString("widget.start.desc")).setEscapeModelStrings(false));
 		add(new Button("start").add(new PublicRoomsEventBehavior()));
-		add(new Button("calendar").add(new AjaxEventBehavior("click") {
+		add(new Button("calendar").add(new AjaxEventBehavior(EVT_CLICK) {
 			private static final long serialVersionUID = 1L;
 
 			@Override
@@ -58,7 +59,7 @@ public class StartWidgetView extends WidgetView {
 		private static final long serialVersionUID = 1L;
 
 		public PublicRoomsEventBehavior() {
-			super("click");
+			super(EVT_CLICK);
 		}
 
 		@Override

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/MessagesContactsPanel.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/MessagesContactsPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/MessagesContactsPanel.java
index 0c0d66a..c88c734 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/MessagesContactsPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/MessagesContactsPanel.java
@@ -172,7 +172,7 @@ public class MessagesContactsPanel extends UserBasePanel {
 		};
 		add(addFolder);
 		add(new JQueryBehavior(".email.new", "button"));
-		folders.add(inbox.add(new AjaxEventBehavior("click") {
+		folders.add(inbox.add(new AjaxEventBehavior(EVT_CLICK) {
 			private static final long serialVersionUID = 1L;
 
 			@Override
@@ -180,7 +180,7 @@ public class MessagesContactsPanel extends UserBasePanel {
 				selectFolder(inbox, INBOX_FOLDER_ID, target);
 			}
 		}));
-		folders.add(sent.add(new AjaxEventBehavior("click") {
+		folders.add(sent.add(new AjaxEventBehavior(EVT_CLICK) {
 			private static final long serialVersionUID = 1L;
 
 			@Override
@@ -188,7 +188,7 @@ public class MessagesContactsPanel extends UserBasePanel {
 				selectFolder(sent, SENT_FOLDER_ID, target);
 			}
 		}));
-		folders.add(trash.add(new AjaxEventBehavior("click") {
+		folders.add(trash.add(new AjaxEventBehavior(EVT_CLICK) {
 			private static final long serialVersionUID = 1L;
 
 			@Override
@@ -196,7 +196,7 @@ public class MessagesContactsPanel extends UserBasePanel {
 				selectFolder(trash, TRASH_FOLDER_ID, target);
 			}
 		}));
-		folders.add(new WebMarkupContainer("newdir").add(new AjaxEventBehavior("click") {
+		folders.add(new WebMarkupContainer("newdir").add(new AjaxEventBehavior(EVT_CLICK) {
 			private static final long serialVersionUID = 1L;
 
 			@Override
@@ -227,7 +227,7 @@ public class MessagesContactsPanel extends UserBasePanel {
 						target.add(folders, moveDropDown);
 					}
 				});
-				item.add(new AjaxEventBehavior("click") {
+				item.add(new AjaxEventBehavior(EVT_CLICK) {
 					private static final long serialVersionUID = 1L;
 
 					@Override
@@ -279,7 +279,7 @@ public class MessagesContactsPanel extends UserBasePanel {
 				item.add(new Label("from", getDisplayName(m.getFrom())));
 				item.add(new Label("subject", m.getSubject()));
 				item.add(new Label("send", getDateFormat().format(m.getInserted())));
-				item.add(new AjaxEventBehavior("click") {
+				item.add(new AjaxEventBehavior(EVT_CLICK) {
 					private static final long serialVersionUID = 1L;
 
 					@Override
@@ -325,7 +325,7 @@ public class MessagesContactsPanel extends UserBasePanel {
 		add(unread.setOutputMarkupId(true));
 
 		add(buttons.setOutputMarkupId(true));
-		buttons.add(toInboxBtn.add(new AjaxEventBehavior("click") {
+		buttons.add(toInboxBtn.add(new AjaxEventBehavior(EVT_CLICK) {
 			private static final long serialVersionUID = 1L;
 
 			@Override
@@ -334,7 +334,7 @@ public class MessagesContactsPanel extends UserBasePanel {
 				selectFolder(selectedFolder, selectedFolderModel.getObject(), target);
 			}
 		}));
-		buttons.add(deleteBtn.add(new AjaxEventBehavior("click") {
+		buttons.add(deleteBtn.add(new AjaxEventBehavior(EVT_CLICK) {
 				private static final long serialVersionUID = 1L;
 
 				@Override
@@ -348,7 +348,7 @@ public class MessagesContactsPanel extends UserBasePanel {
 					target.add(container);
 				}
 			}));
-		buttons.add(readBtn.add(new AjaxEventBehavior("click") {
+		buttons.add(readBtn.add(new AjaxEventBehavior(EVT_CLICK) {
 				private static final long serialVersionUID = 1L;
 
 				@Override
@@ -358,7 +358,7 @@ public class MessagesContactsPanel extends UserBasePanel {
 					target.add(container, unread);
 				}
 			}));
-		buttons.add(unreadBtn.add(new AjaxEventBehavior("click") {
+		buttons.add(unreadBtn.add(new AjaxEventBehavior(EVT_CLICK) {
 				private static final long serialVersionUID = 1L;
 
 				@Override
@@ -446,7 +446,7 @@ public class MessagesContactsPanel extends UserBasePanel {
 					item.add(AttributeModifier.append(ATTR_CLASS, "unread"));
 				}
 				item.add(new Label("name", getName(uc)));
-				item.add(new WebMarkupContainer("accept").add(new AjaxEventBehavior("click") {
+				item.add(new WebMarkupContainer("accept").add(new AjaxEventBehavior(EVT_CLICK) {
 					private static final long serialVersionUID = 1L;
 
 					@Override
@@ -455,7 +455,7 @@ public class MessagesContactsPanel extends UserBasePanel {
 						updateContacts(target);
 					}
 				}).setVisible(uc.isPending()));
-				item.add(new WebMarkupContainer("decline").add(new AjaxEventBehavior("click") {
+				item.add(new WebMarkupContainer("decline").add(new AjaxEventBehavior(EVT_CLICK) {
 					private static final long serialVersionUID = 1L;
 
 					@Override

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/ProfileForm.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/ProfileForm.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/ProfileForm.java
index fb55209..b25e900 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/ProfileForm.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/ProfileForm.java
@@ -21,6 +21,7 @@ package org.apache.openmeetings.web.user.profile;
 import static org.apache.openmeetings.util.OpenmeetingsVariables.getWebAppRootKey;
 import static org.apache.openmeetings.web.app.Application.getBean;
 import static org.apache.openmeetings.web.app.WebSession.getUserId;
+import static org.apache.openmeetings.web.common.BasePanel.EVT_CLICK;
 
 import org.apache.openmeetings.db.dao.user.UserDao;
 import org.apache.openmeetings.db.entity.user.User;
@@ -93,7 +94,7 @@ public class ProfileForm extends Form<User> {
 				target.add(ProfileForm.this);
 			}
 		});
-		add(new WebMarkupContainer("changePwd").add(new ButtonBehavior("#changePwd"), new AjaxEventBehavior("click") {
+		add(new WebMarkupContainer("changePwd").add(new ButtonBehavior("#changePwd"), new AjaxEventBehavior(EVT_CLICK) {
 			private static final long serialVersionUID = 1L;
 
 			@Override

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/rooms/RoomEnterBehavior.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/rooms/RoomEnterBehavior.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/rooms/RoomEnterBehavior.java
index 240102e..b3abaa3 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/rooms/RoomEnterBehavior.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/rooms/RoomEnterBehavior.java
@@ -18,6 +18,8 @@
  */
 package org.apache.openmeetings.web.user.rooms;
 
+import static org.apache.openmeetings.web.common.BasePanel.EVT_CLICK;
+
 import org.apache.openmeetings.web.pages.MainPage;
 import org.apache.openmeetings.web.util.OmUrlFragment;
 import org.apache.openmeetings.web.util.OmUrlFragment.AreaKeys;
@@ -30,7 +32,7 @@ public class RoomEnterBehavior extends AjaxEventBehavior {
 	protected final Long roomId;
 
 	public RoomEnterBehavior(Long roomId) {
-		super("click");
+		super(EVT_CLICK);
 		this.roomId = roomId;
 	}
 

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/eb50df09/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/rooms/RoomListPanel.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/rooms/RoomListPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/rooms/RoomListPanel.java
index ed56da8..fd3fd33 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/rooms/RoomListPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/rooms/RoomListPanel.java
@@ -19,6 +19,7 @@
 package org.apache.openmeetings.web.user.rooms;
 
 import static org.apache.openmeetings.util.OpenmeetingsVariables.ATTR_TITLE;
+import static org.apache.openmeetings.web.common.BasePanel.EVT_CLICK;
 
 import java.util.List;
 
@@ -57,7 +58,7 @@ public class RoomListPanel extends Panel {
 			protected void populateItem(ListItem<Room> item) {
 				final Room r = item.getModelObject();
 				WebMarkupContainer roomContainer;
-				item.add((roomContainer = new WebMarkupContainer("roomContainer")).add(new AjaxEventBehavior("click"){
+				item.add((roomContainer = new WebMarkupContainer("roomContainer")).add(new AjaxEventBehavior(EVT_CLICK){
 					private static final long serialVersionUID = 1L;
 
 					@Override