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

svn commit: r1712911 [11/16] - in /openmeetings/branches/3.1.x: openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/ openmeetings-core/src/main/java/org/apache/openmeetings/core/data/conference/ openmeetings-core/src/main/java/org/ap...

Added: openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat.js
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat.js?rev=1712911&view=auto
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat.js (added)
+++ openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat.js Fri Nov  6 06:18:44 2015
@@ -0,0 +1,107 @@
+/**
+ * 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.
+ */
+var chatTabs, tabTemplate = "<li><a href='#{href}'>#{label}</a></li>"
+	, msgTemplate = "<div id='chat-msg-id-#{id}'><span class='from'>#{from}</span><span class='date'>#{sent}</span>#{msg}</div>"
+	, acceptTemplate = "<span class='tick om-icon align-right clickable' data-msgid='#{msgid}' data-roomid='#{roomid}' onclick='var e=$(this);acceptMessage(e.data(\"roomid\"),e.data(\"msgid\"));e.parent().remove();'></span>"
+	, closeBlock = "<span class='ui-icon ui-icon-close' role='presentation'></span>"
+	, closedHeight = "20px", openedHeight = "345px";
+$(function() {
+	Wicket.Event.subscribe("/websocket/message", function(jqEvent, msg) {
+		var m = jQuery.parseJSON(msg);
+		if (m) {
+			switch(m.type) {
+				case "chat":
+					addChatMessage(m);
+					break;
+			}
+		}
+	});
+	chatTabs = $("#chatTabs").tabs({
+		activate: function(event, ui) {
+			$('#activeChatTab').val(ui.newPanel[0].id);
+		}
+	});
+	// close icon: removing the tab on click
+	chatTabs.delegate("span.ui-icon-close", "click", function() {
+		var panelId = $(this).closest("li").remove().attr("aria-controls");
+		$("#" + panelId).remove();
+		chatTabs.tabs("refresh");
+	});
+});
+function openChat() {
+	if ($('#chatPanel').height() < 24) {
+		$('#chat .control.block .ui-icon').removeClass('ui-icon-carat-1-n').addClass('ui-icon-carat-1-s');
+		$('#chatPanel, #chat').animate({height: openedHeight}, 1000);
+	}
+}
+function closeChat() {
+	var chat = $('#chatPanel');
+	if ($('#chatPanel').height() > 24) {
+		$('#chat .control.block .ui-icon').removeClass('ui-icon-carat-1-s').addClass('ui-icon-carat-1-n');
+		chat.animate({height: closedHeight}, 1000);
+		$('#chatPanel, #chat').animate({height: closedHeight}, 1000);
+	}
+}
+function toggleChat() {
+	if ($('#chatPanel').height() < 24) {
+		openChat();
+	} else {
+		closeChat();
+	}
+}
+function activateTab(id) {
+	chatTabs.tabs("option", "active", chatTabs.find('a[href="#' + id + '"]').parent().index());
+}
+function addChatTab(id, label) {
+	if ($('#chat').length < 1 || $('#' + id).length > 0) {
+		return;
+	}
+	var li = $(tabTemplate.replace(/#\{href\}/g, "#" + id).replace(/#\{label\}/g, label));
+	if (id.indexOf("chatTab-r") != 0) {
+		li.append(closeBlock);
+	}
+	chatTabs.find(".ui-tabs-nav").append(li);
+	chatTabs.append("<div class='messageArea' id='" + id + "'></div>");
+	chatTabs.tabs("refresh");
+	activateTab(id);
+}
+function addChatMessage(m) {
+	if ($('#chat').length > 0 && m && m.type == "chat") {
+		var msg;
+		for (var i = 0; i < m.msg.length; ++i) {
+			var cm = m.msg[i];
+			//needModeration
+			msg = $(msgTemplate.replace(/#\{id\}/g, cm.id).replace(/#\{from\}/g, cm.from).replace(/#\{sent\}/g, cm.sent).replace(/#\{msg\}/g, cm.message));
+			if (cm.needModeration) {
+				msg.append(acceptTemplate.replace(/#\{msgid\}/g, cm.id).replace(/#\{roomid\}/g, cm.scope.substring(9)));
+			}
+			if (!$('#' + cm.scope).length) {
+				addChatTab(cm.scope, cm.scopeName);
+			}
+			if (m.mode == "accept") {
+				$('#chat-msg-id-' + cm.id).remove();
+			}
+			$('#' + cm.scope).append(msg);
+		}
+		if (msg[0]) {
+			msg[0].scrollIntoView();
+		}
+		$('.messageArea').emoticonize();
+	}
+}

Modified: openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/WelcomeWidgetView.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/WelcomeWidgetView.java?rev=1712911&r1=1712910&r2=1712911&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/WelcomeWidgetView.java (original)
+++ openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/WelcomeWidgetView.java Fri Nov  6 06:18:44 2015
@@ -24,7 +24,7 @@ import static org.apache.openmeetings.we
 import static org.apache.openmeetings.web.util.OmUrlFragment.PROFILE_EDIT;
 import static org.apache.openmeetings.web.util.OmUrlFragment.PROFILE_MESSAGES;
 
-import org.apache.openmeetings.db.dao.user.PrivateMessagesDao;
+import org.apache.openmeetings.db.dao.user.PrivateMessageDao;
 import org.apache.openmeetings.db.dao.user.UserDao;
 import org.apache.openmeetings.db.entity.user.User;
 import org.apache.openmeetings.web.common.UploadableProfileImagePanel;
@@ -59,7 +59,7 @@ public class WelcomeWidgetView extends W
 			public void onClick(AjaxRequestTarget target) {
 				((MainPage)getPage()).updateContents(PROFILE_MESSAGES, target);
 			}
-		}.add(new Label("unread", Model.of("" + getBean(PrivateMessagesDao.class).count(getUserId(), INBOX_FOLDER_ID, null)))));
+		}.add(new Label("unread", Model.of("" + getBean(PrivateMessageDao.class).count(getUserId(), INBOX_FOLDER_ID, null)))));
 		add(new AjaxLink<Void>("editProfile") {
 			private static final long serialVersionUID = -1847619557485964386L;
 

Modified: openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/MessageDialog.html
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/MessageDialog.html?rev=1712911&r1=1712910&r2=1712911&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/MessageDialog.html (original)
+++ openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/MessageDialog.html Fri Nov  6 06:18:44 2015
@@ -57,7 +57,7 @@
 								<table>
 									<tr>
 										<td><wicket:message key="194"/></td>
-										<td><select class="messages selector" wicket:id="room.roomtype"></select></td>
+										<td><select class="messages selector" wicket:id="room.type"></select></td>
 									</tr>
 									<tr>
 										<td><wicket:message key="570" /></td>

Modified: openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/MessageDialog.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/MessageDialog.java?rev=1712911&r1=1712910&r2=1712911&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/MessageDialog.java (original)
+++ openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/MessageDialog.java Fri Nov  6 06:18:44 2015
@@ -21,10 +21,10 @@ package org.apache.openmeetings.web.user
 import static org.apache.openmeetings.db.entity.user.PrivateMessage.INBOX_FOLDER_ID;
 import static org.apache.openmeetings.db.entity.user.PrivateMessage.SENT_FOLDER_ID;
 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.util.CalendarWebHelper.getZoneId;
-import static org.apache.openmeetings.web.util.RoomTypeDropDown.getRoomTypes;
 
 import java.util.ArrayList;
 import java.util.Arrays;
@@ -32,10 +32,12 @@ import java.util.Collection;
 import java.util.Date;
 import java.util.List;
 
+import org.apache.openmeetings.core.mail.MailHandler;
 import org.apache.openmeetings.db.dao.basic.ConfigurationDao;
 import org.apache.openmeetings.db.dao.calendar.AppointmentDao;
+import org.apache.openmeetings.db.dao.room.IInvitationManager;
 import org.apache.openmeetings.db.dao.room.RoomDao;
-import org.apache.openmeetings.db.dao.user.PrivateMessagesDao;
+import org.apache.openmeetings.db.dao.user.PrivateMessageDao;
 import org.apache.openmeetings.db.dao.user.UserDao;
 import org.apache.openmeetings.db.entity.calendar.Appointment;
 import org.apache.openmeetings.db.entity.calendar.MeetingMember;
@@ -45,13 +47,10 @@ import org.apache.openmeetings.db.entity
 import org.apache.openmeetings.db.entity.user.PrivateMessage;
 import org.apache.openmeetings.db.entity.user.User;
 import org.apache.openmeetings.db.entity.user.User.Type;
-import org.apache.openmeetings.service.room.InvitationManager;
-import org.apache.openmeetings.core.mail.MailHandler;
 import org.apache.openmeetings.util.CalendarHelper;
 import org.apache.openmeetings.web.app.Application;
 import org.apache.openmeetings.web.common.OmDateTimePicker;
 import org.apache.openmeetings.web.util.CalendarWebHelper;
-import org.apache.openmeetings.web.util.ContactsHelper;
 import org.apache.openmeetings.web.util.RoomTypeDropDown;
 import org.apache.openmeetings.web.util.UserMultiChoice;
 import org.apache.wicket.ajax.AjaxEventBehavior;
@@ -95,9 +94,9 @@ public class MessageDialog extends Abstr
 		return 650;
 	}
 	
-	public void open(IPartialPageRequestHandler target, long userId) {
+	public void open(IPartialPageRequestHandler handler, long userId) {
 		getModelObject().setTo(getBean(UserDao.class).get(userId));
-		open(target);
+		open(handler);
 	}
 	
 	public MessageDialog reset(boolean isPrivate) {
@@ -113,7 +112,7 @@ public class MessageDialog extends Abstr
 		p.setFolderId(INBOX_FOLDER_ID);
 		Room r = new Room();
 		r.setAppointment(true);
-		r.setRoomtype(getRoomTypes().get(0));
+		r.setType(Room.Type.conference);
 		p.setRoom(r);
 		setModelObject(p);
 		roomParams.setVisible(getModelObject().isBookedRoom());
@@ -123,12 +122,12 @@ public class MessageDialog extends Abstr
 	}
 	
 	@Override
-	protected void onOpen(IPartialPageRequestHandler target) {
+	protected void onOpen(IPartialPageRequestHandler handler) {
 		if (getModel().getObject().getTo() != null) {
 			modelTo.getObject().add(getModel().getObject().getTo());
 		}
-		target.add(form);
-		super.onOpen(target);
+		handler.add(form);
+		super.onOpen(handler);
 	}
 	
 	public MessageDialog(String id, CompoundPropertyModel<PrivateMessage> model) {
@@ -155,7 +154,7 @@ public class MessageDialog extends Abstr
 			}
 		}));
 		roomParamsBlock.add(roomParams);
-		roomParams.add(new RoomTypeDropDown("room.roomtype"));
+		roomParams.add(new RoomTypeDropDown("room.type"));
 		roomParams.add(start);
 		roomParams.add(end);
 		add(form.setOutputMarkupId(true));
@@ -219,9 +218,9 @@ public class MessageDialog extends Abstr
 		} else {
 			p.setRoom(null);
 		}
-		PrivateMessagesDao msgDao = getBean(PrivateMessagesDao.class);
+		PrivateMessageDao msgDao = getBean(PrivateMessageDao.class);
 		for (User to : modelTo.getObject()) {
-			if (to.getUser_id() == null) {
+			if (to.getId() == null) {
 				userDao.update(to, getUserId());
 			}
 			//to send
@@ -234,13 +233,13 @@ public class MessageDialog extends Abstr
 			p.setOwner(to);
 			p.setFolderId(INBOX_FOLDER_ID);
 			msgDao.update(p, getUserId());
-			if (to.getAdresses() != null) {
-				String aLinkHTML = 	(isPrivate && to.getType() == Type.user) ? "<br/><br/>" + "<a href='" + ContactsHelper.getLink() + "'>"
-							+ Application.getString(1302, to.getLanguage_id()) + "</a><br/>" : "";
+			if (to.getAddress() != null) {
+				String aLinkHTML = 	(isPrivate && to.getType() == Type.user) ? "<br/><br/>" + "<a href='" + getContactsLink() + "'>"
+							+ Application.getString(1302, to.getLanguageId()) + "</a><br/>" : "";
 				String invitation_link = "";
 				if (p.isBookedRoom()) {
-					Invitation i = getBean(InvitationManager.class).getInvitation(to, p.getRoom(),
-							false, null, Valid.Period, owner, to.getLanguage_id()
+					Invitation i = getBean(IInvitationManager.class).getInvitation(to, p.getRoom(),
+							false, null, Valid.Period, owner, to.getLanguageId()
 							, CalendarHelper.getDate(start.getModelObject(), to.getTimeZoneId())
 							, CalendarHelper.getDate(end.getModelObject(), to.getTimeZoneId()), null);
 					
@@ -250,15 +249,15 @@ public class MessageDialog extends Abstr
 						invitation_link = "";
 					} else {
 						invitation_link = "<br/>" //
-								+ Application.getString(503, to.getLanguage_id())
+								+ Application.getString(503, to.getLanguageId())
 								+ "<br/><a href='" + invitation_link
 								+ "'>"
-								+ Application.getString(504, to.getLanguage_id()) + "</a><br/>";
+								+ Application.getString(504, to.getLanguageId()) + "</a><br/>";
 					}
 				}
 				
-				getBean(MailHandler.class).send(to.getAdresses().getEmail(),
-						Application.getString(1301, to.getLanguage_id()) + p.getSubject(),
+				getBean(MailHandler.class).send(to.getAddress().getEmail(),
+						Application.getString(1301, to.getLanguageId()) + p.getSubject(),
 						(p.getMessage() == null ? "" : p.getMessage().replaceAll("\\<.*?>", "")) + aLinkHTML + invitation_link);
 			}
 		}

Modified: openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/MessagesContactsPanel.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/MessagesContactsPanel.java?rev=1712911&r1=1712910&r2=1712911&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/MessagesContactsPanel.java (original)
+++ openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/MessagesContactsPanel.java Fri Nov  6 06:18:44 2015
@@ -34,8 +34,8 @@ import java.util.Set;
 
 import org.apache.openmeetings.db.dao.calendar.AppointmentDao;
 import org.apache.openmeetings.db.dao.user.PrivateMessageFolderDao;
-import org.apache.openmeetings.db.dao.user.PrivateMessagesDao;
-import org.apache.openmeetings.db.dao.user.UserContactsDao;
+import org.apache.openmeetings.db.dao.user.PrivateMessageDao;
+import org.apache.openmeetings.db.dao.user.UserContactDao;
 import org.apache.openmeetings.db.entity.calendar.Appointment;
 import org.apache.openmeetings.db.entity.room.Room;
 import org.apache.openmeetings.db.entity.user.PrivateMessage;
@@ -143,7 +143,7 @@ public class MessagesContactsPanel exten
 			}
 
 			public String getIdValue(PrivateMessageFolder object, int index) {
-				return "" + object.getPrivateMessageFolderId();
+				return "" + object.getId();
 			}
 		});
 	private WebMarkupContainer selectedFolder;
@@ -160,7 +160,7 @@ public class MessagesContactsPanel exten
 	
 	private void setFolderClass(ListItem<PrivateMessageFolder> folder) {
 		folder.add(AttributeAppender.replace("class", "email folder clickable"));
-		if (folder.getModelObject().getPrivateMessageFolderId() == selectedFolderModel.getObject()) {
+		if (folder.getModelObject().getId() == selectedFolderModel.getObject()) {
 			selectFolder(folder);
 		}
 	}
@@ -174,11 +174,11 @@ public class MessagesContactsPanel exten
 	}
 	
 	private String getEmail(User u) {
-		return u == null || u.getAdresses() == null ? "" : u.getAdresses().getEmail();
+		return u == null || u.getAddress() == null ? "" : u.getAddress().getEmail();
 	}
 	
 	private void selectMessage(long id, AjaxRequestTarget target) {
-		PrivateMessage msg = getBean(PrivateMessagesDao.class).get(id);
+		PrivateMessage msg = getBean(PrivateMessageDao.class).get(id);
 		selectedMessage.addOrReplace(new Label("from", msg == null ? "" : getEmail(msg.getFrom())));
 		selectedMessage.addOrReplace(new Label("to", msg == null ? "" : getEmail(msg.getTo())));
 		selectedMessage.addOrReplace(new Label("subj", msg == null ? "" : msg.getSubject()));
@@ -187,10 +187,10 @@ public class MessagesContactsPanel exten
 			Room r = msg.getRoom();
 			if (r != null) {
 				//TODO add time check
-				Appointment a = getBean(AppointmentDao.class).getAppointmentByRoom(r.getRooms_id());
+				Appointment a = getBean(AppointmentDao.class).getByRoom(r.getId());
 				roomContainer.addOrReplace(new Label("start", a == null ? "" : getDateFormat().format(a.getStart())));
 				roomContainer.addOrReplace(new Label("end", a == null ? "" : getDateFormat().format(a.getEnd())));
-				roomContainer.addOrReplace(new Button("enter").add(new RoomEnterBehavior(r.getRooms_id())));
+				roomContainer.addOrReplace(new Button("enter").add(new RoomEnterBehavior(r.getId())));
 			}
 			roomContainer.setVisible(r != null);
 		}
@@ -229,7 +229,7 @@ public class MessagesContactsPanel exten
 	private void emptySelection(AjaxRequestTarget target) {
 		selectedMessages.clear();
 		selectMessage(-1, target);
-		unread.setDefaultModelObject(getBean(PrivateMessagesDao.class).count(getUserId(), selectedFolderModel.getObject(), null));
+		unread.setDefaultModelObject(getBean(PrivateMessageDao.class).count(getUserId(), selectedFolderModel.getObject(), null));
 		if (target != null) {
 			target.add(unread);
 		}
@@ -250,8 +250,8 @@ public class MessagesContactsPanel exten
 	}
 	
 	private void updateContacts(AjaxRequestTarget target) {
-		pendingContacts.setDefaultModelObject(getBean(UserContactsDao.class).getContactRequestsByUserAndStatus(getUserId(), true).size());
-		allContacts.setDefaultModelObject(getBean(UserContactsDao.class).getContactsByUserAndStatus(getUserId(), false).size());
+		pendingContacts.setDefaultModelObject(getBean(UserContactDao.class).getContactRequestsByUserAndStatus(getUserId(), true).size());
+		allContacts.setDefaultModelObject(getBean(UserContactDao.class).getContactsByUserAndStatus(getUserId(), false).size());
 		if (target != null) {
 			target.add(contacts);
 		}
@@ -259,7 +259,7 @@ public class MessagesContactsPanel exten
 	
 	public MessagesContactsPanel(String id) {
 		super(id);
-		NOT_MOVE_FOLDER.setPrivateMessageFolderId(MOVE_CHOOSE);
+		NOT_MOVE_FOLDER.setId(MOVE_CHOOSE);
 		NOT_MOVE_FOLDER.setFolderName(Application.getString(1243));
 		foldersModel.setObject(getBean(PrivateMessageFolderDao.class).get(0, Integer.MAX_VALUE));
 		updateMoveModel();
@@ -357,19 +357,19 @@ public class MessagesContactsPanel exten
 
 					@Override
 					protected void onEvent(AjaxRequestTarget target) {
-						selectFolder(item, item.getModelObject().getPrivateMessageFolderId(), target);
+						selectFolder(item, item.getModelObject().getId(), target);
 					}
 				});
 				setFolderClass(item);
 			}
 		}).setOutputMarkupId(true));
 		
-		SearchableDataProvider<PrivateMessage> sdp = new SearchableDataProvider<PrivateMessage>(PrivateMessagesDao.class) {
+		SearchableDataProvider<PrivateMessage> sdp = new SearchableDataProvider<PrivateMessage>(PrivateMessageDao.class) {
 			private static final long serialVersionUID = 1L;
 
 			@Override
-			protected PrivateMessagesDao getDao() {
-				return (PrivateMessagesDao)super.getDao();
+			protected PrivateMessageDao getDao() {
+				return (PrivateMessageDao)super.getDao();
 			}
 			
 			@Override
@@ -455,7 +455,7 @@ public class MessagesContactsPanel exten
 			
 			@Override
 			protected void onEvent(AjaxRequestTarget target) {
-				getBean(PrivateMessagesDao.class).moveMailsToFolder(selectedMessages, INBOX_FOLDER_ID);
+				getBean(PrivateMessageDao.class).moveMailsToFolder(selectedMessages, INBOX_FOLDER_ID);
 				selectFolder(selectedFolder, selectedFolderModel.getObject(), target);
 			}
 		}));
@@ -465,9 +465,9 @@ public class MessagesContactsPanel exten
 				@Override
 				protected void onEvent(AjaxRequestTarget target) {
 					if (TRASH_FOLDER_ID == selectedFolderModel.getObject()) {
-						getBean(PrivateMessagesDao.class).delete(selectedMessages);
+						getBean(PrivateMessageDao.class).delete(selectedMessages);
 					} else {
-						getBean(PrivateMessagesDao.class).moveMailsToFolder(selectedMessages, TRASH_FOLDER_ID);
+						getBean(PrivateMessageDao.class).moveMailsToFolder(selectedMessages, TRASH_FOLDER_ID);
 					}
 					emptySelection(target);
 					target.add(container);
@@ -478,7 +478,7 @@ public class MessagesContactsPanel exten
 				
 				@Override
 				protected void onEvent(AjaxRequestTarget target) {
-					getBean(PrivateMessagesDao.class).updateReadStatus(selectedMessages, true);
+					getBean(PrivateMessageDao.class).updateReadStatus(selectedMessages, true);
 					emptySelection(target);
 					target.add(container, unread);
 				}
@@ -488,7 +488,7 @@ public class MessagesContactsPanel exten
 				
 				@Override
 				protected void onEvent(AjaxRequestTarget target) {
-					getBean(PrivateMessagesDao.class).updateReadStatus(selectedMessages, false);
+					getBean(PrivateMessageDao.class).updateReadStatus(selectedMessages, false);
 					emptySelection(target);
 					target.add(container);
 				}
@@ -525,9 +525,9 @@ public class MessagesContactsPanel exten
 
 			@Override
 			protected void onUpdate(AjaxRequestTarget target) {
-				long folderId = moveDropDown.getModelObject().getPrivateMessageFolderId();
+				long folderId = moveDropDown.getModelObject().getId();
 				if (folderId != MOVE_CHOOSE) {
-					getBean(PrivateMessagesDao.class).moveMailsToFolder(selectedMessages, folderId);
+					getBean(PrivateMessageDao.class).moveMailsToFolder(selectedMessages, folderId);
 				}
 				selectFolder(selectedFolder, selectedFolderModel.getObject(), target);
 			}
@@ -545,11 +545,11 @@ public class MessagesContactsPanel exten
 			}
 
 			public Iterator<? extends UserContact> iterator(long first, long count) {
-				return getBean(UserContactsDao.class).get(getUserId(), (int)first, (int)count).iterator();
+				return getBean(UserContactDao.class).get(getUserId(), (int)first, (int)count).iterator();
 			}
 
 			public long size() {
-				return getBean(UserContactsDao.class).count(getUserId());
+				return getBean(UserContactDao.class).count(getUserId());
 			}
 
 			public IModel<UserContact> model(UserContact object) {
@@ -568,7 +568,7 @@ public class MessagesContactsPanel exten
 			protected void populateItem(Item<UserContact> item) {
 				UserContact uc = item.getModelObject();
 				final long contactId = uc.getUserContactId();
-				final long userId = uc.getOwner().getUser_id();
+				final long userId = uc.getOwner().getId();
 				if (uc.isPending()) {
 					item.add(AttributeModifier.append("class", "unread"));
 				}
@@ -587,7 +587,7 @@ public class MessagesContactsPanel exten
 
 					@Override
 					protected void onEvent(AjaxRequestTarget target) {
-						getBean(UserContactsDao.class).deleteUserContact(contactId);
+						getBean(UserContactDao.class).deleteUserContact(contactId);
 						updateContacts(target);
 					}
 				}).setVisible(uc.isPending()));
@@ -612,7 +612,7 @@ public class MessagesContactsPanel exten
 
 					@Override
 					protected void onEvent(AjaxRequestTarget target) {
-						getBean(UserContactsDao.class).deleteUserContact(contactId);
+						getBean(UserContactDao.class).deleteUserContact(contactId);
 						updateContacts(target);
 					}
 				}).setVisible(!uc.isPending()));

Modified: openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/ProfileForm.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/ProfileForm.java?rev=1712911&r1=1712910&r2=1712911&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/ProfileForm.java (original)
+++ openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/ProfileForm.java Fri Nov  6 06:18:44 2015
@@ -64,8 +64,8 @@ public class ProfileForm extends Form<Us
 			@Override
 			protected void onRefreshSubmit(AjaxRequestTarget target, Form<?> form) {
 				User user = getModelObject();
-				if (user.getUser_id() != null) {
-					user = getBean(UserDao.class).get(user.getUser_id());
+				if (user.getId() != null) {
+					user = getBean(UserDao.class).get(user.getId());
 				} else {
 					user = new User();
 				}

Modified: openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/UserInfoDialog.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/UserInfoDialog.java?rev=1712911&r1=1712910&r2=1712911&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/UserInfoDialog.java (original)
+++ openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/UserInfoDialog.java Fri Nov  6 06:18:44 2015
@@ -24,7 +24,7 @@ import static org.apache.openmeetings.we
 import java.util.Arrays;
 import java.util.List;
 
-import org.apache.openmeetings.db.dao.user.UserContactsDao;
+import org.apache.openmeetings.db.dao.user.UserContactDao;
 import org.apache.openmeetings.web.app.Application;
 import org.apache.openmeetings.web.util.ContactsHelper;
 import org.apache.wicket.ajax.AjaxRequestTarget;
@@ -51,7 +51,7 @@ public class UserInfoDialog extends Abst
 
 	public void open(AjaxRequestTarget target, long userId) {
 		this.userId = userId;
-		contacts.setVisible(userId != getUserId() && getBean(UserContactsDao.class).get(userId, getUserId()) == null, target);
+		contacts.setVisible(userId != getUserId() && getBean(UserContactDao.class).get(userId, getUserId()) == null, target);
 		message.setVisible(userId != getUserId(), target);
 		container.replace(new UserProfilePanel("body", userId));
 		target.add(container);

Modified: openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/UserProfilePanel.html
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/UserProfilePanel.html?rev=1712911&r1=1712910&r2=1712911&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/UserProfilePanel.html (original)
+++ openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/UserProfilePanel.html Fri Nov  6 06:18:44 2015
@@ -60,23 +60,23 @@
 				<table wicket:id="address">
 					<tr>
 						<td><wicket:message key="607" /></td>
-						<td><span wicket:id="adresses.phone"></span></td>
+						<td><span wicket:id="address.phone"></span></td>
 					</tr>
 					<tr>
 						<td><wicket:message key="139" /></td>
-						<td><span wicket:id="adresses.street"></span>&nbsp;<span wicket:id="adresses.additionalname"></span></td>
+						<td><span wicket:id="address.street"></span>&nbsp;<span wicket:id="address.additionalname"></span></td>
 					</tr>
 					<tr>
 						<td><wicket:message key="140" /></td>
-						<td><span wicket:id="adresses.zip"></span>&nbsp;<span wicket:id="adresses.town"></span></td>
+						<td><span wicket:id="address.zip"></span>&nbsp;<span wicket:id="address.town"></span></td>
 					</tr>
 					<tr>
 						<td><wicket:message key="141" /></td>
-						<td><span wicket:id="adresses.states.name"></span></td>
+						<td><span wicket:id="address.states.name"></span></td>
 					</tr>
 					<tr>
 						<td><wicket:message key="142" /></td>
-						<td><span wicket:id="adresses.comment"></span></td>
+						<td><span wicket:id="address.comment"></span></td>
 					</tr>
 				</table>
 				<div wicket:id="addressDenied"></div>

Modified: openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/UserProfilePanel.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/UserProfilePanel.java?rev=1712911&r1=1712910&r2=1712911&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/UserProfilePanel.java (original)
+++ openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/UserProfilePanel.java Fri Nov  6 06:18:44 2015
@@ -21,7 +21,7 @@ package org.apache.openmeetings.web.user
 import static org.apache.openmeetings.web.app.Application.getBean;
 import static org.apache.openmeetings.web.app.WebSession.getUserId;
 
-import org.apache.openmeetings.db.dao.user.UserContactsDao;
+import org.apache.openmeetings.db.dao.user.UserContactDao;
 import org.apache.openmeetings.db.dao.user.UserDao;
 import org.apache.openmeetings.db.entity.user.User;
 import org.apache.openmeetings.web.app.Application;
@@ -44,24 +44,24 @@ public class UserProfilePanel extends Us
 	public UserProfilePanel(String id, CompoundPropertyModel<User> model) {
 		super(id, model);
 
-		add(new ProfileImagePanel("img", model.getObject().getUser_id()));
+		add(new ProfileImagePanel("img", model.getObject().getId()));
 		add(new Label("firstname"));
 		add(new Label("lastname"));
 		add(new Label("timeZoneId"));
 		add(new Label("regdate"));
 		add(new TextArea<String>("userOffers").setEnabled(false));
 		add(new TextArea<String>("userSearchs").setEnabled(false));
-		if (getUserId() == model.getObject().getUser_id() || model.getObject().getShowContactData()
-				|| (model.getObject().getShowContactDataToContacts() && getBean(UserContactsDao.class).isContact(model.getObject().getUser_id(), getUserId())))
+		if (getUserId() == model.getObject().getId() || model.getObject().getShowContactData()
+				|| (model.getObject().getShowContactDataToContacts() && getBean(UserContactDao.class).isContact(model.getObject().getId(), getUserId())))
 		{
 			addressDenied.setVisible(false);
-			address.add(new Label("adresses.phone"));
-			address.add(new Label("adresses.street"));
-			address.add(new Label("adresses.additionalname"));
-			address.add(new Label("adresses.zip"));
-			address.add(new Label("adresses.town"));
-			address.add(new Label("adresses.states.name"));
-			address.add(new Label("adresses.comment"));
+			address.add(new Label("address.phone"));
+			address.add(new Label("address.street"));
+			address.add(new Label("address.additionalname"));
+			address.add(new Label("address.zip"));
+			address.add(new Label("address.town"));
+			address.add(new Label("address.states.name"));
+			address.add(new Label("address.comment"));
 		} else {
 			address.setVisible(false);
 			addressDenied.setDefaultModelObject(Application.getString(Boolean.TRUE.equals(model.getObject().getShowContactDataToContacts()) ? 1269 : 1268));

Modified: openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/UserSearchPanel.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/UserSearchPanel.java?rev=1712911&r1=1712910&r2=1712911&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/UserSearchPanel.java (original)
+++ openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/UserSearchPanel.java Fri Nov  6 06:18:44 2015
@@ -27,7 +27,7 @@ import java.util.Arrays;
 import java.util.Iterator;
 import java.util.List;
 
-import org.apache.openmeetings.db.dao.user.UserContactsDao;
+import org.apache.openmeetings.db.dao.user.UserContactDao;
 import org.apache.openmeetings.db.dao.user.UserDao;
 import org.apache.openmeetings.db.entity.user.PrivateMessage;
 import org.apache.openmeetings.db.entity.user.User;
@@ -128,9 +128,9 @@ public class UserSearchPanel extends Use
 
 			@Override
 			protected void populateItem(Item<User> item) {
-				final UserContactsDao contactsDao = getBean(UserContactsDao.class);
+				final UserContactDao contactsDao = getBean(UserContactDao.class);
 				User u = item.getModelObject();
-				final long userId = u.getUser_id();
+				final long userId = u.getId();
 				item.add(new WebMarkupContainer("status").add(AttributeModifier.append("class", isUserOnline(userId) ? "online" : "offline")));
 				item.add(new Label("name", getName(u)));
 				item.add(new Label("tz", getBean(TimezoneUtil.class).getTimeZone(u).getID()));

Modified: openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/RecordingsPanel.html
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/RecordingsPanel.html?rev=1712911&r1=1712910&r2=1712911&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/RecordingsPanel.html (original)
+++ openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/RecordingsPanel.html Fri Nov  6 06:18:44 2015
@@ -20,39 +20,10 @@
 -->
 <html xmlns:wicket="http://wicket.apache.org">
 <wicket:panel>
-	<script type="text/javascript">
-		function treeRevert(dropped) {
-			$('#tree-anchor').get(0).scrollIntoView();
-			this.parent().parent().get(0).scrollIntoView();
-			return !dropped;
-		}
-	</script>
 	<table class="recording">
 		<tr>
-			<td valign="top" class="files file tree">
-				<div class="icons clear trash-toolbar" wicket:id="trash-toolbar">
-					<span wicket:id="create" class="folder-create om-icon align-left clickable" wicket:message="title:703"></span>
-					<span wicket:id="refresh" class="refresh om-icon align-left clickable" wicket:message="title:704"></span>
-					<span wicket:id="trash" class="trash om-icon align-right clickable"></span>
-					<span style="padding-left: 20px;" wicket:message="title:705"><wicket:message key="1224"/></span>
-					<div class="clear"></div>
-				</div>
-				<div wicket:id="tree-container" class="trees">
-					<div id="tree-anchor" style="height: 2px; width: 2px;"></div>
-					<div wicket:id="tree"></div>
-				</div>
-				<div class="sizes" wicket:id="sizes">
-					<table>
-						<tr>
-							<td><wicket:message key="923"/></td>
-							<td><span wicket:id="homeSize"></span></td>
-						</tr>
-						<tr>
-							<td><wicket:message key="924"/></td>
-							<td><span wicket:id="publicSize"></span></td>
-						</tr>
-					</table>
-				</div>
+			<td valign="top" class="file tree container">
+				<div wicket:id="tree"></div>
 				<div wicket:id="info"></div>
 			</td>
 			<td valign="top">
@@ -60,7 +31,5 @@
 			</td>
 		</tr>
 	</table>
-	<div wicket:id="addFolder"></div>
-	<div wicket:id="errors"></div>
 </wicket:panel>
 </html>

Modified: openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/RecordingsPanel.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/RecordingsPanel.java?rev=1712911&r1=1712910&r2=1712911&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/RecordingsPanel.java (original)
+++ openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/RecordingsPanel.java Fri Nov  6 06:18:44 2015
@@ -18,345 +18,65 @@
  */
 package org.apache.openmeetings.web.user.record;
 
-import static org.apache.openmeetings.util.OmFileHelper.MP4_EXTENSION;
 import static org.apache.openmeetings.util.OmFileHelper.getHumanSize;
-import static org.apache.openmeetings.util.OmFileHelper.isRecordingExists;
 import static org.apache.openmeetings.web.app.Application.getBean;
 import static org.apache.openmeetings.web.app.WebSession.getUserId;
 
-import java.util.Arrays;
-import java.util.Date;
-import java.util.Iterator;
-
-import org.apache.openmeetings.db.dao.record.FlvRecordingDao;
+import org.apache.openmeetings.db.dao.record.RecordingDao;
 import org.apache.openmeetings.db.dao.user.UserDao;
 import org.apache.openmeetings.db.dto.record.RecordingContainerData;
-import org.apache.openmeetings.db.entity.record.FlvRecording;
-import org.apache.openmeetings.db.entity.record.FlvRecording.Status;
+import org.apache.openmeetings.db.entity.file.FileItem;
+import org.apache.openmeetings.db.entity.record.Recording;
 import org.apache.openmeetings.db.entity.user.Organisation;
 import org.apache.openmeetings.db.entity.user.Organisation_Users;
-import org.apache.openmeetings.web.app.Application;
-import org.apache.openmeetings.web.common.AddFolderDialog;
-import org.apache.openmeetings.web.common.ConfirmableAjaxBorder;
 import org.apache.openmeetings.web.common.UserPanel;
-import org.apache.wicket.Component;
-import org.apache.wicket.ajax.AjaxEventBehavior;
+import org.apache.openmeetings.web.common.tree.FileItemTree;
+import org.apache.openmeetings.web.common.tree.FileTreePanel;
+import org.apache.openmeetings.web.common.tree.MyRecordingTreeProvider;
+import org.apache.openmeetings.web.common.tree.PublicRecordingTreeProvider;
 import org.apache.wicket.ajax.AjaxRequestTarget;
-import org.apache.wicket.ajax.AjaxSelfUpdatingTimerBehavior;
-import org.apache.wicket.extensions.markup.html.repeater.tree.DefaultNestedTree;
-import org.apache.wicket.extensions.markup.html.repeater.tree.ITreeProvider;
-import org.apache.wicket.extensions.markup.html.repeater.tree.content.Folder;
-import org.apache.wicket.markup.html.WebMarkupContainer;
-import org.apache.wicket.markup.html.basic.Label;
-import org.apache.wicket.markup.html.form.Form;
-import org.apache.wicket.markup.repeater.RepeatingView;
-import org.apache.wicket.markup.repeater.ReuseIfModelsEqualStrategy;
-import org.apache.wicket.model.CompoundPropertyModel;
-import org.apache.wicket.model.IModel;
-import org.apache.wicket.model.Model;
-import org.apache.wicket.util.time.Duration;
-
-import com.googlecode.wicket.jquery.core.JQueryBehavior;
-import com.googlecode.wicket.jquery.core.Options;
-import com.googlecode.wicket.jquery.ui.interaction.droppable.Droppable;
 
 public class RecordingsPanel extends UserPanel {
-	private static final long serialVersionUID = 1321258690447136958L;
-	final WebMarkupContainer trees = new WebMarkupContainer("tree-container");
-	private final WebMarkupContainer sizes = new WebMarkupContainer("sizes");
+	private static final long serialVersionUID = 1L;
 	private final VideoPlayer video = new VideoPlayer("video");
 	private final VideoInfo info = new VideoInfo("info");
-	private final IModel<FlvRecording> rm = new CompoundPropertyModel<FlvRecording>(new FlvRecording());
-	private final IModel<String> homeSize = Model.of((String)null);
-	private final IModel<String> publicSize = Model.of((String)null);
-	final RecordingErrorsDialog errorsDialog = new RecordingErrorsDialog("errors", Model.of((FlvRecording)null));
-	private RecordingTree selected;
 	
 	public RecordingsPanel(String id) {
 		super(id);
-		rm.getObject().setFlvRecordingId(Long.MIN_VALUE);
-		final AddFolderDialog addFolder = new AddFolderDialog("addFolder", Application.getString(712)) {
+		add(new FileTreePanel("tree") {
 			private static final long serialVersionUID = 1L;
 
 			@Override
-			protected void onSubmit(AjaxRequestTarget target) {
-				FlvRecording f = new FlvRecording();
-				f.setFileName(getModelObject());
-				f.setInsertedBy(getUserId());
-				f.setInserted(new Date());
-				f.setFolder(true);
-				f.setIsImage(false);
-				f.setIsPresentation(false);
-				f.setIsRecording(true);
-				FlvRecording p = rm.getObject();
-				long parentId = p.getFlvRecordingId();
-				if (p.isFolder()) {
-					f.setParentFileExplorerItemId(parentId);
+			public void defineTrees() {
+				selectedFile.setObject(new Recording());
+				treesView.add(selected = new FileItemTree<Recording>(treesView.newChildId(), this, new MyRecordingTreeProvider()));
+				treesView.add(new FileItemTree<Recording>(treesView.newChildId(), this, new PublicRecordingTreeProvider(null, null)));
+				for (Organisation_Users ou : getBean(UserDao.class).get(getUserId()).getOrganisation_users()) {
+					Organisation o = ou.getOrganisation();
+					treesView.add(new FileItemTree<Recording>(treesView.newChildId(), this, new PublicRecordingTreeProvider(o.getId(), o.getName())));
 				}
-				f.setOwnerId(p.getOwnerId());
-				f.setOrganization_id(p.getOrganization_id());
-				getBean(FlvRecordingDao.class).update(f);
-				target.add(trees); //FIXME add correct refresh
-			}
-		};
-		add(addFolder);
-		Droppable<FlvRecording> trashToolbar = new Droppable<FlvRecording>("trash-toolbar") {
-			private static final long serialVersionUID = 1L;
-
-			@Override
-			public void onConfigure(JQueryBehavior behavior) {
-				super.onConfigure(behavior);
-				behavior.setOption("hoverClass", Options.asString("ui-state-hover trash-toolbar-hover"));
-				behavior.setOption("accept", Options.asString(".recorditem, .fileitem"));
 			}
 			
 			@Override
-			public void onDrop(AjaxRequestTarget target, Component component) {
-				Object o = component.getDefaultModelObject();
-				if (o instanceof FlvRecording) {
-					delete((FlvRecording)o, target);
+			public void updateSizes() {
+				RecordingContainerData sizeData = getBean(RecordingDao.class).getContainerData(getUserId());
+				if (sizeData != null) {
+					homeSize.setObject(getHumanSize(sizeData.getUserHomeSize()));
+					publicSize.setObject(getHumanSize(sizeData.getPublicFileSize()));
 				}
 			}
-		};
-		add(trashToolbar);
-		trashToolbar.add(new WebMarkupContainer("create").add(new AjaxEventBehavior("click") {
-			private static final long serialVersionUID = 1L;
-
-			@Override
-			protected void onEvent(AjaxRequestTarget target) {
-				addFolder.open(target);
-			}
-		}));
-		trashToolbar.add(new WebMarkupContainer("refresh").add(new AjaxEventBehavior("click") {
-			private static final long serialVersionUID = 1L;
-
+			
 			@Override
-			protected void onEvent(AjaxRequestTarget target) {
-				target.add(trees); //FIXME add correct refresh
+			public void update(AjaxRequestTarget target, FileItem f) {
+				video.update(target, (Recording)f);
+				info.update(target, (Recording)f);
 			}
-		}));
-		trashToolbar.add(new ConfirmableAjaxBorder("trash", getString("80"), getString("713")) {
-			private static final long serialVersionUID = 1L;
-
+			
 			@Override
-			protected void onSubmit(AjaxRequestTarget target, Form<?> form) {
-				delete(rm.getObject(), target);
+			public void createFolder(String name) {
+				createRecordingFolder(name);
 			}
 		});
-		RepeatingView treesView = new RepeatingView("tree");
-		treesView.add(selected = new RecordingTree(treesView.newChildId(), new MyRecordingTreeProvider()));
-		treesView.add(new RecordingTree(treesView.newChildId(), new PublicRecordingTreeProvider(null, null)));
-		for (Organisation_Users ou : getBean(UserDao.class).get(getUserId()).getOrganisation_users()) {
-			Organisation o = ou.getOrganisation();
-			treesView.add(new RecordingTree(treesView.newChildId(), new PublicRecordingTreeProvider(o.getOrganisation_id(), o.getName())));
-		}
-		add(trees.add(treesView).setOutputMarkupId(true));
-		updateSizes();
-		add(sizes.add(new Label("homeSize", homeSize), new Label("publicSize", publicSize)).setOutputMarkupId(true));
-		sizes.add(new AjaxSelfUpdatingTimerBehavior(Duration.seconds(30)) {
-			private static final long serialVersionUID = 1L;
-
-			protected void onPostProcessTarget(AjaxRequestTarget target) {
-				updateSizes();
-			}
-		});
-		add(video, info, errorsDialog);
-	}
-
-	void delete(FlvRecording f, AjaxRequestTarget target) {
-		long id = f.getFlvRecordingId();
-		if (id > 0) {
-			getBean(FlvRecordingDao.class).delete(f);
-		}
-		target.add(trees); //FIXME add correct refresh
-	}
-	
-	private void updateSizes() {
-		RecordingContainerData sizeData = getBean(FlvRecordingDao.class).getRecordingContainerData(getUserId());
-		if (sizeData != null) {
-			homeSize.setObject(getHumanSize(sizeData.getUserHomeSize()));
-			publicSize.setObject(getHumanSize(sizeData.getPublicFileSize()));
-		}
-	}
-	
-	//FIXME need to be generalized to use as Room files explorer
-	class RecordingTree extends DefaultNestedTree<FlvRecording> {
-		private static final long serialVersionUID = 2527395034256868022L;
-
-		public RecordingTree(String id, ITreeProvider<FlvRecording> tp) {
-			super(id, tp);
-			setItemReuseStrategy(new ReuseIfModelsEqualStrategy());
-		}
-		
-		@Override
-		protected Component newContentComponent(String id, IModel<FlvRecording> node) {
-			return new Folder<FlvRecording>(id, this, node) {
-				private static final long serialVersionUID = 1L;
-
-				@Override
-				protected Component newLabelComponent(String id, final IModel<FlvRecording> lm) {
-					FlvRecording r = lm.getObject();
-					return r.isFolder() || r.getFlvRecordingId() < 1 ? new RecordingPanel(id, lm, RecordingsPanel.this) : new RecordingItemPanel(id, lm, RecordingsPanel.this);
-				}
-				
-				@Override
-				protected boolean isSelected() {
-					return getModelObject().getFlvRecordingId() == rm.getObject().getFlvRecordingId();
-				}
-				
-				@Override
-				protected boolean isClickable() {
-					return true;
-				}
-				
-				@Override
-				protected void onClick(AjaxRequestTarget target) {
-					FlvRecording r = getModelObject();
-					FlvRecording _prev = rm.getObject();
-					rm.setObject(r);
-					if (_prev != null) {
-						if (_prev.isFolder()) {
-							selected.updateBranch(_prev, target);
-						} else {
-							selected.updateNode(_prev, target);
-						}
-					}
- 					selected = RecordingTree.this;
-					if (r.isFolder()) {
-						if (getState(r) == State.COLLAPSED) {
-							super.onClick(target);
-						}
-						updateBranch(r, target);
-					} else {
-						video.update(target, r);
-						info.update(target, r);
-						updateNode(r, target);
-					}
-				}
-				
-				private String getRecordingStyle(FlvRecording r, String def) {
-					String style;
-					if (r.getFlvRecordingId() == 0) {
-						style = "my-recordings om-icon";
-					} else if (r.getFlvRecordingId() < 0) {
-						style = "public-recordings om-icon";
-					} else if (r.isFolder()) {
-						style = def;
-					} else if (isRecordingExists(r.getFileHash() + MP4_EXTENSION)) {
-						style = "recording om-icon";
-					} else if (Status.RECORDING == r.getStatus() || Status.CONVERTING == r.getStatus()) {
-						style = "processing-recording om-icon";
-					} else {
-						style = "broken-recording om-icon";
-					}
-					return style;
-				}
-				
-				@Override
-				protected String getOtherStyleClass(FlvRecording r) {
-					return getRecordingStyle(r, super.getOtherStyleClass(r));
-				}
-				
-				@Override
-				protected String getOpenStyleClass() {
-					return getRecordingStyle(getModelObject(), super.getOpenStyleClass());
-				}
-				
-				@Override
-				protected String getClosedStyleClass() {
-					return getRecordingStyle(getModelObject(), super.getClosedStyleClass());
-				}
-				
-				@Override
-				protected String getSelectedStyleClass() {
-					return "ui-state-active";
-				}
-				
-				@Override
-				protected IModel<String> newLabelModel(IModel<FlvRecording> model) {
-					return Model.of(model.getObject().getFileName());
-				}
-			};
-		}
-	}
-	
-	@Override
-	protected void onDetach() {
-		rm.detach();
-		homeSize.detach();
-		publicSize.detach();
-		super.onDetach();
-	}
-	
-	class MyRecordingTreeProvider extends RecordingTreeProvider {
-		private static final long serialVersionUID = 1L;
-
-		public Iterator<? extends FlvRecording> getRoots() {
-			FlvRecording r = new FlvRecording();
-			r.setFlvRecordingId(0);
-			r.setFileName(Application.getString(860));
-			r.setFolder(true);
-			r.setOwnerId(getUserId());
-			return Arrays.asList(r).iterator();
-		}
-		
-		public Iterator<? extends FlvRecording> getChildren(FlvRecording node) {
-			if (node.getFlvRecordingId() == 0) {
-				return getBean(FlvRecordingDao.class).getFlvRecordingRootByOwner(getUserId()).iterator();
-			} else {
-				return super.getChildren(node);
-			}
-		}
-	}
-	
-	class PublicRecordingTreeProvider extends RecordingTreeProvider {
-		private static final long serialVersionUID = 5502610991599632079L;
-		private final Long orgId;
-		private final String name;
-
-		public PublicRecordingTreeProvider(Long orgId, String name) {
-			this.orgId = orgId;
-			this.name = name;
-		}
-		
-		public Iterator<? extends FlvRecording> getRoots() {
-			FlvRecording r = new FlvRecording();
-			r.setFlvRecordingId(orgId == null ? -1 : -orgId);
-			r.setOrganization_id(orgId);
-			r.setOwnerId(null);
-			r.setFolder(true);
-			String pub = Application.getString(861);
-			r.setFileName(orgId == null ? pub : String.format("%s (%s)", pub, name));
-			return Arrays.asList(r).iterator();
-		}
-		
-		public Iterator<? extends FlvRecording> getChildren(FlvRecording node) {
-			if (node.getFlvRecordingId() < 0) {
-				return getBean(FlvRecordingDao.class).getFlvRecordingRootByPublic(orgId).iterator();
-			} else {
-				return super.getChildren(node);
-			}
-		}
-	}
-	
-	abstract class RecordingTreeProvider implements ITreeProvider<FlvRecording> {
-		private static final long serialVersionUID = 1L;
-
-		public void detach() {
-			// TODO LDM should be used
-		}
-
-		public boolean hasChildren(FlvRecording node) {
-			return node.getFlvRecordingId() <= 0 || node.isFolder();
-		}
-
-		public Iterator<? extends FlvRecording> getChildren(FlvRecording node) {
-			return getBean(FlvRecordingDao.class).getFlvRecordingByParent(node.getFlvRecordingId()).iterator();
-		}
-
-		public IModel<FlvRecording> model(FlvRecording object) {
-			// TODO LDM should be used
-			return Model.of(object);
-		}
+		add(video, info);
 	}
 }

Modified: openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/VideoInfo.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/VideoInfo.java?rev=1712911&r1=1712910&r2=1712911&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/VideoInfo.java (original)
+++ openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/VideoInfo.java Fri Nov  6 06:18:44 2015
@@ -27,14 +27,14 @@ import static org.apache.openmeetings.we
 import java.util.ArrayList;
 import java.util.List;
 
-import org.apache.openmeetings.core.converter.FlvInterviewConverter;
-import org.apache.openmeetings.core.converter.FlvRecorderConverter;
+import org.apache.openmeetings.core.converter.InterviewConverter;
+import org.apache.openmeetings.core.converter.RecordingConverter;
 import org.apache.openmeetings.core.converter.IRecordingConverter;
-import org.apache.openmeetings.db.dao.record.FlvRecordingMetaDataDao;
+import org.apache.openmeetings.db.dao.record.RecordingMetaDataDao;
 import org.apache.openmeetings.db.dao.room.RoomDao;
-import org.apache.openmeetings.db.entity.record.FlvRecording;
-import org.apache.openmeetings.db.entity.record.FlvRecording.Status;
-import org.apache.openmeetings.db.entity.record.FlvRecordingMetaData;
+import org.apache.openmeetings.db.entity.record.Recording;
+import org.apache.openmeetings.db.entity.record.Recording.Status;
+import org.apache.openmeetings.db.entity.record.RecordingMetaData;
 import org.apache.openmeetings.db.entity.room.Room;
 import org.apache.openmeetings.web.util.AjaxDownload;
 import org.apache.wicket.ajax.AjaxRequestTarget;
@@ -66,16 +66,16 @@ public class VideoInfo extends Panel {
 		
 		@Override
 		protected void onSubmit(AjaxRequestTarget target, Form<?> form) {
-			final IRecordingConverter converter = getBean(isInterview ? FlvInterviewConverter.class : FlvRecorderConverter.class);
+			final IRecordingConverter converter = getBean(isInterview ? InterviewConverter.class : RecordingConverter.class);
 			new Thread() {
 				public void run() {
-					converter.startConversion(rm.getObject().getFlvRecordingId());
+					converter.startConversion(rm.getObject().getId());
 				}
 			}.start();
 		}
 	};
 	private final AjaxDownload download = new AjaxDownload();
-	private final IModel<FlvRecording> rm = new CompoundPropertyModel<FlvRecording>(new FlvRecording());
+	private final IModel<Recording> rm = new CompoundPropertyModel<Recording>(new Recording());
 	private final IModel<String> roomName = Model.of((String)null);
 	private boolean isInterview = false;
 
@@ -83,7 +83,7 @@ public class VideoInfo extends Panel {
 		this(id, null);
 	}
 	
-	public VideoInfo(String id, FlvRecording r) {
+	public VideoInfo(String id, Recording r) {
 		super(id);
 		add(form.setOutputMarkupId(true));
 		setDefaultModel(rm);
@@ -94,16 +94,16 @@ public class VideoInfo extends Panel {
 		update(null, r);
 	}
 	
-	public VideoInfo update(AjaxRequestTarget target, FlvRecording _r) {
-		FlvRecording r = _r == null ? new FlvRecording() : _r;
+	public VideoInfo update(AjaxRequestTarget target, Recording _r) {
+		Recording r = _r == null ? new Recording() : _r;
 		rm.setObject(r);
 		try {
 			String name = null;
-			if (r.getRoom_id() != null) {
-				Room room = getBean(RoomDao.class).get(r.getRoom_id());
+			if (r.getRoomId() != null) {
+				Room room = getBean(RoomDao.class).get(r.getRoomId());
 				if (room != null) {
 					name = room.getName();
-					isInterview = room.getRoomtype().getRoomtypes_id() == 4;
+					isInterview = Room.Type.interview == room.getType();
 				}
 			}
 			roomName.setObject(name);
@@ -113,11 +113,11 @@ public class VideoInfo extends Panel {
 		
 		boolean reConvEnabled = false;
 		if (r.getOwnerId() != null && getUserId() == r.getOwnerId() && r.getStatus() != Status.RECORDING && r.getStatus() != Status.CONVERTING) {
-			List<FlvRecordingMetaData> metas = getBean(FlvRecordingMetaDataDao.class).getByRecording(r.getFlvRecordingId());
+			List<RecordingMetaData> metas = getBean(RecordingMetaDataDao.class).getByRecording(r.getId());
 			reconvLabel:
 			if (!metas.isEmpty()) {
-				for (FlvRecordingMetaData meta : metas) {
-					if (r.getRoom_id() == null || !getRecordingMetaData(r.getRoom_id(), meta.getStreamName()).exists()) {
+				for (RecordingMetaData meta : metas) {
+					if (r.getRoomId() == null || !getRecordingMetaData(r.getRoomId(), meta.getStreamName()).exists()) {
 						break reconvLabel;
 					}
 				}
@@ -155,7 +155,7 @@ public class VideoInfo extends Panel {
 			
 			@Override
 			public boolean isEnabled() {
-				FlvRecording r = VideoInfo.this.rm.getObject();
+				Recording r = VideoInfo.this.rm.getObject();
 				return r != null && isRecordingExists(r.getAlternateDownload());
 			}
 			
@@ -172,7 +172,7 @@ public class VideoInfo extends Panel {
 			
 			@Override
 			public boolean isEnabled() {
-				FlvRecording r = VideoInfo.this.rm.getObject();
+				Recording r = VideoInfo.this.rm.getObject();
 				return r != null && isRecordingExists(r.getAlternateDownload());
 			}
 			

Modified: openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/VideoPlayer.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/VideoPlayer.java?rev=1712911&r1=1712910&r2=1712911&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/VideoPlayer.java (original)
+++ openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/VideoPlayer.java Fri Nov  6 06:18:44 2015
@@ -20,7 +20,7 @@ package org.apache.openmeetings.web.user
 
 import static org.apache.openmeetings.util.OmFileHelper.getMp4Recording;
 
-import org.apache.openmeetings.db.entity.record.FlvRecording;
+import org.apache.openmeetings.db.entity.record.Recording;
 import org.apache.openmeetings.web.util.Mp4RecordingResourceReference;
 import org.apache.openmeetings.web.util.OggRecordingResourceReference;
 import org.apache.wicket.ajax.AjaxRequestTarget;
@@ -47,7 +47,7 @@ public class VideoPlayer extends Panel {
 		this(id, null);
 	}
 	
-	public VideoPlayer(String id, FlvRecording r) {
+	public VideoPlayer(String id, Recording r) {
 		super(id);
 		add(container.setOutputMarkupPlaceholderTag(true));
 		mp4.setDisplayType(true);
@@ -59,13 +59,13 @@ public class VideoPlayer extends Panel {
 		update(null, r);
 	}
 	
-	public VideoPlayer update(AjaxRequestTarget target, FlvRecording r) {
+	public VideoPlayer update(AjaxRequestTarget target, Recording r) {
 		boolean videoExists = r != null && getMp4Recording(r.getFileHash()).exists();
 		if (videoExists) {
-			PageParameters pp = new PageParameters().add("id", r.getFlvRecordingId());
+			PageParameters pp = new PageParameters().add("id", r.getId());
 			mp4.setPageParameters(pp);
 			ogg.setPageParameters(pp);
-			player.recId = r.getFlvRecordingId();
+			player.recId = r.getId();
 		}
 		container.setVisible(videoExists);
 		if (target != null) {

Modified: openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/rooms/RoomsPanel.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/rooms/RoomsPanel.java?rev=1712911&r1=1712910&r2=1712911&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/rooms/RoomsPanel.java (original)
+++ openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/rooms/RoomsPanel.java Fri Nov  6 06:18:44 2015
@@ -72,22 +72,22 @@ public class RoomsPanel extends UserPane
 					
 					@Override
 					protected void onEvent(AjaxRequestTarget target) {
-						roomId = r.getRooms_id();
+						roomId = r.getId();
 						updateRoomDetails(target);
 					}
 				}));
 				roomContainer.add(new Label("roomName", r.getName()));
-				final Label curUsers = new Label("curUsers", new Model<Integer>(Application.getBean(ISessionManager.class).getClientListByRoom(r.getRooms_id()).size()));
+				final Label curUsers = new Label("curUsers", new Model<Integer>(Application.getBean(ISessionManager.class).getClientListByRoom(r.getId()).size()));
 				roomContainer.add(curUsers.setOutputMarkupId(true));
 				roomContainer.add(new Label("totalUsers", r.getNumberOfPartizipants()));
-				item.add(new Button("enter").add(new RoomEnterBehavior(r.getRooms_id())));
+				item.add(new Button("enter").add(new RoomEnterBehavior(r.getId())));
 				roomContainer.add(new AjaxLink<Void>("refresh") {
 					private static final long serialVersionUID = 1L;
 
 					@Override
 					public void onClick(AjaxRequestTarget target) {
-						roomId = r.getRooms_id();
-						target.add(curUsers.setDefaultModelObject(Application.getBean(ISessionManager.class).getClientListByRoom(r.getRooms_id()).size()));
+						roomId = r.getId();
+						target.add(curUsers.setDefaultModelObject(Application.getBean(ISessionManager.class).getClientListByRoom(r.getId()).size()));
 						updateRoomDetails(target);
 					}
 				});
@@ -149,7 +149,7 @@ public class RoomsPanel extends UserPane
 		final List<Client> clientsInRoom = Application.getBean(ISessionManager.class).getClientListByRoom(roomId);
 		clients.setDefaultModelObject(clientsInRoom);
 		Room room = Application.getBean(RoomDao.class).get(roomId);
-		roomID.setObject(room.getRooms_id());
+		roomID.setObject(room.getId());
 		roomName.setObject(room.getName());
 		roomComment.setObject(room.getComment());
 		target.add(clientsContainer, details);

Modified: openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/rooms/RoomsTabbedPanel.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/rooms/RoomsTabbedPanel.java?rev=1712911&r1=1712910&r2=1712911&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/rooms/RoomsTabbedPanel.java (original)
+++ openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/rooms/RoomsTabbedPanel.java Fri Nov  6 06:18:44 2015
@@ -51,7 +51,7 @@ public class RoomsTabbedPanel extends Us
 				Organisation org = item.getModelObject().getOrganisation();
 				item.add(new WebMarkupContainer("link")
 					.add(new Label("name", Model.of(org.getName())))
-					.add(new AttributeModifier("href", "#org" + org.getOrganisation_id())));
+					.add(new AttributeModifier("href", "#org" + org.getId())));
 			}
 		});
 		add(new ListView<Organisation_Users>("orgRooms", u.getOrganisation_users()) {
@@ -61,8 +61,8 @@ public class RoomsTabbedPanel extends Us
 			protected void populateItem(ListItem<Organisation_Users> item) {
 				Organisation org = item.getModelObject().getOrganisation();
 				item.add(new RoomsPanel("rooms"
-					, getBean(RoomDao.class).getOrganisationRooms(org.getOrganisation_id()))
-					.setMarkupId("org" + org.getOrganisation_id())).setRenderBodyOnly(true);
+					, getBean(RoomDao.class).getOrganisationRooms(org.getId()))
+					.setMarkupId("org" + org.getId())).setRenderBodyOnly(true);
 			}
 		});
 		add(new JQueryBehavior("#orgTabs", "tabs"));

Modified: openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/AviRecordingResourceReference.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/AviRecordingResourceReference.java?rev=1712911&r1=1712910&r2=1712911&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/AviRecordingResourceReference.java (original)
+++ openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/AviRecordingResourceReference.java Fri Nov  6 06:18:44 2015
@@ -22,7 +22,7 @@ import static org.apache.openmeetings.ut
 
 import java.io.File;
 
-import org.apache.openmeetings.db.entity.record.FlvRecording;
+import org.apache.openmeetings.db.entity.record.Recording;
 
 public class AviRecordingResourceReference extends RecordingResourceReference {
 	private static final long serialVersionUID = 6181482949621024822L;
@@ -37,12 +37,12 @@ public class AviRecordingResourceReferen
 	}
 	
 	@Override
-	String getFileName(FlvRecording r) {
+	String getFileName(Recording r) {
 		return r.getAlternateDownload();
 	}
 	
 	@Override
-	File getFile(FlvRecording r) {
+	File getFile(Recording r) {
 		return getRecording(r.getAlternateDownload());
 	}
 }

Modified: openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/ContactsHelper.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/ContactsHelper.java?rev=1712911&r1=1712910&r2=1712911&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/ContactsHelper.java (original)
+++ openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/ContactsHelper.java Fri Nov  6 06:18:44 2015
@@ -25,8 +25,8 @@ import static org.apache.openmeetings.we
 import java.util.Date;
 
 import org.apache.openmeetings.core.mail.MailHandler;
-import org.apache.openmeetings.db.dao.user.PrivateMessagesDao;
-import org.apache.openmeetings.db.dao.user.UserContactsDao;
+import org.apache.openmeetings.db.dao.user.PrivateMessageDao;
+import org.apache.openmeetings.db.dao.user.UserContactDao;
 import org.apache.openmeetings.db.dao.user.UserDao;
 import org.apache.openmeetings.db.entity.user.User;
 import org.apache.openmeetings.db.entity.user.UserContact;
@@ -38,7 +38,7 @@ import org.apache.openmeetings.web.app.A
 
 public class ContactsHelper {
 	public static long addUserToContactList(long userIdToAdd) {
-		boolean isContact = getBean(UserContactsDao.class).isContact(userIdToAdd, getUserId());
+		boolean isContact = getBean(UserContactDao.class).isContact(userIdToAdd, getUserId());
 
 		if (isContact) {
 			return -45L;
@@ -46,7 +46,7 @@ public class ContactsHelper {
 		String hash = ManageCryptStyle.getInstanceOfCrypt()
 			.createPassPhrase(CalendarPatterns.getDateWithTimeByMiliSeconds(new Date()));
 
-		Long userContactId = getBean(UserContactsDao.class).addUserContact(userIdToAdd, getUserId(), true, hash);
+		Long userContactId = getBean(UserContactDao.class).addUserContact(userIdToAdd, getUserId(), true, hash);
 
 		User user = getBean(UserDao.class).get(getUserId());
 		User userToAdd = getBean(UserDao.class).get(userIdToAdd);
@@ -54,18 +54,18 @@ public class ContactsHelper {
 		String subj = user.getFirstname() + " " + user.getLastname() + " " + Application.getString(1193);
 		String message = RequestContactTemplate.getEmail(userToAdd, user);
 
-		getBean(PrivateMessagesDao.class).addPrivateMessage(
+		getBean(PrivateMessageDao.class).addPrivateMessage(
 			subj, message, 0L, user, userToAdd, userToAdd, false, null, true, userContactId);
 
-		if (userToAdd.getAdresses() != null) {
-			getBean(MailHandler.class).send(userToAdd.getAdresses().getEmail(), subj, message);
+		if (userToAdd.getAddress() != null) {
+			getBean(MailHandler.class).send(userToAdd.getAddress().getEmail(), subj, message);
 		}
 
 		return userContactId;
 	}
 
 	public static Long acceptUserContact(long userContactId) {
-		UserContactsDao dao = getBean(UserContactsDao.class);
+		UserContactDao dao = getBean(UserContactDao.class);
 		UserContact contact = dao.get(userContactId);
 
 		if (contact == null) {
@@ -81,18 +81,18 @@ public class ContactsHelper {
 		contact = dao.get(userContactId);
 		User user = contact.getOwner();
 
-		dao.addUserContact(user.getUser_id(), getUserId(), false, "");
+		dao.addUserContact(user.getId(), getUserId(), false, "");
 
-		if (user.getAdresses() != null) {
+		if (user.getAddress() != null) {
 			String message = RequestContactConfirmTemplate.getEmail(contact);
 
 			String subj = contact.getContact().getFirstname() + " " + contact.getContact().getLastname() + " " + Application.getString(1198);
 
-			getBean(PrivateMessagesDao.class).addPrivateMessage(
+			getBean(PrivateMessageDao.class).addPrivateMessage(
 					subj, message,
 					0L, contact.getContact(), user, user, false, null, false, 0L);
 
-			getBean(MailHandler.class).send(user.getAdresses().getEmail(), subj, message);
+			getBean(MailHandler.class).send(user.getAddress().getEmail(), subj, message);
 		}
 		return userContactId;
 	}

Modified: openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/FlvRecordingResourceReference.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/FlvRecordingResourceReference.java?rev=1712911&r1=1712910&r2=1712911&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/FlvRecordingResourceReference.java (original)
+++ openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/FlvRecordingResourceReference.java Fri Nov  6 06:18:44 2015
@@ -22,7 +22,7 @@ import static org.apache.openmeetings.ut
 
 import java.io.File;
 
-import org.apache.openmeetings.db.entity.record.FlvRecording;
+import org.apache.openmeetings.db.entity.record.Recording;
 
 public class FlvRecordingResourceReference extends RecordingResourceReference {
 	private static final long serialVersionUID = 6181482949621024822L;
@@ -37,12 +37,12 @@ public class FlvRecordingResourceReferen
 	}
 	
 	@Override
-	String getFileName(FlvRecording r) {
+	String getFileName(Recording r) {
 		return r.getFileHash();
 	}
 	
 	@Override
-	File getFile(FlvRecording r) {
+	File getFile(Recording r) {
 		return getRecording(r.getFileHash());
 	}
 }

Modified: openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/JpgRecordingResourceReference.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/JpgRecordingResourceReference.java?rev=1712911&r1=1712910&r2=1712911&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/JpgRecordingResourceReference.java (original)
+++ openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/JpgRecordingResourceReference.java Fri Nov  6 06:18:44 2015
@@ -22,7 +22,7 @@ import static org.apache.openmeetings.ut
 
 import java.io.File;
 
-import org.apache.openmeetings.db.entity.record.FlvRecording;
+import org.apache.openmeetings.db.entity.record.Recording;
 
 public class JpgRecordingResourceReference extends RecordingResourceReference {
 	private static final long serialVersionUID = 6181482949621024822L;
@@ -37,12 +37,12 @@ public class JpgRecordingResourceReferen
 	}
 	
 	@Override
-	String getFileName(FlvRecording r) {
+	String getFileName(Recording r) {
 		return r.getPreviewImage();
 	}
 	
 	@Override
-	File getFile(FlvRecording r) {
+	File getFile(Recording r) {
 		return getRecording(r.getPreviewImage());
 	}
 }

Modified: openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/Mp4RecordingResourceReference.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/Mp4RecordingResourceReference.java?rev=1712911&r1=1712910&r2=1712911&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/Mp4RecordingResourceReference.java (original)
+++ openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/Mp4RecordingResourceReference.java Fri Nov  6 06:18:44 2015
@@ -23,7 +23,7 @@ import static org.apache.openmeetings.ut
 
 import java.io.File;
 
-import org.apache.openmeetings.db.entity.record.FlvRecording;
+import org.apache.openmeetings.db.entity.record.Recording;
 
 public class Mp4RecordingResourceReference extends RecordingResourceReference {
 	private static final long serialVersionUID = 6181482949621024822L;
@@ -38,12 +38,12 @@ public class Mp4RecordingResourceReferen
 	}
 	
 	@Override
-	String getFileName(FlvRecording r) {
+	String getFileName(Recording r) {
 		return r.getFileHash() + MP4_EXTENSION;
 	}
 	
 	@Override
-	File getFile(FlvRecording r) {
+	File getFile(Recording r) {
 		return getMp4Recording(r.getFileHash());
 	}
 }

Modified: openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/OggRecordingResourceReference.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/OggRecordingResourceReference.java?rev=1712911&r1=1712910&r2=1712911&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/OggRecordingResourceReference.java (original)
+++ openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/OggRecordingResourceReference.java Fri Nov  6 06:18:44 2015
@@ -23,7 +23,7 @@ import static org.apache.openmeetings.ut
 
 import java.io.File;
 
-import org.apache.openmeetings.db.entity.record.FlvRecording;
+import org.apache.openmeetings.db.entity.record.Recording;
 
 public class OggRecordingResourceReference extends RecordingResourceReference {
 	private static final long serialVersionUID = 6181482949621024822L;
@@ -38,12 +38,12 @@ public class OggRecordingResourceReferen
 	}
 	
 	@Override
-	String getFileName(FlvRecording r) {
+	String getFileName(Recording r) {
 		return r.getFileHash() + OGG_EXTENSION;
 	}
 	
 	@Override
-	File getFile(FlvRecording r) {
+	File getFile(Recording r) {
 		return getOggRecording(r.getFileHash());
 	}
 }

Modified: openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/RecordingResourceReference.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/RecordingResourceReference.java?rev=1712911&r1=1712910&r2=1712911&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/RecordingResourceReference.java (original)
+++ openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/RecordingResourceReference.java Fri Nov  6 06:18:44 2015
@@ -33,9 +33,9 @@ import javax.servlet.http.HttpServletReq
 import javax.servlet.http.HttpServletResponse;
 
 import org.apache.commons.io.input.BoundedInputStream;
-import org.apache.openmeetings.db.dao.record.FlvRecordingDao;
+import org.apache.openmeetings.db.dao.record.RecordingDao;
 import org.apache.openmeetings.db.dao.user.OrganisationUserDao;
-import org.apache.openmeetings.db.entity.record.FlvRecording;
+import org.apache.openmeetings.db.entity.record.Recording;
 import org.apache.openmeetings.web.app.WebSession;
 import org.apache.wicket.protocol.http.servlet.ResponseIOException;
 import org.apache.wicket.request.Response;
@@ -132,7 +132,7 @@ public abstract class RecordingResourceR
 			@Override
 			protected ResourceResponse newResourceResponse(Attributes attributes) {
 				ResourceResponse rr = new ResourceResponse();
-				FlvRecording r = getRecording(attributes);
+				Recording r = getRecording(attributes);
 				if (r != null) {
 					isRange = false;
 					file = getFile(r);
@@ -181,8 +181,8 @@ public abstract class RecordingResourceR
 	}
 	
 	abstract String getContentType();
-	abstract String getFileName(FlvRecording r);
-	abstract File getFile(FlvRecording r);
+	abstract String getFileName(Recording r);
+	abstract File getFile(Recording r);
 	
 	private Long getLong(StringValue id) {
 		Long result = null;
@@ -194,8 +194,8 @@ public abstract class RecordingResourceR
 		return result;
 	}
 	
-	private FlvRecording getRecording(Long id) {
-		FlvRecording r = getBean(FlvRecordingDao.class).get(id);
+	private Recording getRecording(Long id) {
+		Recording r = getBean(RecordingDao.class).get(id);
 		// TODO should we process public?
 		// || r.getOwnerId() == 0 || r.getParentFileExplorerItemId() == null || r.getParentFileExplorerItemId() == 0
 		if (r == null) {
@@ -209,13 +209,13 @@ public abstract class RecordingResourceR
 		}
 		//TODO external group check was added for plugin recording download
 		String extType = getExternalType();
-		if (extType != null && extType.equals(r.getCreator().getExternalUserType())) {
+		if (extType != null && extType.equals(r.getCreator().getExternalType())) {
 			return r;
 		}
 		return null;
 	}
 	
-	private FlvRecording getRecording(Attributes attributes) {
+	private Recording getRecording(Attributes attributes) {
 		PageParameters params = attributes.getParameters();
 		StringValue idStr = params.get("id");
 		Long id = getLong(idStr);

Modified: openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/RoomTypeDropDown.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/RoomTypeDropDown.java?rev=1712911&r1=1712910&r2=1712911&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/RoomTypeDropDown.java (original)
+++ openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/RoomTypeDropDown.java Fri Nov  6 06:18:44 2015
@@ -18,37 +18,40 @@
  */
 package org.apache.openmeetings.web.util;
 
-import static org.apache.openmeetings.web.app.Application.getBean;
-import static org.apache.openmeetings.web.app.WebSession.getLanguage;
-
+import java.util.Arrays;
 import java.util.List;
 
-import org.apache.openmeetings.db.dao.room.RoomTypeDao;
-import org.apache.openmeetings.db.entity.room.RoomType;
-import org.apache.wicket.markup.html.form.ChoiceRenderer;
+import org.apache.openmeetings.db.entity.room.Room.Type;
 import org.apache.wicket.markup.html.form.DropDownChoice;
+import org.apache.wicket.markup.html.form.IChoiceRenderer;
+import org.apache.wicket.model.IModel;
 
-public class RoomTypeDropDown extends DropDownChoice<RoomType> {
+public class RoomTypeDropDown extends DropDownChoice<Type> {
 	private static final long serialVersionUID = 1L;
 	
-	public static List<RoomType> getRoomTypes() {
-		return getBean(RoomTypeDao.class).getAll(getLanguage());
-	}
-	
 	public RoomTypeDropDown(String id) {
 		super(id);
-		setChoices(getRoomTypes());
-		setChoiceRenderer(new ChoiceRenderer<RoomType>() {
+		setChoices(Arrays.asList(Type.values()));
+		setChoiceRenderer(new IChoiceRenderer<Type>() {
 			private static final long serialVersionUID = 1L;
 
 			@Override
-			public Object getDisplayValue(RoomType object) {
-				return getString("" + object.getFieldvalues_id());
+			public String getIdValue(Type rt, int index) {
+				return rt.name();
+			}
+			
+			public Object getDisplayValue(Type rt) {
+				return getString("room.type." + rt.name());
 			}
 
 			@Override
-			public String getIdValue(RoomType object, int index) {
-				return "" + object.getRoomtypes_id();
+			public Type getObject(String id, IModel<? extends List<? extends Type>> choices) {
+				for (Type rt : choices.getObject()) {
+					if (rt.name().equals(id)) {
+						return rt;
+					}
+				}
+				return null;
 			}
 		});
 	}

Modified: openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/UserChoiceProvider.java
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/UserChoiceProvider.java?rev=1712911&r1=1712910&r2=1712911&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/UserChoiceProvider.java (original)
+++ openmeetings/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/UserChoiceProvider.java Fri Nov  6 06:18:44 2015
@@ -77,8 +77,8 @@ public class UserChoiceProvider implemen
 	}
 
 	protected Object getId(User u) {
-		String id = "" + u.getUser_id();
-		if (u.getUser_id() == null) {
+		String id = "" + u.getId();
+		if (u.getId() == null) {
 			newContacts.put(u.getLogin(), u);
 			id = u.getLogin();
 		}

Modified: openmeetings/branches/3.1.x/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/db2_persistence.xml
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/db2_persistence.xml?rev=1712911&r1=1712910&r2=1712911&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/db2_persistence.xml (original)
+++ openmeetings/branches/3.1.x/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/db2_persistence.xml Fri Nov  6 06:18:44 2015
@@ -25,7 +25,6 @@
 	<persistence-unit name="openmeetings" transaction-type="RESOURCE_LOCAL">
 		<provider>org.apache.openjpa.persistence.PersistenceProviderImpl</provider>
 		<class>org.apache.openmeetings.db.entity.basic.Configuration</class>
-		<class>org.apache.openmeetings.db.entity.basic.ErrorType</class>
 		<class>org.apache.openmeetings.db.entity.basic.ErrorValue</class>
 		<class>org.apache.openmeetings.db.entity.server.LdapConfig</class>
 		<class>org.apache.openmeetings.db.entity.basic.MailMessage</class>
@@ -35,26 +34,22 @@
 		<class>org.apache.openmeetings.db.entity.server.SOAPLogin</class>
 		<class>org.apache.openmeetings.db.entity.server.Server</class>
 		<class>org.apache.openmeetings.db.entity.calendar.Appointment</class>
-		<class>org.apache.openmeetings.db.entity.calendar.AppointmentCategory</class>
-		<class>org.apache.openmeetings.db.entity.calendar.AppointmentReminderTyps</class>
 		<class>org.apache.openmeetings.db.entity.calendar.MeetingMember</class>
 		<class>org.apache.openmeetings.db.entity.basic.ChatMessage</class>
 		<class>org.apache.openmeetings.db.entity.user.Organisation</class>
 		<class>org.apache.openmeetings.db.entity.user.Organisation_Users</class>
-		<class>org.apache.openmeetings.db.entity.record.FlvRecording</class>
-		<class>org.apache.openmeetings.db.entity.record.FlvRecordingLog</class>
-		<class>org.apache.openmeetings.db.entity.record.FlvRecordingMetaData</class>
-		<class>org.apache.openmeetings.db.entity.record.FlvRecordingMetaDelta</class>
+		<class>org.apache.openmeetings.db.entity.record.Recording</class>
+		<class>org.apache.openmeetings.db.entity.record.RecordingLog</class>
+		<class>org.apache.openmeetings.db.entity.record.RecordingMetaData</class>
+		<class>org.apache.openmeetings.db.entity.record.RecordingMetaDelta</class>
 		<class>org.apache.openmeetings.db.entity.room.Invitation</class>
 		<class>org.apache.openmeetings.db.entity.log.ConferenceLog</class>
-		<class>org.apache.openmeetings.db.entity.log.ConferenceLogType</class>
 		<class>org.apache.openmeetings.db.entity.room.PollType</class>
 		<class>org.apache.openmeetings.db.entity.room.RoomPoll</class>
-		<class>org.apache.openmeetings.db.entity.room.RoomPollAnswers</class>
+		<class>org.apache.openmeetings.db.entity.room.RoomPollAnswer</class>
 		<class>org.apache.openmeetings.db.entity.room.Client</class>
 		<class>org.apache.openmeetings.db.entity.room.RoomModerator</class>
 		<class>org.apache.openmeetings.db.entity.room.Room</class>
-		<class>org.apache.openmeetings.db.entity.room.RoomType</class>
 		<class>org.apache.openmeetings.db.entity.room.RoomOrganisation</class>
 		<class>org.apache.openmeetings.db.entity.room.Whiteboard</class>
 		<class>org.apache.openmeetings.db.entity.room.WhiteboardItem</class>
@@ -62,10 +57,10 @@
 		<class>org.apache.openmeetings.db.entity.user.State</class>
 		<class>org.apache.openmeetings.db.entity.user.PrivateMessage</class>
 		<class>org.apache.openmeetings.db.entity.user.PrivateMessageFolder</class>
-		<class>org.apache.openmeetings.db.entity.user.Salutation</class>
 		<class>org.apache.openmeetings.db.entity.user.UserContact</class>
 		<class>org.apache.openmeetings.db.entity.user.Userdata</class>
 		<class>org.apache.openmeetings.db.entity.user.User</class>
+		<class>org.apache.openmeetings.db.entity.file.FileItem</class>
 		<class>org.apache.openmeetings.db.entity.file.FileExplorerItem</class>
 		<class>org.apache.openmeetings.db.entity.user.AsteriskSipUser</class>
 		<class>org.apache.openmeetings.db.entity.server.OAuthServer</class>

Modified: openmeetings/branches/3.1.x/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/derby_persistence.xml
URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/derby_persistence.xml?rev=1712911&r1=1712910&r2=1712911&view=diff
==============================================================================
--- openmeetings/branches/3.1.x/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/derby_persistence.xml (original)
+++ openmeetings/branches/3.1.x/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/derby_persistence.xml Fri Nov  6 06:18:44 2015
@@ -25,7 +25,6 @@
 	<persistence-unit name="openmeetings" transaction-type="RESOURCE_LOCAL">
 		<provider>org.apache.openjpa.persistence.PersistenceProviderImpl</provider>
 		<class>org.apache.openmeetings.db.entity.basic.Configuration</class>
-		<class>org.apache.openmeetings.db.entity.basic.ErrorType</class>
 		<class>org.apache.openmeetings.db.entity.basic.ErrorValue</class>
 		<class>org.apache.openmeetings.db.entity.server.LdapConfig</class>
 		<class>org.apache.openmeetings.db.entity.basic.MailMessage</class>
@@ -35,26 +34,22 @@
 		<class>org.apache.openmeetings.db.entity.server.SOAPLogin</class>
 		<class>org.apache.openmeetings.db.entity.server.Server</class>
 		<class>org.apache.openmeetings.db.entity.calendar.Appointment</class>
-		<class>org.apache.openmeetings.db.entity.calendar.AppointmentCategory</class>
-		<class>org.apache.openmeetings.db.entity.calendar.AppointmentReminderTyps</class>
 		<class>org.apache.openmeetings.db.entity.calendar.MeetingMember</class>
 		<class>org.apache.openmeetings.db.entity.basic.ChatMessage</class>
 		<class>org.apache.openmeetings.db.entity.user.Organisation</class>
 		<class>org.apache.openmeetings.db.entity.user.Organisation_Users</class>
-		<class>org.apache.openmeetings.db.entity.record.FlvRecording</class>
-		<class>org.apache.openmeetings.db.entity.record.FlvRecordingLog</class>
-		<class>org.apache.openmeetings.db.entity.record.FlvRecordingMetaData</class>
-		<class>org.apache.openmeetings.db.entity.record.FlvRecordingMetaDelta</class>
+		<class>org.apache.openmeetings.db.entity.record.Recording</class>
+		<class>org.apache.openmeetings.db.entity.record.RecordingLog</class>
+		<class>org.apache.openmeetings.db.entity.record.RecordingMetaData</class>
+		<class>org.apache.openmeetings.db.entity.record.RecordingMetaDelta</class>
 		<class>org.apache.openmeetings.db.entity.room.Invitation</class>
 		<class>org.apache.openmeetings.db.entity.log.ConferenceLog</class>
-		<class>org.apache.openmeetings.db.entity.log.ConferenceLogType</class>
 		<class>org.apache.openmeetings.db.entity.room.PollType</class>
 		<class>org.apache.openmeetings.db.entity.room.RoomPoll</class>
-		<class>org.apache.openmeetings.db.entity.room.RoomPollAnswers</class>
+		<class>org.apache.openmeetings.db.entity.room.RoomPollAnswer</class>
 		<class>org.apache.openmeetings.db.entity.room.Client</class>
 		<class>org.apache.openmeetings.db.entity.room.RoomModerator</class>
 		<class>org.apache.openmeetings.db.entity.room.Room</class>
-		<class>org.apache.openmeetings.db.entity.room.RoomType</class>
 		<class>org.apache.openmeetings.db.entity.room.RoomOrganisation</class>
 		<class>org.apache.openmeetings.db.entity.room.Whiteboard</class>
 		<class>org.apache.openmeetings.db.entity.room.WhiteboardItem</class>
@@ -62,10 +57,10 @@
 		<class>org.apache.openmeetings.db.entity.user.State</class>
 		<class>org.apache.openmeetings.db.entity.user.PrivateMessage</class>
 		<class>org.apache.openmeetings.db.entity.user.PrivateMessageFolder</class>
-		<class>org.apache.openmeetings.db.entity.user.Salutation</class>
 		<class>org.apache.openmeetings.db.entity.user.UserContact</class>
 		<class>org.apache.openmeetings.db.entity.user.Userdata</class>
 		<class>org.apache.openmeetings.db.entity.user.User</class>
+		<class>org.apache.openmeetings.db.entity.file.FileItem</class>
 		<class>org.apache.openmeetings.db.entity.file.FileExplorerItem</class>
 		<class>org.apache.openmeetings.db.entity.user.AsteriskSipUser</class>
 		<class>org.apache.openmeetings.db.entity.server.OAuthServer</class>
@@ -85,7 +80,6 @@
 			<property name="openjpa.jdbc.SynchronizeMappings" value="buildSchema" />
 			<property name="openjpa.Log" value="DefaultLevel=WARN, Tool=INFO" />
 			<property name="openjpa.DataCache" value="true" />
-			<!-- QueryCache disabled due to changes outside of JPA doesn't take effect with caching -->
 			<property name="openjpa.QueryCache" value="false" />
 			<property name="openjpa.jdbc.DBDictionary" value="batchLimit=100" />
 			<property name="openjpa.jdbc.QuerySQLCache" value="false" />