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/03/08 11:59:51 UTC
svn commit: r1785951 [1/2] - in /openmeetings/application:
branches/3.2.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/red5/
branches/3.2.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/
branches/3.2.x/openmee...
Author: solomax
Date: Wed Mar 8 11:59:49 2017
New Revision: 1785951
URL: http://svn.apache.org/viewvc?rev=1785951&view=rev
Log:
[OPENMEETINGS-1424] recent rooms are added
Added:
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/RecentRoomsWidget.java
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/RecentRoomsWidgetDescriptor.java
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/RecentRoomsWidgetView.html
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/RecentRoomsWidgetView.java
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/RecentRoomsWidget.java
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/RecentRoomsWidgetDescriptor.java
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/RecentRoomsWidgetView.html
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/RecentRoomsWidgetView.java
Modified:
openmeetings/application/branches/3.2.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/red5/ScopeApplicationAdapter.java
openmeetings/application/branches/3.2.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java
openmeetings/application/branches/3.2.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/log/ConferenceLog.java
openmeetings/application/branches/3.2.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/Room.java
openmeetings/application/branches/3.2.x/openmeetings-install/src/main/java/org/apache/openmeetings/installation/ImportInitvalues.java
openmeetings/application/branches/3.2.x/openmeetings-util/src/main/java/org/apache/openmeetings/util/OpenmeetingsVariables.java
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.java
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.properties.xml
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ar.properties.xml
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_bg.properties.xml
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ca.properties.xml
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_cs.properties.xml
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_da.properties.xml
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_de.properties.xml
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_el.properties.xml
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_es.properties.xml
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_fa.properties.xml
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_fi.properties.xml
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_fr.properties.xml
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_gl.properties.xml
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_hu.properties.xml
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_id.properties.xml
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_it.properties.xml
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ja.properties.xml
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ko.properties.xml
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_nl.properties.xml
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_pl.properties.xml
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_pt.properties.xml
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_pt_BR.properties.xml
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ru.properties.xml
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_sk.properties.xml
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_sv.properties.xml
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_th.properties.xml
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_tr.properties.xml
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_uk.properties.xml
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_zh_CN.properties.xml
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_zh_TW.properties.xml
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/MainPanel.java
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/menu/MenuItem.java
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
openmeetings/application/trunk/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/red5/ScopeApplicationAdapter.java
openmeetings/application/trunk/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java
openmeetings/application/trunk/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/log/ConferenceLog.java
openmeetings/application/trunk/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/Room.java
openmeetings/application/trunk/openmeetings-install/src/main/java/org/apache/openmeetings/installation/ImportInitvalues.java
openmeetings/application/trunk/openmeetings-util/src/main/java/org/apache/openmeetings/util/OpenmeetingsVariables.java
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.java
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.properties.xml
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ar.properties.xml
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_bg.properties.xml
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ca.properties.xml
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_cs.properties.xml
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_da.properties.xml
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_de.properties.xml
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_el.properties.xml
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_es.properties.xml
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_fa.properties.xml
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_fi.properties.xml
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_fr.properties.xml
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_gl.properties.xml
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_hu.properties.xml
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_id.properties.xml
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_it.properties.xml
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ja.properties.xml
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ko.properties.xml
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_nl.properties.xml
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_pl.properties.xml
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_pt.properties.xml
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_pt_BR.properties.xml
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ru.properties.xml
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_sk.properties.xml
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_sv.properties.xml
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_th.properties.xml
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_tr.properties.xml
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_uk.properties.xml
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_zh_CN.properties.xml
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_zh_TW.properties.xml
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/MainPanel.java
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
Modified: openmeetings/application/branches/3.2.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/red5/ScopeApplicationAdapter.java
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/red5/ScopeApplicationAdapter.java?rev=1785951&r1=1785950&r2=1785951&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/red5/ScopeApplicationAdapter.java (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/red5/ScopeApplicationAdapter.java Wed Mar 8 11:59:49 2017
@@ -619,11 +619,6 @@ public class ScopeApplicationAdapter ext
WebSocketHelper.sendRoom(new TextRoomMessage(client.getRoomId(), client.getUserId(), RoomMessage.Type.sharingStoped, client.getStreamPublishName()));
}
- // Log the User
- conferenceLogDao.add(ConferenceLog.Type.roomLeave,
- client.getUserId(), client.getStreamid(),
- roomId, client.getUserip(), "");
-
// Remove User from Sync List's
if (roomId != null) {
whiteBoardService.removeUserFromAllLists(scope, client);
@@ -1124,10 +1119,6 @@ public class ScopeApplicationAdapter ext
client.setCanGiveAudio(true);
}
sessionManager.updateClientByStreamId(streamid, client, true, null); // first save to get valid room count
- // Log the User
- conferenceLogDao.add(ConferenceLog.Type.roomEnter,
- client.getUserId(), streamid, roomId,
- client.getUserip(), "");
// Check for Moderation LogicalRoom ENTER
List<Client> roomClients = sessionManager.getClientListByRoom(roomId);
Modified: openmeetings/application/branches/3.2.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java?rev=1785951&r1=1785950&r2=1785951&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java Wed Mar 8 11:59:49 2017
@@ -18,11 +18,15 @@
*/
package org.apache.openmeetings.db.dao.room;
+import static org.apache.openmeetings.util.OpenmeetingsVariables.RECENT_ROOMS_COUNT;
import static org.apache.openmeetings.util.OpenmeetingsVariables.webAppRootKey;
+import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
+import java.util.HashSet;
import java.util.List;
+import java.util.Set;
import java.util.TimeZone;
import javax.persistence.EntityManager;
@@ -35,6 +39,7 @@ import org.apache.openjpa.persistence.Op
import org.apache.openmeetings.db.dao.IGroupAdminDataProviderDao;
import org.apache.openmeetings.db.dao.basic.ConfigurationDao;
import org.apache.openmeetings.db.dao.user.UserDao;
+import org.apache.openmeetings.db.entity.log.ConferenceLog;
import org.apache.openmeetings.db.entity.room.Room;
import org.apache.openmeetings.db.entity.room.Room.Type;
import org.apache.openmeetings.db.util.TimezoneUtil;
@@ -157,11 +162,11 @@ public class RoomDao implements IGroupAd
public List<Room> getPublicRooms() {
return em.createNamedQuery("getPublicRoomsOrdered", Room.class).getResultList();
}
-
+
public List<Room> getPublicRooms(Type type) {
return em.createNamedQuery("getPublicRooms", Room.class).setParameter("type", type).getResultList();
}
-
+
public List<Long> getSipRooms(List<Long> ids) {
TypedQuery<Long> q = em.createNamedQuery("getSipRoomIdsByIds", Long.class);
q.setParameter("ids", ids);
@@ -196,19 +201,19 @@ public class RoomDao implements IGroupAd
.setParameter("end", endCal.getTime())
.getResultList();
}
-
+
public long getRoomsCapacityByIds(List<Long> ids) {
return ids == null || ids.isEmpty() ? 0L
: em.createNamedQuery("getRoomsCapacityByIds", Long.class).setParameter("ids", ids).getSingleResult();
}
-
+
private String getSipNumber(long roomId) {
if (cfgDao.isSipEnabled()) {
return cfgDao.getConfValue("red5sip.room_prefix", String.class, "400") + roomId;
}
return null;
}
-
+
@Override
public Room update(Room entity, Long userId) {
if (entity.getId() == null) {
@@ -249,7 +254,7 @@ public class RoomDao implements IGroupAd
if (room == null) {
log.debug("Could not find room " + ownerId + " || " + type);
-
+
room = new Room();
room.setName(name);
room.setType(type);
@@ -283,4 +288,27 @@ public class RoomDao implements IGroupAd
return null;
}
}
+
+ public List<Room> getRecent(Long userId) {
+ List<Room> result = new ArrayList<>();
+ Set<Long> ids = new HashSet<>();
+ //(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)
+ .getResultList())
+ {
+ if (!ids.contains(l.getRoomId())) {
+ Room r = get(l.getRoomId());
+ if (r != null && !r.isDeleted()) {
+ result.add(r);
+ ids.add(r.getId());
+ }
+ }
+ if (ids.size() == RECENT_ROOMS_COUNT) {
+ break;
+ }
+ }
+ return result;
+ }
}
Modified: openmeetings/application/branches/3.2.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/log/ConferenceLog.java
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/log/ConferenceLog.java?rev=1785951&r1=1785950&r2=1785951&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/log/ConferenceLog.java (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/log/ConferenceLog.java Wed Mar 8 11:59:49 2017
@@ -27,12 +27,18 @@ import javax.persistence.Enumerated;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
+import javax.persistence.NamedQueries;
+import javax.persistence.NamedQuery;
import javax.persistence.Table;
import org.apache.openmeetings.db.entity.IDataProviderEntity;
@Entity
-@Table(name = "conferencelog")
+@Table(name = "conference_log")
+@NamedQueries({
+ @NamedQuery(name = "getLogRecentRooms", query = "SELECT c FROM ConferenceLog c "
+ + "WHERE c.roomId IS NOT NULL AND c.type = :roomEnter and c.userId = :userId ORDER BY c.inserted DESC")
+})
public class ConferenceLog implements IDataProviderEntity {
private static final long serialVersionUID = 1L;
public enum Type {
@@ -41,38 +47,38 @@ public class ConferenceLog implements ID
, roomLeave
, nicknameEnter
}
-
+
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name="id")
private Long id;
-
+
@Enumerated(EnumType.STRING)
@Column(name = "type")
private Type type;
-
+
@Column(name="inserted")
private Date inserted;
-
+
@Column(name="insertedby")
private long insertedby;
-
+
//NULL means its a Guest/Invited User
@Column(name="user_id")
private Long userId;
-
+
@Column(name="streamid")
private String streamid;
-
+
@Column(name="room_id")
private Long roomId;
-
+
@Column(name="userip")
private String userip;
-
+
@Column(name="scopename")
private String scopeName;
-
+
@Override
public Long getId() {
return id;
@@ -81,14 +87,14 @@ public class ConferenceLog implements ID
public void setId(Long id) {
this.id = id;
}
-
+
public Type getType() {
return type;
}
public void setType(Type type) {
this.type = type;
}
-
+
public Date getInserted() {
return inserted;
}
@@ -102,35 +108,35 @@ public class ConferenceLog implements ID
public void setInsertedby(long insertedby) {
this.insertedby = insertedby;
}
-
+
public Long getUserId() {
return userId;
}
public void setUserId(Long userId) {
this.userId = userId;
}
-
+
public String getStreamid() {
return streamid;
}
public void setStreamid(String streamid) {
this.streamid = streamid;
}
-
+
public Long getRoomId() {
return roomId;
}
public void setRoomId(Long roomId) {
this.roomId = roomId;
}
-
+
public String getUserip() {
return userip;
}
public void setUserip(String userip) {
this.userip = userip;
}
-
+
public String getScopeName() {
return scopeName;
}
Modified: openmeetings/application/branches/3.2.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/Room.java
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/Room.java?rev=1785951&r1=1785950&r2=1785951&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/Room.java (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/Room.java Wed Mar 8 11:59:49 2017
@@ -80,8 +80,8 @@ import org.simpleframework.xml.Root;
@NamedQuery(name = "getBackupRooms", query = "SELECT r FROM Room r ORDER BY r.id"),
@NamedQuery(name = "getRoomsCapacityByIds", query = "SELECT SUM(r.numberOfPartizipants) FROM Room r WHERE r.deleted = false AND r.id IN :ids")
, @NamedQuery(name = "getGroupRooms", query = "SELECT DISTINCT c.room FROM RoomGroup c LEFT JOIN FETCH c.room "
- + "WHERE c.group.id = :groupId AND c.deleted = false AND c.room.deleted = false AND c.room.appointment = false "
- + "AND c.group.deleted = false ORDER BY c.room.name ASC")
+ + "WHERE c.group.id = :groupId AND c.deleted = false AND c.room.deleted = false AND c.room.appointment = false "
+ + "AND c.group.deleted = false ORDER BY c.room.name ASC")
})
@Table(name = "room")
@Root(name = "room")
Modified: openmeetings/application/branches/3.2.x/openmeetings-install/src/main/java/org/apache/openmeetings/installation/ImportInitvalues.java
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-install/src/main/java/org/apache/openmeetings/installation/ImportInitvalues.java?rev=1785951&r1=1785950&r2=1785951&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-install/src/main/java/org/apache/openmeetings/installation/ImportInitvalues.java (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-install/src/main/java/org/apache/openmeetings/installation/ImportInitvalues.java Wed Mar 8 11:59:49 2017
@@ -52,6 +52,7 @@ import static org.apache.openmeetings.ut
import static org.apache.openmeetings.util.OpenmeetingsVariables.LEVEL_ADMIN;
import static org.apache.openmeetings.util.OpenmeetingsVariables.LEVEL_GROUP_ADMIN;
import static org.apache.openmeetings.util.OpenmeetingsVariables.LEVEL_USER;
+import static org.apache.openmeetings.util.OpenmeetingsVariables.MENU_ROOMS_NAME;
import static org.apache.openmeetings.util.OpenmeetingsVariables.USER_LOGIN_MINIMUM_LENGTH;
import static org.apache.openmeetings.util.OpenmeetingsVariables.USER_PASSWORD_MINIMUM_LENGTH;
import static org.apache.openmeetings.util.OpenmeetingsVariables.webAppRootKey;
@@ -129,7 +130,7 @@ public class ImportInitvalues {
/*
* ######################## Conference Menu Points
*/
- Naviglobal rooms = navimanagement.addGlobalStructure(2, "792", LEVEL_USER, "Conference Rooms", "793");
+ Naviglobal rooms = navimanagement.addGlobalStructure(2, "792", LEVEL_USER, MENU_ROOMS_NAME, "793");
navimanagement.addMainStructure("conferenceModuleRoomList", "publicTabButton", 1, "777", LEVEL_USER, "Public Rooms", rooms.getId(), "1506");
navimanagement.addMainStructure("conferenceModuleRoomList", "privateTabButton", 2, "779", LEVEL_USER, "Private Rooms", rooms.getId(), "1507");
navimanagement.addMainStructure("conferenceModuleRoomList", "myTabButton", 3, "781", LEVEL_USER, "My Rooms", rooms.getId(), "1508");
Modified: openmeetings/application/branches/3.2.x/openmeetings-util/src/main/java/org/apache/openmeetings/util/OpenmeetingsVariables.java
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-util/src/main/java/org/apache/openmeetings/util/OpenmeetingsVariables.java?rev=1785951&r1=1785950&r2=1785951&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-util/src/main/java/org/apache/openmeetings/util/OpenmeetingsVariables.java (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-util/src/main/java/org/apache/openmeetings/util/OpenmeetingsVariables.java Wed Mar 8 11:59:49 2017
@@ -48,6 +48,8 @@ public class OpenmeetingsVariables {
public static final String CONFIG_DEFAULT_GROUP_ID = "default_group_id";
public static final String CONFIG_GOOGLE_ANALYTICS_CODE = "google.analytics.code";
public static final String CONFIG_SYSTEM_EMAIL = "system_email_addr";
+ public static final String MENU_ROOMS_NAME = "Conference Rooms";
+ public static final int RECENT_ROOMS_COUNT = 5;
public static final int LEVEL_USER = 1;
public static final int LEVEL_GROUP_ADMIN = 2;
public static final int LEVEL_ADMIN = 3;
Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.java
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.java?rev=1785951&r1=1785950&r2=1785951&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.java (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.java Wed Mar 8 11:59:49 2017
@@ -21,6 +21,7 @@ package org.apache.openmeetings.web.app;
import static org.apache.openmeetings.core.util.WebSocketHelper.sendRoom;
import static org.apache.openmeetings.util.OpenmeetingsVariables.webAppRootKey;
import static org.apache.openmeetings.util.OpenmeetingsVariables.wicketApplicationName;
+import static org.apache.openmeetings.web.app.WebSession.getUserId;
import static org.apache.openmeetings.web.pages.HashPage.INVITATION_HASH;
import static org.apache.openmeetings.web.user.rooms.RoomEnterBehavior.getRoomUrlFragment;
import static org.apache.openmeetings.web.util.OmUrlFragment.PROFILE_MESSAGES;
@@ -45,10 +46,12 @@ import org.apache.openmeetings.core.remo
import org.apache.openmeetings.core.util.WebSocketHelper;
import org.apache.openmeetings.db.dao.basic.ConfigurationDao;
import org.apache.openmeetings.db.dao.label.LabelDao;
+import org.apache.openmeetings.db.dao.log.ConferenceLogDao;
import org.apache.openmeetings.db.dao.user.UserDao;
import org.apache.openmeetings.db.entity.basic.Client;
import org.apache.openmeetings.db.entity.basic.Client.Activity;
import org.apache.openmeetings.db.entity.basic.Client.Pod;
+import org.apache.openmeetings.db.entity.log.ConferenceLog;
import org.apache.openmeetings.db.entity.record.Recording;
import org.apache.openmeetings.db.entity.room.Invitation;
import org.apache.openmeetings.db.entity.room.Room;
@@ -67,6 +70,7 @@ import org.apache.openmeetings.web.pages
import org.apache.openmeetings.web.pages.install.InstallWizardPage;
import org.apache.openmeetings.web.room.RoomResourceReference;
import org.apache.openmeetings.web.user.dashboard.MyRoomsWidgetDescriptor;
+import org.apache.openmeetings.web.user.dashboard.RecentRoomsWidgetDescriptor;
import org.apache.openmeetings.web.user.dashboard.RssWidgetDescriptor;
import org.apache.openmeetings.web.user.dashboard.StartWidgetDescriptor;
import org.apache.openmeetings.web.user.dashboard.WelcomeWidgetDescriptor;
@@ -143,6 +147,7 @@ public class Application extends Authent
dashboardContext.setDashboardPersister(new UserDashboardPersister());
WidgetRegistry widgetRegistry = dashboardContext.getWidgetRegistry();
widgetRegistry.registerWidget(new MyRoomsWidgetDescriptor());
+ widgetRegistry.registerWidget(new RecentRoomsWidgetDescriptor());
widgetRegistry.registerWidget(new WelcomeWidgetDescriptor());
widgetRegistry.registerWidget(new StartWidgetDescriptor());
widgetRegistry.registerWidget(new RssWidgetDescriptor());
@@ -228,6 +233,11 @@ public class Application extends Authent
removeUserFromRoom(c);
if (roomId != null) {
sendRoom(new RoomMessage(roomId, c.getUserId(), RoomMessage.Type.roomExit));
+ getBean(ConferenceLogDao.class).add(
+ ConferenceLog.Type.roomLeave
+ , getUserId(), "0", roomId
+ , WebSession.get().getClientInfo().getProperties().getRemoteAddress()
+ , "" + roomId);
}
}
Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.properties.xml
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.properties.xml?rev=1785951&r1=1785950&r2=1785951&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.properties.xml (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.properties.xml Wed Mar 8 11:59:49 2017
@@ -1913,4 +1913,6 @@
{0} Support Team.]]></entry>
<entry key="template.recording.expiring.subj.prefix">Recording will be deleted</entry>
<entry key="template.recording.expiring.subj.room"> -- Room[{0}]</entry>
+ <entry key="widget.recent.title">Recent Rooms</entry>
+ <entry key="widget.recent.desc">This sections displays rooms recently opened by you</entry>
</properties>
Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ar.properties.xml
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ar.properties.xml?rev=1785951&r1=1785950&r2=1785951&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ar.properties.xml (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ar.properties.xml Wed Mar 8 11:59:49 2017
@@ -1913,4 +1913,6 @@
{0} Support Team.]]></entry>
<entry key="template.recording.expiring.subj.prefix">Recording will be deleted</entry>
<entry key="template.recording.expiring.subj.room"> -- Room[{0}]</entry>
+ <entry key="widget.recent.title">Recent Rooms</entry>
+ <entry key="widget.recent.desc">This sections displays rooms recently opened by you</entry>
</properties>
Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_bg.properties.xml
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_bg.properties.xml?rev=1785951&r1=1785950&r2=1785951&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_bg.properties.xml (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_bg.properties.xml Wed Mar 8 11:59:49 2017
@@ -1913,4 +1913,6 @@
{0} Support Team.]]></entry>
<entry key="template.recording.expiring.subj.prefix">Recording will be deleted</entry>
<entry key="template.recording.expiring.subj.room"> -- Room[{0}]</entry>
+ <entry key="widget.recent.title">Recent Rooms</entry>
+ <entry key="widget.recent.desc">This sections displays rooms recently opened by you</entry>
</properties>
Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ca.properties.xml
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ca.properties.xml?rev=1785951&r1=1785950&r2=1785951&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ca.properties.xml (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ca.properties.xml Wed Mar 8 11:59:49 2017
@@ -1913,4 +1913,6 @@
{0} Support Team.]]></entry>
<entry key="template.recording.expiring.subj.prefix">Recording will be deleted</entry>
<entry key="template.recording.expiring.subj.room"> -- Room[{0}]</entry>
+ <entry key="widget.recent.title">Recent Rooms</entry>
+ <entry key="widget.recent.desc">This sections displays rooms recently opened by you</entry>
</properties>
Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_cs.properties.xml
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_cs.properties.xml?rev=1785951&r1=1785950&r2=1785951&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_cs.properties.xml (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_cs.properties.xml Wed Mar 8 11:59:49 2017
@@ -1913,4 +1913,6 @@
{0} Support Team.]]></entry>
<entry key="template.recording.expiring.subj.prefix">Recording will be deleted</entry>
<entry key="template.recording.expiring.subj.room"> -- Room[{0}]</entry>
+ <entry key="widget.recent.title">Recent Rooms</entry>
+ <entry key="widget.recent.desc">This sections displays rooms recently opened by you</entry>
</properties>
Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_da.properties.xml
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_da.properties.xml?rev=1785951&r1=1785950&r2=1785951&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_da.properties.xml (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_da.properties.xml Wed Mar 8 11:59:49 2017
@@ -1913,4 +1913,6 @@
{0} Support Team.]]></entry>
<entry key="template.recording.expiring.subj.prefix">Recording will be deleted</entry>
<entry key="template.recording.expiring.subj.room"> -- Room[{0}]</entry>
+ <entry key="widget.recent.title">Recent Rooms</entry>
+ <entry key="widget.recent.desc">This sections displays rooms recently opened by you</entry>
</properties>
Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_de.properties.xml
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_de.properties.xml?rev=1785951&r1=1785950&r2=1785951&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_de.properties.xml (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_de.properties.xml Wed Mar 8 11:59:49 2017
@@ -1934,4 +1934,6 @@
{0} Support Team.]]></entry>
<entry key="template.recording.expiring.subj.prefix">Recording will be deleted</entry>
<entry key="template.recording.expiring.subj.room"> -- Room[{0}]</entry>
+ <entry key="widget.recent.title">Recent Rooms</entry>
+ <entry key="widget.recent.desc">This sections displays rooms recently opened by you</entry>
</properties>
Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_el.properties.xml
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_el.properties.xml?rev=1785951&r1=1785950&r2=1785951&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_el.properties.xml (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_el.properties.xml Wed Mar 8 11:59:49 2017
@@ -1913,4 +1913,6 @@
{0} Support Team.]]></entry>
<entry key="template.recording.expiring.subj.prefix">Recording will be deleted</entry>
<entry key="template.recording.expiring.subj.room"> -- Room[{0}]</entry>
+ <entry key="widget.recent.title">Recent Rooms</entry>
+ <entry key="widget.recent.desc">This sections displays rooms recently opened by you</entry>
</properties>
Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_es.properties.xml
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_es.properties.xml?rev=1785951&r1=1785950&r2=1785951&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_es.properties.xml (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_es.properties.xml Wed Mar 8 11:59:49 2017
@@ -1913,4 +1913,6 @@
{0} Support Team.]]></entry>
<entry key="template.recording.expiring.subj.prefix">Recording will be deleted</entry>
<entry key="template.recording.expiring.subj.room"> -- Room[{0}]</entry>
+ <entry key="widget.recent.title">Recent Rooms</entry>
+ <entry key="widget.recent.desc">This sections displays rooms recently opened by you</entry>
</properties>
Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_fa.properties.xml
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_fa.properties.xml?rev=1785951&r1=1785950&r2=1785951&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_fa.properties.xml (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_fa.properties.xml Wed Mar 8 11:59:49 2017
@@ -1913,4 +1913,6 @@
{0} Support Team.]]></entry>
<entry key="template.recording.expiring.subj.prefix">Recording will be deleted</entry>
<entry key="template.recording.expiring.subj.room"> -- Room[{0}]</entry>
+ <entry key="widget.recent.title">Recent Rooms</entry>
+ <entry key="widget.recent.desc">This sections displays rooms recently opened by you</entry>
</properties>
Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_fi.properties.xml
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_fi.properties.xml?rev=1785951&r1=1785950&r2=1785951&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_fi.properties.xml (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_fi.properties.xml Wed Mar 8 11:59:49 2017
@@ -1913,4 +1913,6 @@
{0} Support Team.]]></entry>
<entry key="template.recording.expiring.subj.prefix">Recording will be deleted</entry>
<entry key="template.recording.expiring.subj.room"> -- Room[{0}]</entry>
+ <entry key="widget.recent.title">Recent Rooms</entry>
+ <entry key="widget.recent.desc">This sections displays rooms recently opened by you</entry>
</properties>
Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_fr.properties.xml
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_fr.properties.xml?rev=1785951&r1=1785950&r2=1785951&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_fr.properties.xml (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_fr.properties.xml Wed Mar 8 11:59:49 2017
@@ -1902,4 +1902,6 @@
{0} Support Team.]]></entry>
<entry key="template.recording.expiring.subj.prefix">Recording will be deleted</entry>
<entry key="template.recording.expiring.subj.room"> -- Room[{0}]</entry>
+ <entry key="widget.recent.title">Recent Rooms</entry>
+ <entry key="widget.recent.desc">This sections displays rooms recently opened by you</entry>
</properties>
Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_gl.properties.xml
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_gl.properties.xml?rev=1785951&r1=1785950&r2=1785951&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_gl.properties.xml (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_gl.properties.xml Wed Mar 8 11:59:49 2017
@@ -1913,4 +1913,6 @@
{0} Support Team.]]></entry>
<entry key="template.recording.expiring.subj.prefix">Recording will be deleted</entry>
<entry key="template.recording.expiring.subj.room"> -- Room[{0}]</entry>
+ <entry key="widget.recent.title">Recent Rooms</entry>
+ <entry key="widget.recent.desc">This sections displays rooms recently opened by you</entry>
</properties>
Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_hu.properties.xml
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_hu.properties.xml?rev=1785951&r1=1785950&r2=1785951&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_hu.properties.xml (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_hu.properties.xml Wed Mar 8 11:59:49 2017
@@ -1897,4 +1897,6 @@
{0} Support Team.]]></entry>
<entry key="template.recording.expiring.subj.prefix">Recording will be deleted</entry>
<entry key="template.recording.expiring.subj.room"> -- Room[{0}]</entry>
+ <entry key="widget.recent.title">Recent Rooms</entry>
+ <entry key="widget.recent.desc">This sections displays rooms recently opened by you</entry>
</properties>
Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_id.properties.xml
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_id.properties.xml?rev=1785951&r1=1785950&r2=1785951&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_id.properties.xml (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_id.properties.xml Wed Mar 8 11:59:49 2017
@@ -1913,4 +1913,6 @@
{0} Support Team.]]></entry>
<entry key="template.recording.expiring.subj.prefix">Recording will be deleted</entry>
<entry key="template.recording.expiring.subj.room"> -- Room[{0}]</entry>
+ <entry key="widget.recent.title">Recent Rooms</entry>
+ <entry key="widget.recent.desc">This sections displays rooms recently opened by you</entry>
</properties>
Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_it.properties.xml
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_it.properties.xml?rev=1785951&r1=1785950&r2=1785951&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_it.properties.xml (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_it.properties.xml Wed Mar 8 11:59:49 2017
@@ -1915,4 +1915,6 @@
{0} Support Team.]]></entry>
<entry key="template.recording.expiring.subj.prefix">Recording will be deleted</entry>
<entry key="template.recording.expiring.subj.room"> -- Room[{0}]</entry>
+ <entry key="widget.recent.title">Recent Rooms</entry>
+ <entry key="widget.recent.desc">This sections displays rooms recently opened by you</entry>
</properties>
Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ja.properties.xml
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ja.properties.xml?rev=1785951&r1=1785950&r2=1785951&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ja.properties.xml (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ja.properties.xml Wed Mar 8 11:59:49 2017
@@ -1913,4 +1913,6 @@
{0} Support Team.]]></entry>
<entry key="template.recording.expiring.subj.prefix">Recording will be deleted</entry>
<entry key="template.recording.expiring.subj.room"> -- Room[{0}]</entry>
+ <entry key="widget.recent.title">Recent Rooms</entry>
+ <entry key="widget.recent.desc">This sections displays rooms recently opened by you</entry>
</properties>
Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ko.properties.xml
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ko.properties.xml?rev=1785951&r1=1785950&r2=1785951&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ko.properties.xml (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ko.properties.xml Wed Mar 8 11:59:49 2017
@@ -1915,4 +1915,6 @@
{0} Support Team.]]></entry>
<entry key="template.recording.expiring.subj.prefix">Recording will be deleted</entry>
<entry key="template.recording.expiring.subj.room"> -- Room[{0}]</entry>
+ <entry key="widget.recent.title">Recent Rooms</entry>
+ <entry key="widget.recent.desc">This sections displays rooms recently opened by you</entry>
</properties>
Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_nl.properties.xml
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_nl.properties.xml?rev=1785951&r1=1785950&r2=1785951&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_nl.properties.xml (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_nl.properties.xml Wed Mar 8 11:59:49 2017
@@ -1913,4 +1913,6 @@
{0} Support Team.]]></entry>
<entry key="template.recording.expiring.subj.prefix">Recording will be deleted</entry>
<entry key="template.recording.expiring.subj.room"> -- Room[{0}]</entry>
+ <entry key="widget.recent.title">Recent Rooms</entry>
+ <entry key="widget.recent.desc">This sections displays rooms recently opened by you</entry>
</properties>
Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_pl.properties.xml
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_pl.properties.xml?rev=1785951&r1=1785950&r2=1785951&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_pl.properties.xml (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_pl.properties.xml Wed Mar 8 11:59:49 2017
@@ -1913,4 +1913,6 @@
{0} Support Team.]]></entry>
<entry key="template.recording.expiring.subj.prefix">Recording will be deleted</entry>
<entry key="template.recording.expiring.subj.room"> -- Room[{0}]</entry>
+ <entry key="widget.recent.title">Recent Rooms</entry>
+ <entry key="widget.recent.desc">This sections displays rooms recently opened by you</entry>
</properties>
Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_pt.properties.xml
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_pt.properties.xml?rev=1785951&r1=1785950&r2=1785951&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_pt.properties.xml (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_pt.properties.xml Wed Mar 8 11:59:49 2017
@@ -1913,4 +1913,6 @@
{0} Support Team.]]></entry>
<entry key="template.recording.expiring.subj.prefix">Recording will be deleted</entry>
<entry key="template.recording.expiring.subj.room"> -- Room[{0}]</entry>
+ <entry key="widget.recent.title">Recent Rooms</entry>
+ <entry key="widget.recent.desc">This sections displays rooms recently opened by you</entry>
</properties>
Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_pt_BR.properties.xml
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_pt_BR.properties.xml?rev=1785951&r1=1785950&r2=1785951&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_pt_BR.properties.xml (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_pt_BR.properties.xml Wed Mar 8 11:59:49 2017
@@ -1913,4 +1913,6 @@
{0} Support Team.]]></entry>
<entry key="template.recording.expiring.subj.prefix">Recording will be deleted</entry>
<entry key="template.recording.expiring.subj.room"> -- Room[{0}]</entry>
+ <entry key="widget.recent.title">Recent Rooms</entry>
+ <entry key="widget.recent.desc">This sections displays rooms recently opened by you</entry>
</properties>
Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ru.properties.xml
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ru.properties.xml?rev=1785951&r1=1785950&r2=1785951&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ru.properties.xml (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ru.properties.xml Wed Mar 8 11:59:49 2017
@@ -1914,4 +1914,6 @@
{0} Комманда поддержки.]]></entry>
<entry key="template.recording.expiring.subj.prefix">Запись будет удалена</entry>
<entry key="template.recording.expiring.subj.room"> -- Комната[{0}]</entry>
+ <entry key="widget.recent.title">Последние комнаты</entry>
+ <entry key="widget.recent.desc">Эта секция отображает комнаты в которые Вы недавно заходили</entry>
</properties>
Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_sk.properties.xml
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_sk.properties.xml?rev=1785951&r1=1785950&r2=1785951&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_sk.properties.xml (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_sk.properties.xml Wed Mar 8 11:59:49 2017
@@ -1913,4 +1913,6 @@
{0} Support Team.]]></entry>
<entry key="template.recording.expiring.subj.prefix">Recording will be deleted</entry>
<entry key="template.recording.expiring.subj.room"> -- Room[{0}]</entry>
+ <entry key="widget.recent.title">Recent Rooms</entry>
+ <entry key="widget.recent.desc">This sections displays rooms recently opened by you</entry>
</properties>
Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_sv.properties.xml
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_sv.properties.xml?rev=1785951&r1=1785950&r2=1785951&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_sv.properties.xml (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_sv.properties.xml Wed Mar 8 11:59:49 2017
@@ -1913,4 +1913,6 @@
{0} Support Team.]]></entry>
<entry key="template.recording.expiring.subj.prefix">Recording will be deleted</entry>
<entry key="template.recording.expiring.subj.room"> -- Room[{0}]</entry>
+ <entry key="widget.recent.title">Recent Rooms</entry>
+ <entry key="widget.recent.desc">This sections displays rooms recently opened by you</entry>
</properties>
Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_th.properties.xml
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_th.properties.xml?rev=1785951&r1=1785950&r2=1785951&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_th.properties.xml (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_th.properties.xml Wed Mar 8 11:59:49 2017
@@ -1913,4 +1913,6 @@
{0} Support Team.]]></entry>
<entry key="template.recording.expiring.subj.prefix">Recording will be deleted</entry>
<entry key="template.recording.expiring.subj.room"> -- Room[{0}]</entry>
+ <entry key="widget.recent.title">Recent Rooms</entry>
+ <entry key="widget.recent.desc">This sections displays rooms recently opened by you</entry>
</properties>
Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_tr.properties.xml
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_tr.properties.xml?rev=1785951&r1=1785950&r2=1785951&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_tr.properties.xml (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_tr.properties.xml Wed Mar 8 11:59:49 2017
@@ -1913,4 +1913,6 @@
{0} Support Team.]]></entry>
<entry key="template.recording.expiring.subj.prefix">Recording will be deleted</entry>
<entry key="template.recording.expiring.subj.room"> -- Room[{0}]</entry>
+ <entry key="widget.recent.title">Recent Rooms</entry>
+ <entry key="widget.recent.desc">This sections displays rooms recently opened by you</entry>
</properties>
Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_uk.properties.xml
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_uk.properties.xml?rev=1785951&r1=1785950&r2=1785951&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_uk.properties.xml (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_uk.properties.xml Wed Mar 8 11:59:49 2017
@@ -1914,4 +1914,6 @@
{0} Support Team.]]></entry>
<entry key="template.recording.expiring.subj.prefix">Recording will be deleted</entry>
<entry key="template.recording.expiring.subj.room"> -- Room[{0}]</entry>
+ <entry key="widget.recent.title">Recent Rooms</entry>
+ <entry key="widget.recent.desc">This sections displays rooms recently opened by you</entry>
</properties>
Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_zh_CN.properties.xml
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_zh_CN.properties.xml?rev=1785951&r1=1785950&r2=1785951&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_zh_CN.properties.xml (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_zh_CN.properties.xml Wed Mar 8 11:59:49 2017
@@ -1899,4 +1899,6 @@
{0} Support Team.]]></entry>
<entry key="template.recording.expiring.subj.prefix">Recording will be deleted</entry>
<entry key="template.recording.expiring.subj.room"> -- Room[{0}]</entry>
+ <entry key="widget.recent.title">Recent Rooms</entry>
+ <entry key="widget.recent.desc">This sections displays rooms recently opened by you</entry>
</properties>
Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_zh_TW.properties.xml
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_zh_TW.properties.xml?rev=1785951&r1=1785950&r2=1785951&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_zh_TW.properties.xml (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_zh_TW.properties.xml Wed Mar 8 11:59:49 2017
@@ -1913,4 +1913,6 @@
{0} Support Team.]]></entry>
<entry key="template.recording.expiring.subj.prefix">Recording will be deleted</entry>
<entry key="template.recording.expiring.subj.room"> -- Room[{0}]</entry>
+ <entry key="widget.recent.title">Recent Rooms</entry>
+ <entry key="widget.recent.desc">This sections displays rooms recently opened by you</entry>
</properties>
Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/MainPanel.java
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/MainPanel.java?rev=1785951&r1=1785950&r2=1785951&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/MainPanel.java (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/MainPanel.java Wed Mar 8 11:59:49 2017
@@ -23,6 +23,7 @@ import static org.apache.openmeetings.db
import static org.apache.openmeetings.util.OpenmeetingsVariables.LEVEL_ADMIN;
import static org.apache.openmeetings.util.OpenmeetingsVariables.LEVEL_GROUP_ADMIN;
import static org.apache.openmeetings.util.OpenmeetingsVariables.LEVEL_USER;
+import static org.apache.openmeetings.util.OpenmeetingsVariables.MENU_ROOMS_NAME;
import static org.apache.openmeetings.util.OpenmeetingsVariables.webAppRootKey;
import static org.apache.openmeetings.web.app.Application.addOnlineUser;
import static org.apache.openmeetings.web.app.Application.exit;
@@ -42,10 +43,12 @@ import java.util.Set;
import org.apache.openmeetings.core.util.WebSocketHelper;
import org.apache.openmeetings.db.dao.basic.NavigationDao;
+import org.apache.openmeetings.db.dao.room.RoomDao;
import org.apache.openmeetings.db.dao.user.UserDao;
import org.apache.openmeetings.db.entity.basic.Client;
import org.apache.openmeetings.db.entity.basic.Naviglobal;
import org.apache.openmeetings.db.entity.basic.Navimain;
+import org.apache.openmeetings.db.entity.room.Room;
import org.apache.openmeetings.db.entity.user.PrivateMessage;
import org.apache.openmeetings.db.entity.user.User.Right;
import org.apache.openmeetings.web.app.Application;
@@ -53,10 +56,12 @@ import org.apache.openmeetings.web.app.W
import org.apache.openmeetings.web.common.menu.MainMenuItem;
import org.apache.openmeetings.web.common.menu.MenuItem;
import org.apache.openmeetings.web.common.menu.MenuPanel;
+import org.apache.openmeetings.web.pages.MainPage;
import org.apache.openmeetings.web.user.AboutDialog;
import org.apache.openmeetings.web.user.MessageDialog;
import org.apache.openmeetings.web.user.UserInfoDialog;
import org.apache.openmeetings.web.user.chat.ChatPanel;
+import org.apache.openmeetings.web.user.rooms.RoomEnterBehavior;
import org.apache.openmeetings.web.util.ContactsHelper;
import org.apache.openmeetings.web.util.OmUrlFragment;
import org.apache.wicket.Component;
@@ -91,6 +96,7 @@ import com.googlecode.wicket.jquery.ui.w
public class MainPanel extends Panel {
private static final long serialVersionUID = 1L;
private static final Logger log = Red5LoggerFactory.getLogger(MainPanel.class, webAppRootKey);
+ private static final String DELIMITER = " ";
private static final WebMarkupContainer EMPTY = new WebMarkupContainer(CHILD_ID);
public static final String PARAM_USER_ID = "userId";
private Client client = null;
@@ -288,6 +294,23 @@ public class MainPanel extends Panel {
}
});
}
+ if (MENU_ROOMS_NAME.equals(gl.getName())) {
+ List<Room> recent = getBean(RoomDao.class).getRecent(getUserId());
+ if (!recent.isEmpty()) {
+ l.add(new MenuItem(DELIMITER, (String)null));
+ }
+ for (Room r : recent) {
+ final Long roomId = r.getId();
+ l.add(new MenuItem(r.getName(), r.getName()) {
+ private static final long serialVersionUID = 1L;
+
+ @Override
+ public void onClick(AjaxRequestTarget target) {
+ RoomEnterBehavior.roomEnter((MainPage)getPage(), target, roomId);
+ }
+ });
+ }
+ }
menu.add(new MenuItem(Application.getString(gl.getLabelId()), l));
}
return menu;
Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/menu/MenuItem.java
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/menu/MenuItem.java?rev=1785951&r1=1785950&r2=1785951&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/menu/MenuItem.java (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/menu/MenuItem.java Wed Mar 8 11:59:49 2017
@@ -29,11 +29,13 @@ public class MenuItem extends com.google
public MenuItem(String title, List<IMenuItem> items) {
super(title, items);
+ //setIcon(JQueryIcon.NONE);
setTop(true);
}
public MenuItem(String title, String desc) {
super(title);
+ //setIcon(JQueryIcon.NONE);
this.desc = desc;
}
Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java?rev=1785951&r1=1785950&r2=1785951&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java Wed Mar 8 11:59:49 2017
@@ -38,11 +38,13 @@ import org.apache.openmeetings.core.remo
import org.apache.openmeetings.core.remote.red5.ScopeApplicationAdapter;
import org.apache.openmeetings.core.util.WebSocketHelper;
import org.apache.openmeetings.db.dao.calendar.AppointmentDao;
+import org.apache.openmeetings.db.dao.log.ConferenceLogDao;
import org.apache.openmeetings.db.dao.user.UserDao;
import org.apache.openmeetings.db.entity.basic.Client;
import org.apache.openmeetings.db.entity.calendar.Appointment;
import org.apache.openmeetings.db.entity.calendar.MeetingMember;
import org.apache.openmeetings.db.entity.file.FileItem;
+import org.apache.openmeetings.db.entity.log.ConferenceLog;
import org.apache.openmeetings.db.entity.room.Room;
import org.apache.openmeetings.db.entity.room.Room.Right;
import org.apache.openmeetings.db.entity.room.Room.RoomElement;
@@ -103,12 +105,17 @@ public class RoomPanel extends BasePanel
}
private final Room r;
private final WebMarkupContainer room = new WebMarkupContainer("roomContainer");
- private final AbstractDefaultAjaxBehavior aab = new AbstractDefaultAjaxBehavior() {
+ private final AbstractDefaultAjaxBehavior roomEnter = new AbstractDefaultAjaxBehavior() {
private static final long serialVersionUID = 1L;
@Override
protected void respond(AjaxRequestTarget target) {
target.appendJavaScript("setRoomSizes();");
+ getBean(ConferenceLogDao.class).add(
+ ConferenceLog.Type.roomEnter
+ , getUserId(), "0", r.getId()
+ , WebSession.get().getClientInfo().getProperties().getRemoteAddress()
+ , "" + r.getId());
//TODO SID etc
WebSocketHelper.sendRoom(new RoomMessage(r.getId(), getUserId(), RoomMessage.Type.roomEnter));
getMainPanel().getChat().roomEnter(r, target);
@@ -183,7 +190,7 @@ public class RoomPanel extends BasePanel
}
};
room.add(wbArea.add(new SwfPanel("whiteboard", r.getId(), getClient().getUid())));
- room.add(aab, activeWb);
+ room.add(roomEnter, activeWb);
room.add(sidebar = new RoomSidebar("sidebar", this));
room.add(activities = new ActivitiesPanel("activities", this));
add(roomClosed = new RedirectMessageDialog("room-closed", "1098", r.isClosed(), r.getRedirectURL()));
@@ -483,7 +490,7 @@ public class RoomPanel extends BasePanel
, String.format("room-reload-%s", UUID.randomUUID()))));
}
if (room.isVisible()) {
- response.render(OnDomReadyHeaderItem.forScript(aab.getCallbackScript()));
+ response.render(OnDomReadyHeaderItem.forScript(roomEnter.getCallbackScript()));
response.render(new PriorityHeaderItem(getNamedFunction("setActiveWbId", activeWb, explicit(PARAM_WB_ID))));
}
}
Added: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/RecentRoomsWidget.java
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/RecentRoomsWidget.java?rev=1785951&view=auto
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/RecentRoomsWidget.java (added)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/RecentRoomsWidget.java Wed Mar 8 11:59:49 2017
@@ -0,0 +1,49 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License") + you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.openmeetings.web.user.dashboard;
+
+import org.apache.openmeetings.web.app.Application;
+import org.apache.wicket.model.Model;
+import org.wicketstuff.dashboard.AbstractWidget;
+import org.wicketstuff.dashboard.Widget;
+import org.wicketstuff.dashboard.WidgetLocation;
+import org.wicketstuff.dashboard.web.WidgetView;
+
+public class RecentRoomsWidget extends AbstractWidget {
+ private static final long serialVersionUID = 1L;
+ public static final String WIDGET_ID_RECENT_ROOMS = "RecentRoomsWidget";
+
+ public RecentRoomsWidget() {
+ super();
+ location = new WidgetLocation(1, 1);
+ init();
+ }
+
+ @Override
+ public void init() {
+ super.init();
+ title = Application.getString("widget.recent.title");
+ id = WIDGET_ID_RECENT_ROOMS;
+ }
+
+ @Override
+ public WidgetView createView(String viewId) {
+ return new RecentRoomsWidgetView(viewId, new Model<Widget>(this));
+ }
+}
Added: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/RecentRoomsWidgetDescriptor.java
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/RecentRoomsWidgetDescriptor.java?rev=1785951&view=auto
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/RecentRoomsWidgetDescriptor.java (added)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/RecentRoomsWidgetDescriptor.java Wed Mar 8 11:59:49 2017
@@ -0,0 +1,51 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License") + you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.openmeetings.web.user.dashboard;
+
+import org.apache.openmeetings.web.app.Application;
+import org.wicketstuff.dashboard.WidgetDescriptor;
+
+public class RecentRoomsWidgetDescriptor implements WidgetDescriptor {
+ private static final long serialVersionUID = 1L;
+
+ @Override
+ public String getName() {
+ return Application.getString("widget.recent.title");
+ }
+
+ @Override
+ public String getProvider() {
+ return "Apache Openmeetings";
+ }
+
+ @Override
+ public String getDescription() {
+ return Application.getString("widget.recent.desc");
+ }
+
+ @Override
+ public String getWidgetClassName() {
+ return RecentRoomsWidget.class.getName();
+ }
+
+ @Override
+ public String getTypeName() {
+ return "om.widget.recentrooms";
+ }
+}
Added: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/RecentRoomsWidgetView.html
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/RecentRoomsWidgetView.html?rev=1785951&view=auto
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/RecentRoomsWidgetView.html (added)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/RecentRoomsWidgetView.html Wed Mar 8 11:59:49 2017
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ 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.
+
+-->
+<html xmlns:wicket="http://wicket.apache.org">
+ <wicket:panel>
+ <div wicket:id="rooms"></div>
+ </wicket:panel>
+</html>
Added: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/RecentRoomsWidgetView.java
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/RecentRoomsWidgetView.java?rev=1785951&view=auto
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/RecentRoomsWidgetView.java (added)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/RecentRoomsWidgetView.java Wed Mar 8 11:59:49 2017
@@ -0,0 +1,38 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License") + you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.openmeetings.web.user.dashboard;
+
+import static org.apache.openmeetings.web.app.Application.getBean;
+import static org.apache.openmeetings.web.app.WebSession.getUserId;
+
+import org.apache.openmeetings.db.dao.room.RoomDao;
+import org.apache.openmeetings.web.user.rooms.RoomsPanel;
+import org.apache.wicket.model.Model;
+import org.wicketstuff.dashboard.Widget;
+import org.wicketstuff.dashboard.web.WidgetView;
+
+public class RecentRoomsWidgetView extends WidgetView {
+ private static final long serialVersionUID = 1L;
+
+ public RecentRoomsWidgetView(String id, Model<Widget> model) {
+ super(id, model);
+
+ add(new RoomsPanel("rooms", getBean(RoomDao.class).getRecent(getUserId())));
+ }
+}
Modified: openmeetings/application/trunk/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/red5/ScopeApplicationAdapter.java
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/red5/ScopeApplicationAdapter.java?rev=1785951&r1=1785950&r2=1785951&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/red5/ScopeApplicationAdapter.java (original)
+++ openmeetings/application/trunk/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/red5/ScopeApplicationAdapter.java Wed Mar 8 11:59:49 2017
@@ -619,11 +619,6 @@ public class ScopeApplicationAdapter ext
WebSocketHelper.sendRoom(new TextRoomMessage(client.getRoomId(), client.getUserId(), RoomMessage.Type.sharingStoped, client.getStreamPublishName()));
}
- // Log the User
- conferenceLogDao.add(ConferenceLog.Type.roomLeave,
- client.getUserId(), client.getStreamid(),
- roomId, client.getUserip(), "");
-
// Remove User from Sync List's
if (roomId != null) {
whiteBoardService.removeUserFromAllLists(scope, client);
@@ -1124,10 +1119,6 @@ public class ScopeApplicationAdapter ext
client.setCanGiveAudio(true);
}
sessionManager.updateClientByStreamId(streamid, client, true, null); // first save to get valid room count
- // Log the User
- conferenceLogDao.add(ConferenceLog.Type.roomEnter,
- client.getUserId(), streamid, roomId,
- client.getUserip(), "");
// Check for Moderation LogicalRoom ENTER
List<Client> roomClients = sessionManager.getClientListByRoom(roomId);
Modified: openmeetings/application/trunk/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java?rev=1785951&r1=1785950&r2=1785951&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java (original)
+++ openmeetings/application/trunk/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java Wed Mar 8 11:59:49 2017
@@ -18,11 +18,15 @@
*/
package org.apache.openmeetings.db.dao.room;
+import static org.apache.openmeetings.util.OpenmeetingsVariables.RECENT_ROOMS_COUNT;
import static org.apache.openmeetings.util.OpenmeetingsVariables.webAppRootKey;
+import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
+import java.util.HashSet;
import java.util.List;
+import java.util.Set;
import java.util.TimeZone;
import javax.persistence.EntityManager;
@@ -35,6 +39,7 @@ import org.apache.openjpa.persistence.Op
import org.apache.openmeetings.db.dao.IGroupAdminDataProviderDao;
import org.apache.openmeetings.db.dao.basic.ConfigurationDao;
import org.apache.openmeetings.db.dao.user.UserDao;
+import org.apache.openmeetings.db.entity.log.ConferenceLog;
import org.apache.openmeetings.db.entity.room.Room;
import org.apache.openmeetings.db.entity.room.Room.Type;
import org.apache.openmeetings.db.util.TimezoneUtil;
@@ -157,11 +162,11 @@ public class RoomDao implements IGroupAd
public List<Room> getPublicRooms() {
return em.createNamedQuery("getPublicRoomsOrdered", Room.class).getResultList();
}
-
+
public List<Room> getPublicRooms(Type type) {
return em.createNamedQuery("getPublicRooms", Room.class).setParameter("type", type).getResultList();
}
-
+
public List<Long> getSipRooms(List<Long> ids) {
TypedQuery<Long> q = em.createNamedQuery("getSipRoomIdsByIds", Long.class);
q.setParameter("ids", ids);
@@ -196,19 +201,19 @@ public class RoomDao implements IGroupAd
.setParameter("end", endCal.getTime())
.getResultList();
}
-
+
public long getRoomsCapacityByIds(List<Long> ids) {
return ids == null || ids.isEmpty() ? 0L
: em.createNamedQuery("getRoomsCapacityByIds", Long.class).setParameter("ids", ids).getSingleResult();
}
-
+
private String getSipNumber(long roomId) {
if (cfgDao.isSipEnabled()) {
return cfgDao.getConfValue("red5sip.room_prefix", String.class, "400") + roomId;
}
return null;
}
-
+
@Override
public Room update(Room entity, Long userId) {
if (entity.getId() == null) {
@@ -249,7 +254,7 @@ public class RoomDao implements IGroupAd
if (room == null) {
log.debug("Could not find room " + ownerId + " || " + type);
-
+
room = new Room();
room.setName(name);
room.setType(type);
@@ -283,4 +288,27 @@ public class RoomDao implements IGroupAd
return null;
}
}
+
+ public List<Room> getRecent(Long userId) {
+ List<Room> result = new ArrayList<>();
+ Set<Long> ids = new HashSet<>();
+ //(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)
+ .getResultList())
+ {
+ if (!ids.contains(l.getRoomId())) {
+ Room r = get(l.getRoomId());
+ if (r != null && !r.isDeleted()) {
+ result.add(r);
+ ids.add(r.getId());
+ }
+ }
+ if (ids.size() == RECENT_ROOMS_COUNT) {
+ break;
+ }
+ }
+ return result;
+ }
}
Modified: openmeetings/application/trunk/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/log/ConferenceLog.java
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/log/ConferenceLog.java?rev=1785951&r1=1785950&r2=1785951&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/log/ConferenceLog.java (original)
+++ openmeetings/application/trunk/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/log/ConferenceLog.java Wed Mar 8 11:59:49 2017
@@ -27,12 +27,18 @@ import javax.persistence.Enumerated;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
+import javax.persistence.NamedQueries;
+import javax.persistence.NamedQuery;
import javax.persistence.Table;
import org.apache.openmeetings.db.entity.IDataProviderEntity;
@Entity
-@Table(name = "conferencelog")
+@Table(name = "conference_log")
+@NamedQueries({
+ @NamedQuery(name = "getLogRecentRooms", query = "SELECT c FROM ConferenceLog c "
+ + "WHERE c.roomId IS NOT NULL AND c.type = :roomEnter and c.userId = :userId ORDER BY c.inserted DESC")
+})
public class ConferenceLog implements IDataProviderEntity {
private static final long serialVersionUID = 1L;
public enum Type {
@@ -41,38 +47,38 @@ public class ConferenceLog implements ID
, roomLeave
, nicknameEnter
}
-
+
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name="id")
private Long id;
-
+
@Enumerated(EnumType.STRING)
@Column(name = "type")
private Type type;
-
+
@Column(name="inserted")
private Date inserted;
-
+
@Column(name="insertedby")
private long insertedby;
-
+
//NULL means its a Guest/Invited User
@Column(name="user_id")
private Long userId;
-
+
@Column(name="streamid")
private String streamid;
-
+
@Column(name="room_id")
private Long roomId;
-
+
@Column(name="userip")
private String userip;
-
+
@Column(name="scopename")
private String scopeName;
-
+
@Override
public Long getId() {
return id;
@@ -81,14 +87,14 @@ public class ConferenceLog implements ID
public void setId(Long id) {
this.id = id;
}
-
+
public Type getType() {
return type;
}
public void setType(Type type) {
this.type = type;
}
-
+
public Date getInserted() {
return inserted;
}
@@ -102,35 +108,35 @@ public class ConferenceLog implements ID
public void setInsertedby(long insertedby) {
this.insertedby = insertedby;
}
-
+
public Long getUserId() {
return userId;
}
public void setUserId(Long userId) {
this.userId = userId;
}
-
+
public String getStreamid() {
return streamid;
}
public void setStreamid(String streamid) {
this.streamid = streamid;
}
-
+
public Long getRoomId() {
return roomId;
}
public void setRoomId(Long roomId) {
this.roomId = roomId;
}
-
+
public String getUserip() {
return userip;
}
public void setUserip(String userip) {
this.userip = userip;
}
-
+
public String getScopeName() {
return scopeName;
}