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 2016/04/18 08:30:27 UTC

svn commit: r1739696 [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/entity/room/ branches/3.2.x/open...

Author: solomax
Date: Mon Apr 18 06:30:25 2016
New Revision: 1739696

URL: http://svn.apache.org/viewvc?rev=1739696&view=rev
Log:
[OPENMEETINGS-896] hidden elements should imported as expected

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/entity/room/Room.java
    openmeetings/application/branches/3.2.x/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupImport.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-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/room/RoomPanel.java
    openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/ActivitiesPanel.java
    openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java
    openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.java
    openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/ChatPanel.java
    openmeetings/application/branches/3.2.x/openmeetings-web/src/main/webapp/css/activities.css
    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/entity/room/Room.java
    openmeetings/application/trunk/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupImport.java
    openmeetings/application/trunk/openmeetings-install/src/main/java/org/apache/openmeetings/installation/ImportInitvalues.java
    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/room/RoomPanel.java
    openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/ActivitiesPanel.java
    openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java
    openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.java
    openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/ChatPanel.java
    openmeetings/application/trunk/openmeetings-web/src/main/webapp/css/activities.css

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=1739696&r1=1739695&r2=1739696&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 Mon Apr 18 06:30:25 2016
@@ -1149,7 +1149,7 @@ public class ScopeApplicationAdapter ext
 			sessionManager.updateClientByStreamId(streamid, currentClient, true, null);
 
 			Room room = roomDao.get(roomId);
-			if (!room.getHiddenElements().contains(RoomElement.MicrophoneStatus)) {
+			if (!room.isHidden(RoomElement.MicrophoneStatus)) {
 				currentClient.setCanGiveAudio(true);
 			}
 

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=1739696&r1=1739695&r2=1739696&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 Mon Apr 18 06:30:25 2016
@@ -100,7 +100,7 @@ public class Room implements IDataProvid
 		, Chat
 		, Activities
 		, Files
-		, ActionsMenu
+		, ActionMenu
 		, ScreenSharing
 		, Whiteboard
 		, MicrophoneStatus
@@ -505,6 +505,17 @@ public class Room implements IDataProvid
 		this.hiddenElements = hiddenElements;
 	}
 
+	public boolean isHidden(RoomElement e) {
+		return hiddenElements != null && hiddenElements.contains(e);
+	}
+	
+	public boolean hide(RoomElement e) {
+		if (hiddenElements == null) {
+			hiddenElements = new HashSet<>();
+		}
+		return hiddenElements.add(e);
+	}
+	
 	public List<RoomGroup> getRoomGroups() {
 		return roomGroups;
 	}

Modified: openmeetings/application/branches/3.2.x/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupImport.java
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupImport.java?rev=1739696&r1=1739695&r2=1739696&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupImport.java (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupImport.java Mon Apr 18 06:30:25 2016
@@ -83,6 +83,7 @@ import org.apache.openmeetings.db.entity
 import org.apache.openmeetings.db.entity.record.Recording;
 import org.apache.openmeetings.db.entity.record.RecordingMetaData;
 import org.apache.openmeetings.db.entity.room.Room;
+import org.apache.openmeetings.db.entity.room.Room.RoomElement;
 import org.apache.openmeetings.db.entity.room.RoomGroup;
 import org.apache.openmeetings.db.entity.room.RoomModerator;
 import org.apache.openmeetings.db.entity.room.RoomPoll;
@@ -360,17 +361,7 @@ public class BackupImport {
 		 * ##################### Import Rooms
 		 */
 		{
-			Registry registry = new Registry();
-			Strategy strategy = new RegistryStrategy(registry);
-			RegistryMatcher matcher = new RegistryMatcher(); //TODO need to be removed in the later versions
-			Serializer serializer = new Persister(strategy, matcher);
-
-			matcher.bind(Long.class, LongTransform.class);
-			matcher.bind(Integer.class, IntegerTransform.class);
-			registry.bind(User.class, new UserConverter(userDao, usersMap));
-			registry.bind(Room.Type.class, RoomTypeConverter.class);
-			
-			List<Room> list = readList(serializer, f, "rooms.xml", "rooms", Room.class);
+			List<Room> list = readRoomList(f, "rooms.xml", "rooms");
 			for (Room r : list) {
 				Long roomId = r.getId();
 
@@ -674,7 +665,7 @@ public class BackupImport {
 	}
 	
 	private static <T> List<T> readList(Serializer ser, File baseDir, String fileName, String listNodeName, Class<T> clazz, boolean notThow) throws Exception {
-		List<T> list = new ArrayList<T>();
+		List<T> list = new ArrayList<>();
 		File xml = new File(baseDir, fileName);
 		if (!xml.exists()) {
 			final String msg = fileName + " missing";
@@ -711,8 +702,9 @@ public class BackupImport {
 		return null;
 	}
 	
+	//FIXME (need to be removed in later versions) HACK to fix old properties
 	public List<FileExplorerItem> readFileExplorerItemList(File baseDir, String fileName, String listNodeName) throws Exception {
-		List<FileExplorerItem> list = new ArrayList<FileExplorerItem>();
+		List<FileExplorerItem> list = new ArrayList<>();
 		File xml = new File(baseDir, fileName);
 		if (xml.exists()) {
 			Registry registry = new Registry();
@@ -790,8 +782,9 @@ public class BackupImport {
 		return list;
 	}
 	
+	//FIXME (need to be removed in later versions) HACK to fix old properties
 	public List<Recording> readRecordingList(File baseDir, String fileName, String listNodeName) throws Exception {
-		List<Recording> list = new ArrayList<Recording>();
+		List<Recording> list = new ArrayList<>();
 		File xml = new File(baseDir, fileName);
 		if (xml.exists()) {
 			Registry registry = new Registry();
@@ -865,9 +858,9 @@ public class BackupImport {
 		
 		StringWriter sw = new StringWriter();
 		Transformer xformer = TransformerFactory.newInstance().newTransformer();
-        xformer.transform(new DOMSource(doc), new StreamResult(sw));
-        
-		List<MeetingMember> list = new ArrayList<MeetingMember>();
+		xformer.transform(new DOMSource(doc), new StreamResult(sw));
+
+		List<MeetingMember> list = new ArrayList<>();
 		InputNode root = NodeBuilder.read(new StringReader(sw.toString()));
 		InputNode root1 = NodeBuilder.read(new StringReader(sw.toString())); //HACK to handle external attendee's firstname, lastname, email
 		InputNode listNode = root.getNext();
@@ -967,7 +960,7 @@ public class BackupImport {
 		Transformer xformer = TransformerFactory.newInstance().newTransformer();
 		xformer.transform(new DOMSource(doc), new StreamResult(sw));
 
-		List<User> list = new ArrayList<User>();
+		List<User> list = new ArrayList<>();
 		InputNode root = NodeBuilder.read(new StringReader(sw.toString()));
 		InputNode root1 = NodeBuilder.read(new StringReader(sw.toString())); //HACK to handle Address inside user
 		InputNode root2 = NodeBuilder.read(new StringReader(sw.toString())); //HACK to handle old om_time_zone, level_id, status
@@ -1048,6 +1041,72 @@ public class BackupImport {
 			}
 		}
 		return list;
+	}
+	
+	//FIXME (need to be removed in later versions) HACK to fix old properties
+	private List<Room> readRoomList(File baseDir, String fileName, String listNodeName) throws Exception {
+		List<Room> list = new ArrayList<>();
+		File xml = new File(baseDir, fileName);
+		if (xml.exists()) {
+			Registry registry = new Registry();
+			Strategy strategy = new RegistryStrategy(registry);
+			RegistryMatcher matcher = new RegistryMatcher(); //TODO need to be removed in the later versions
+			Serializer ser = new Persister(strategy, matcher);
+
+			matcher.bind(Long.class, LongTransform.class);
+			matcher.bind(Integer.class, IntegerTransform.class);
+			registry.bind(User.class, new UserConverter(userDao, usersMap));
+			registry.bind(Room.Type.class, RoomTypeConverter.class);
+			
+			InputNode root = NodeBuilder.read(new FileInputStream(xml));
+			InputNode root1 = NodeBuilder.read(new FileInputStream(xml)); //HACK to handle old hideTopBar, hideChat, hideActivitiesAndActions, hideFilesExplorer, hideActionsMenu, hideScreenSharing, hideWhiteboard, showMicrophoneStatus
+			InputNode listNode = root.getNext();
+			InputNode listNode1 = root1.getNext(); //HACK to handle old hideTopBar, hideChat, hideActivitiesAndActions, hideFilesExplorer, hideActionsMenu, hideScreenSharing, hideWhiteboard, showMicrophoneStatus
+			if (listNodeName.equals(listNode.getName())) {
+				InputNode item = listNode.getNext();
+				InputNode item1 = listNode1.getNext(); //HACK to handle old hideTopBar, hideChat, hideActivitiesAndActions, hideFilesExplorer, hideActionsMenu, hideScreenSharing, hideWhiteboard, showMicrophoneStatus
+				while (item != null) {
+					Room r = ser.read(Room.class, item, false);
+					
+					Boolean showMicrophoneStatus = null;
+					//HACK to handle old hideTopBar, hideChat, hideActivitiesAndActions, hideFilesExplorer, hideActionsMenu, hideScreenSharing, hideWhiteboard, showMicrophoneStatus
+					do {
+						if ("hideTopBar".equals(item1.getName()) && "true".equals(item1.getValue())) {
+							r.hide(RoomElement.TopBar);
+						}
+						if ("hideChat".equals(item1.getName()) && "true".equals(item1.getValue())) {
+							r.hide(RoomElement.Chat);
+						}
+						if ("hideActivitiesAndActions".equals(item1.getName()) && "true".equals(item1.getValue())) {
+							r.hide(RoomElement.Activities);
+						}
+						if ("hideFilesExplorer".equals(item1.getName()) && "true".equals(item1.getValue())) {
+							r.hide(RoomElement.Files);
+						}
+						if ("hideActionsMenu".equals(item1.getName()) && "true".equals(item1.getValue())) {
+							r.hide(RoomElement.ActionMenu);
+						}
+						if ("hideScreenSharing".equals(item1.getName()) && "true".equals(item1.getValue())) {
+							r.hide(RoomElement.ScreenSharing);
+						}
+						if ("hideWhiteboard".equals(item1.getName()) && "true".equals(item1.getValue())) {
+							r.hide(RoomElement.Whiteboard);
+						}
+						if ("showMicrophoneStatus".equals(item1.getName())) {
+							showMicrophoneStatus = Boolean.valueOf(item1.getValue());
+						}
+						item1 = listNode1.getNext(); //HACK to handle Address inside user
+					} while (item1 != null && !"room".equals(item1.getName()));
+					
+					if (Boolean.FALSE.equals(showMicrophoneStatus)) {
+						r.hide(RoomElement.MicrophoneStatus);
+					}
+					list.add(r);
+					item = listNode.getNext();
+				}
+			}
+		}
+		return list;
 	}
 	
 	private static Long getProfileId(File f) {

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=1739696&r1=1739695&r2=1739696&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 Mon Apr 18 06:30:25 2016
@@ -51,9 +51,7 @@ import static org.apache.openmeetings.ut
 import static org.apache.openmeetings.util.OpenmeetingsVariables.webAppRootKey;
 
 import java.io.File;
-import java.util.Arrays;
 import java.util.Date;
-import java.util.HashSet;
 import java.util.Iterator;
 
 import org.apache.openmeetings.db.dao.basic.ConfigurationDao;
@@ -367,7 +365,7 @@ public class ImportInitvalues {
 		r.setDemoRoom(false);
 		r.setDemoTime(null);
 
-		r.setHiddenElements(new HashSet<>(Arrays.asList(RoomElement.MicrophoneStatus)));
+		r.hide(RoomElement.MicrophoneStatus);
 		r.setModerated(false);
 
 		r.setDeleted(false);
@@ -395,7 +393,7 @@ public class ImportInitvalues {
 			createRoom("public Interview Room", Type.interview, 16L, true, null);
 			createRoom("public Conference Room", Type.conference, 32L, true, null);
 			Room r = createRoom("public Video Only Room", Type.conference, 32L, true, null);
-			r.setHiddenElements(new HashSet<>(Arrays.asList(RoomElement.Whiteboard)));
+			r.hide(RoomElement.Whiteboard);
 			roomDao.update(r, null);
 			createRoom("public Video And Whiteboard Room", Type.conference, 32L, true, null);
 			createRoom("public Restricted Room", Type.restricted, 100L, true, null);

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=1739696&r1=1739695&r2=1739696&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 Mon Apr 18 06:30:25 2016
@@ -1908,4 +1908,6 @@
 	<entry key="dashboard.widget.admin.cleanup.cleanup">Cleanup</entry>
 	<entry key="dashboard.widget.admin.cleanup.warn">Are you sure you want to delete all temporary files? This operation cannot be undone.</entry>
 	<entry key="dashboard.widget.admin.cleanup.error">Unexpected error while performing cleanup</entry>
+	<entry key="room.action.request.right.moderator">would like to be moderator of this room.</entry>
+	<entry key="admin.room.hidden.elements">Hidden room elements</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=1739696&r1=1739695&r2=1739696&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 Mon Apr 18 06:30:25 2016
@@ -1908,4 +1908,6 @@
 	<entry key="dashboard.widget.admin.cleanup.cleanup">Cleanup</entry>
 	<entry key="dashboard.widget.admin.cleanup.warn">Are you sure you want to delete all temporary files? This operation cannot be undone.</entry>
 	<entry key="dashboard.widget.admin.cleanup.error">Unexpected error while performing cleanup</entry>
+	<entry key="room.action.request.right.moderator">would like to be moderator of this room.</entry>
+	<entry key="admin.room.hidden.elements">Hidden room elements</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=1739696&r1=1739695&r2=1739696&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 Mon Apr 18 06:30:25 2016
@@ -1908,4 +1908,6 @@
 	<entry key="dashboard.widget.admin.cleanup.cleanup">Cleanup</entry>
 	<entry key="dashboard.widget.admin.cleanup.warn">Are you sure you want to delete all temporary files? This operation cannot be undone.</entry>
 	<entry key="dashboard.widget.admin.cleanup.error">Unexpected error while performing cleanup</entry>
+	<entry key="room.action.request.right.moderator">would like to be moderator of this room.</entry>
+	<entry key="admin.room.hidden.elements">Hidden room elements</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=1739696&r1=1739695&r2=1739696&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 Mon Apr 18 06:30:25 2016
@@ -1908,4 +1908,6 @@
 	<entry key="dashboard.widget.admin.cleanup.cleanup">Cleanup</entry>
 	<entry key="dashboard.widget.admin.cleanup.warn">Are you sure you want to delete all temporary files? This operation cannot be undone.</entry>
 	<entry key="dashboard.widget.admin.cleanup.error">Unexpected error while performing cleanup</entry>
+	<entry key="room.action.request.right.moderator">would like to be moderator of this room.</entry>
+	<entry key="admin.room.hidden.elements">Hidden room elements</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=1739696&r1=1739695&r2=1739696&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 Mon Apr 18 06:30:25 2016
@@ -1908,4 +1908,6 @@
 	<entry key="dashboard.widget.admin.cleanup.cleanup">Cleanup</entry>
 	<entry key="dashboard.widget.admin.cleanup.warn">Are you sure you want to delete all temporary files? This operation cannot be undone.</entry>
 	<entry key="dashboard.widget.admin.cleanup.error">Unexpected error while performing cleanup</entry>
+	<entry key="room.action.request.right.moderator">would like to be moderator of this room.</entry>
+	<entry key="admin.room.hidden.elements">Hidden room elements</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=1739696&r1=1739695&r2=1739696&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 Mon Apr 18 06:30:25 2016
@@ -1918,4 +1918,6 @@
 	<entry key="dashboard.widget.admin.cleanup.cleanup">Cleanup</entry>
 	<entry key="dashboard.widget.admin.cleanup.warn">Are you sure you want to delete all temporary files? This operation cannot be undone.</entry>
 	<entry key="dashboard.widget.admin.cleanup.error">Unexpected error while performing cleanup</entry>
+	<entry key="room.action.request.right.moderator">would like to be moderator of this room.</entry>
+	<entry key="admin.room.hidden.elements">Hidden room elements</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=1739696&r1=1739695&r2=1739696&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 Mon Apr 18 06:30:25 2016
@@ -1908,4 +1908,6 @@
 	<entry key="dashboard.widget.admin.cleanup.cleanup">Cleanup</entry>
 	<entry key="dashboard.widget.admin.cleanup.warn">Are you sure you want to delete all temporary files? This operation cannot be undone.</entry>
 	<entry key="dashboard.widget.admin.cleanup.error">Unexpected error while performing cleanup</entry>
+	<entry key="room.action.request.right.moderator">would like to be moderator of this room.</entry>
+	<entry key="admin.room.hidden.elements">Hidden room elements</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=1739696&r1=1739695&r2=1739696&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 Mon Apr 18 06:30:25 2016
@@ -1902,4 +1902,6 @@
 	<entry key="dashboard.widget.admin.cleanup.cleanup">Cleanup</entry>
 	<entry key="dashboard.widget.admin.cleanup.warn">Are you sure you want to delete all temporary files? This operation cannot be undone.</entry>
 	<entry key="dashboard.widget.admin.cleanup.error">Unexpected error while performing cleanup</entry>
+	<entry key="room.action.request.right.moderator">would like to be moderator of this room.</entry>
+	<entry key="admin.room.hidden.elements">Hidden room elements</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=1739696&r1=1739695&r2=1739696&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 Mon Apr 18 06:30:25 2016
@@ -1908,4 +1908,6 @@
 	<entry key="dashboard.widget.admin.cleanup.cleanup">Cleanup</entry>
 	<entry key="dashboard.widget.admin.cleanup.warn">Are you sure you want to delete all temporary files? This operation cannot be undone.</entry>
 	<entry key="dashboard.widget.admin.cleanup.error">Unexpected error while performing cleanup</entry>
+	<entry key="room.action.request.right.moderator">would like to be moderator of this room.</entry>
+	<entry key="admin.room.hidden.elements">Hidden room elements</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=1739696&r1=1739695&r2=1739696&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 Mon Apr 18 06:30:25 2016
@@ -1908,4 +1908,6 @@
 	<entry key="dashboard.widget.admin.cleanup.cleanup">Cleanup</entry>
 	<entry key="dashboard.widget.admin.cleanup.warn">Are you sure you want to delete all temporary files? This operation cannot be undone.</entry>
 	<entry key="dashboard.widget.admin.cleanup.error">Unexpected error while performing cleanup</entry>
+	<entry key="room.action.request.right.moderator">would like to be moderator of this room.</entry>
+	<entry key="admin.room.hidden.elements">Hidden room elements</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=1739696&r1=1739695&r2=1739696&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 Mon Apr 18 06:30:25 2016
@@ -1874,4 +1874,6 @@
 	<entry key="dashboard.widget.admin.cleanup.cleanup">Cleanup</entry>
 	<entry key="dashboard.widget.admin.cleanup.warn">Are you sure you want to delete all temporary files? This operation cannot be undone.</entry>
 	<entry key="dashboard.widget.admin.cleanup.error">Unexpected error while performing cleanup</entry>
+	<entry key="room.action.request.right.moderator">would like to be moderator of this room.</entry>
+	<entry key="admin.room.hidden.elements">Hidden room elements</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=1739696&r1=1739695&r2=1739696&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 Mon Apr 18 06:30:25 2016
@@ -1908,4 +1908,6 @@
 	<entry key="dashboard.widget.admin.cleanup.cleanup">Cleanup</entry>
 	<entry key="dashboard.widget.admin.cleanup.warn">Are you sure you want to delete all temporary files? This operation cannot be undone.</entry>
 	<entry key="dashboard.widget.admin.cleanup.error">Unexpected error while performing cleanup</entry>
+	<entry key="room.action.request.right.moderator">would like to be moderator of this room.</entry>
+	<entry key="admin.room.hidden.elements">Hidden room elements</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=1739696&r1=1739695&r2=1739696&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 Mon Apr 18 06:30:25 2016
@@ -1896,4 +1896,6 @@
 	<entry key="dashboard.widget.admin.cleanup.cleanup">Cleanup</entry>
 	<entry key="dashboard.widget.admin.cleanup.warn">Are you sure you want to delete all temporary files? This operation cannot be undone.</entry>
 	<entry key="dashboard.widget.admin.cleanup.error">Unexpected error while performing cleanup</entry>
+	<entry key="room.action.request.right.moderator">would like to be moderator of this room.</entry>
+	<entry key="admin.room.hidden.elements">Hidden room elements</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=1739696&r1=1739695&r2=1739696&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 Mon Apr 18 06:30:25 2016
@@ -1908,4 +1908,6 @@
 	<entry key="dashboard.widget.admin.cleanup.cleanup">Cleanup</entry>
 	<entry key="dashboard.widget.admin.cleanup.warn">Are you sure you want to delete all temporary files? This operation cannot be undone.</entry>
 	<entry key="dashboard.widget.admin.cleanup.error">Unexpected error while performing cleanup</entry>
+	<entry key="room.action.request.right.moderator">would like to be moderator of this room.</entry>
+	<entry key="admin.room.hidden.elements">Hidden room elements</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=1739696&r1=1739695&r2=1739696&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 Mon Apr 18 06:30:25 2016
@@ -1908,4 +1908,6 @@
 	<entry key="dashboard.widget.admin.cleanup.cleanup">Cleanup</entry>
 	<entry key="dashboard.widget.admin.cleanup.warn">Are you sure you want to delete all temporary files? This operation cannot be undone.</entry>
 	<entry key="dashboard.widget.admin.cleanup.error">Unexpected error while performing cleanup</entry>
+	<entry key="room.action.request.right.moderator">would like to be moderator of this room.</entry>
+	<entry key="admin.room.hidden.elements">Hidden room elements</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=1739696&r1=1739695&r2=1739696&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 Mon Apr 18 06:30:25 2016
@@ -1908,4 +1908,6 @@
 	<entry key="dashboard.widget.admin.cleanup.cleanup">Cleanup</entry>
 	<entry key="dashboard.widget.admin.cleanup.warn">Are you sure you want to delete all temporary files? This operation cannot be undone.</entry>
 	<entry key="dashboard.widget.admin.cleanup.error">Unexpected error while performing cleanup</entry>
+	<entry key="room.action.request.right.moderator">would like to be moderator of this room.</entry>
+	<entry key="admin.room.hidden.elements">Hidden room elements</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=1739696&r1=1739695&r2=1739696&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 Mon Apr 18 06:30:25 2016
@@ -1910,4 +1910,6 @@
 	<entry key="dashboard.widget.admin.cleanup.cleanup">Cleanup</entry>
 	<entry key="dashboard.widget.admin.cleanup.warn">Are you sure you want to delete all temporary files? This operation cannot be undone.</entry>
 	<entry key="dashboard.widget.admin.cleanup.error">Unexpected error while performing cleanup</entry>
+	<entry key="room.action.request.right.moderator">would like to be moderator of this room.</entry>
+	<entry key="admin.room.hidden.elements">Hidden room elements</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=1739696&r1=1739695&r2=1739696&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 Mon Apr 18 06:30:25 2016
@@ -1908,4 +1908,6 @@
 	<entry key="dashboard.widget.admin.cleanup.cleanup">Cleanup</entry>
 	<entry key="dashboard.widget.admin.cleanup.warn">Are you sure you want to delete all temporary files? This operation cannot be undone.</entry>
 	<entry key="dashboard.widget.admin.cleanup.error">Unexpected error while performing cleanup</entry>
+	<entry key="room.action.request.right.moderator">would like to be moderator of this room.</entry>
+	<entry key="admin.room.hidden.elements">Hidden room elements</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=1739696&r1=1739695&r2=1739696&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 Mon Apr 18 06:30:25 2016
@@ -1908,4 +1908,6 @@
 	<entry key="dashboard.widget.admin.cleanup.cleanup">Cleanup</entry>
 	<entry key="dashboard.widget.admin.cleanup.warn">Are you sure you want to delete all temporary files? This operation cannot be undone.</entry>
 	<entry key="dashboard.widget.admin.cleanup.error">Unexpected error while performing cleanup</entry>
+	<entry key="room.action.request.right.moderator">would like to be moderator of this room.</entry>
+	<entry key="admin.room.hidden.elements">Hidden room elements</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=1739696&r1=1739695&r2=1739696&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 Mon Apr 18 06:30:25 2016
@@ -1908,4 +1908,6 @@
 	<entry key="dashboard.widget.admin.cleanup.cleanup">Cleanup</entry>
 	<entry key="dashboard.widget.admin.cleanup.warn">Are you sure you want to delete all temporary files? This operation cannot be undone.</entry>
 	<entry key="dashboard.widget.admin.cleanup.error">Unexpected error while performing cleanup</entry>
+	<entry key="room.action.request.right.moderator">would like to be moderator of this room.</entry>
+	<entry key="admin.room.hidden.elements">Hidden room elements</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=1739696&r1=1739695&r2=1739696&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 Mon Apr 18 06:30:25 2016
@@ -1908,4 +1908,6 @@
 	<entry key="dashboard.widget.admin.cleanup.cleanup">Cleanup</entry>
 	<entry key="dashboard.widget.admin.cleanup.warn">Are you sure you want to delete all temporary files? This operation cannot be undone.</entry>
 	<entry key="dashboard.widget.admin.cleanup.error">Unexpected error while performing cleanup</entry>
+	<entry key="room.action.request.right.moderator">would like to be moderator of this room.</entry>
+	<entry key="admin.room.hidden.elements">Hidden room elements</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=1739696&r1=1739695&r2=1739696&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 Mon Apr 18 06:30:25 2016
@@ -1914,4 +1914,6 @@
 	<entry key="dashboard.widget.admin.cleanup.cleanup">Очистить</entry>
 	<entry key="dashboard.widget.admin.cleanup.warn">Вы уверены что хотите удалить все временные файлы? Эту операцию нельзя будет отменить.</entry>
 	<entry key="dashboard.widget.admin.cleanup.error">Неизвестная ошибка при попытке очистить</entry>
+	<entry key="room.action.request.right.moderator">хочет быть модератором в этой комнате.</entry>
+	<entry key="admin.room.hidden.elements">Скрытые элементы комнаты</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=1739696&r1=1739695&r2=1739696&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 Mon Apr 18 06:30:25 2016
@@ -1908,4 +1908,6 @@
 	<entry key="dashboard.widget.admin.cleanup.cleanup">Cleanup</entry>
 	<entry key="dashboard.widget.admin.cleanup.warn">Are you sure you want to delete all temporary files? This operation cannot be undone.</entry>
 	<entry key="dashboard.widget.admin.cleanup.error">Unexpected error while performing cleanup</entry>
+	<entry key="room.action.request.right.moderator">would like to be moderator of this room.</entry>
+	<entry key="admin.room.hidden.elements">Hidden room elements</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=1739696&r1=1739695&r2=1739696&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 Mon Apr 18 06:30:25 2016
@@ -1908,4 +1908,6 @@
 	<entry key="dashboard.widget.admin.cleanup.cleanup">Cleanup</entry>
 	<entry key="dashboard.widget.admin.cleanup.warn">Are you sure you want to delete all temporary files? This operation cannot be undone.</entry>
 	<entry key="dashboard.widget.admin.cleanup.error">Unexpected error while performing cleanup</entry>
+	<entry key="room.action.request.right.moderator">would like to be moderator of this room.</entry>
+	<entry key="admin.room.hidden.elements">Hidden room elements</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=1739696&r1=1739695&r2=1739696&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 Mon Apr 18 06:30:25 2016
@@ -1908,4 +1908,6 @@
 	<entry key="dashboard.widget.admin.cleanup.cleanup">Cleanup</entry>
 	<entry key="dashboard.widget.admin.cleanup.warn">Are you sure you want to delete all temporary files? This operation cannot be undone.</entry>
 	<entry key="dashboard.widget.admin.cleanup.error">Unexpected error while performing cleanup</entry>
+	<entry key="room.action.request.right.moderator">would like to be moderator of this room.</entry>
+	<entry key="admin.room.hidden.elements">Hidden room elements</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=1739696&r1=1739695&r2=1739696&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 Mon Apr 18 06:30:25 2016
@@ -1908,4 +1908,6 @@
 	<entry key="dashboard.widget.admin.cleanup.cleanup">Cleanup</entry>
 	<entry key="dashboard.widget.admin.cleanup.warn">Are you sure you want to delete all temporary files? This operation cannot be undone.</entry>
 	<entry key="dashboard.widget.admin.cleanup.error">Unexpected error while performing cleanup</entry>
+	<entry key="room.action.request.right.moderator">would like to be moderator of this room.</entry>
+	<entry key="admin.room.hidden.elements">Hidden room elements</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=1739696&r1=1739695&r2=1739696&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 Mon Apr 18 06:30:25 2016
@@ -1908,4 +1908,6 @@
 	<entry key="dashboard.widget.admin.cleanup.cleanup">Cleanup</entry>
 	<entry key="dashboard.widget.admin.cleanup.warn">Are you sure you want to delete all temporary files? This operation cannot be undone.</entry>
 	<entry key="dashboard.widget.admin.cleanup.error">Unexpected error while performing cleanup</entry>
+	<entry key="room.action.request.right.moderator">would like to be moderator of this room.</entry>
+	<entry key="admin.room.hidden.elements">Hidden room elements</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=1739696&r1=1739695&r2=1739696&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 Mon Apr 18 06:30:25 2016
@@ -1878,4 +1878,6 @@
 	<entry key="dashboard.widget.admin.cleanup.cleanup">Cleanup</entry>
 	<entry key="dashboard.widget.admin.cleanup.warn">Are you sure you want to delete all temporary files? This operation cannot be undone.</entry>
 	<entry key="dashboard.widget.admin.cleanup.error">Unexpected error while performing cleanup</entry>
+	<entry key="room.action.request.right.moderator">would like to be moderator of this room.</entry>
+	<entry key="admin.room.hidden.elements">Hidden room elements</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=1739696&r1=1739695&r2=1739696&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 Mon Apr 18 06:30:25 2016
@@ -1908,4 +1908,6 @@
 	<entry key="dashboard.widget.admin.cleanup.cleanup">Cleanup</entry>
 	<entry key="dashboard.widget.admin.cleanup.warn">Are you sure you want to delete all temporary files? This operation cannot be undone.</entry>
 	<entry key="dashboard.widget.admin.cleanup.error">Unexpected error while performing cleanup</entry>
+	<entry key="room.action.request.right.moderator">would like to be moderator of this room.</entry>
+	<entry key="admin.room.hidden.elements">Hidden room elements</entry>
 </properties>

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=1739696&r1=1739695&r2=1739696&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 Mon Apr 18 06:30:25 2016
@@ -117,11 +117,11 @@ public class RoomPanel extends BasePanel
 		getClient().setRoomId(r.getId());
 		super.onInitialize();
 		Component accessDenied = new WebMarkupContainer(ACCESS_DENIED_ID).setVisible(false);
-		room.add((menu = new RoomMenuPanel("menu", this)).setVisible(!r.getHiddenElements().contains(RoomElement.TopBar)));
+		room.add(menu = new RoomMenuPanel("menu", this));
 		room.add(new SwfPanel("whiteboard", getClient()));
 		room.add(aab);
 		room.add(sidebar = new RoomSidebar("sidebar", this));
-		room.add((activities = new ActivitiesPanel("activities", this)).setVisible(!r.getHiddenElements().contains(RoomElement.Activities)));
+		room.add(activities = new ActivitiesPanel("activities", this));
 		add(roomClosed = new RedirectMessageDialog("room-closed", "1098", r.isClosed(), r.getRedirectURL()));
 		if (r.isClosed()) {
 			room.setVisible(false);
@@ -183,7 +183,7 @@ public class RoomPanel extends BasePanel
 		}
 		add(room, accessDenied);
 		if (r.isWaitForRecording()) {
-			add(new MessageDialog("wait-for-recording", getString("1316"), getString("1315"), DialogButtons.OK, DialogIcon.INFO) {//DialogIcon.LIGHT
+			add(new MessageDialog("wait-for-recording", getString("1316"), getString("1315"), DialogButtons.OK, DialogIcon.LIGHT) {
 				private static final long serialVersionUID = 1L;
 	
 				@Override
@@ -319,7 +319,7 @@ public class RoomPanel extends BasePanel
 	@Override
 	public void onMenuPanelLoad(IPartialPageRequestHandler handler) {
 		handler.add(getMainPage().getHeader().setVisible(false), getMainPage().getTopControls().setVisible(false));
-		if (r.getHiddenElements().contains(RoomElement.Chat)) {
+		if (r.isHidden(RoomElement.Chat)) {
 			getMainPage().getChat().toggle(handler, false);
 		}
 		handler.appendJavaScript("roomLoad();");
@@ -328,7 +328,7 @@ public class RoomPanel extends BasePanel
 	@Override
 	public void cleanup(IPartialPageRequestHandler handler) {
 		handler.add(getMainPage().getHeader().setVisible(true), getMainPage().getTopControls().setVisible(true));
-		if (r.getHiddenElements().contains(RoomElement.Chat)) {
+		if (r.isHidden(RoomElement.Chat)) {
 			getMainPage().getChat().toggle(handler, true);
 		}
 		handler.appendJavaScript("$(window).off('resize.openmeetings');");

Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/ActivitiesPanel.java
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/ActivitiesPanel.java?rev=1739696&r1=1739695&r2=1739696&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/ActivitiesPanel.java (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/ActivitiesPanel.java Mon Apr 18 06:30:25 2016
@@ -34,6 +34,7 @@ import java.util.LinkedHashMap;
 import java.util.Map;
 
 import org.apache.openmeetings.db.dao.user.UserDao;
+import org.apache.openmeetings.db.entity.room.Room.RoomElement;
 import org.apache.openmeetings.db.entity.user.User;
 import org.apache.openmeetings.util.message.RoomMessage;
 import org.apache.openmeetings.util.message.TextRoomMessage;
@@ -200,6 +201,7 @@ public class ActivitiesPanel extends Bas
 	public ActivitiesPanel(String id, RoomPanel room) {
 		super(id);
 		this.room = room;
+		setVisible(!room.getRoom().isHidden(RoomElement.Activities));
 		setOutputMarkupPlaceholderTag(true);
 		setMarkupId(id);
 		add(container.add(lv).setOutputMarkupId(true));
@@ -210,6 +212,6 @@ public class ActivitiesPanel extends Bas
 	public void renderHead(IHeaderResponse response) {
 		super.renderHead(response);
 		response.render(new PriorityHeaderItem(JavaScriptHeaderItem.forReference(new JavaScriptResourceReference(ActivitiesPanel.class, "activities.js"))));
-		response.render(CssHeaderItem.forUrl("css/activities.css"));
+		response.render(CssHeaderItem.forUrl("css/activities.css", "screen"));
 	}
 }

Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java?rev=1739696&r1=1739695&r2=1739696&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java Mon Apr 18 06:30:25 2016
@@ -143,7 +143,8 @@ public class RoomMenuPanel extends Panel
 		setOutputMarkupPlaceholderTag(true);
 		this.room = room;
 		Room r = room.getRoom();
-		add((menuPanel = new MenuPanel("menu", getMenu())).setVisible(!r.getHiddenElements().contains(RoomElement.TopBar)));
+		setVisible(!r.isHidden(RoomElement.TopBar));
+		add((menuPanel = new MenuPanel("menu", getMenu())).setVisible(isVisible()));
 		add(askBtn);
 		add(new Label("roomName", r.getName()));
 		add(new Label("recording", "Recording started").setVisible(false)); //FIXME add/remove
@@ -214,11 +215,11 @@ public class RoomMenuPanel extends Panel
 		boolean notExternalUser = u.getType() != User.Type.external && u.getType() != User.Type.contact;
 		exitMenuItem.setEnabled(notExternalUser);//TODO check this
 		filesMenu.setEnabled(room.getSidebar().isShowFiles());
-		actionsMenu.setEnabled(!r.getHiddenElements().contains(RoomElement.ActionsMenu) && r.isAllowUserQuestions());
+		actionsMenu.setEnabled(!r.isHidden(RoomElement.ActionMenu) && r.isAllowUserQuestions());
 		boolean moder = room.getClient().hasRight(Client.Right.moderator);
 		inviteMenuItem.setEnabled(notExternalUser && moder);
 		//TODO add check "sharing started"
-		boolean shareVisible = Room.Type.interview != r.getType() && !r.getHiddenElements().contains(RoomElement.ScreenSharing) && r.isAllowRecording() && moder;
+		boolean shareVisible = Room.Type.interview != r.getType() && !r.isHidden(RoomElement.ScreenSharing) && r.isAllowRecording() && moder;
 		shareMenuItem.setEnabled(shareVisible);
 		//FIXME TODO apply* should be enabled if moder is in room
 		applyModerMenuItem.setEnabled(!moder);

Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.java
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.java?rev=1739696&r1=1739695&r2=1739696&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.java (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.java Mon Apr 18 06:30:25 2016
@@ -72,7 +72,7 @@ public class RoomSidebar extends Panel {
 			item.add(status);
 			item.add(new Label("name", rc.u.getFirstname() + " " + rc.u.getLastname()));
 			item.add(AttributeAppender.append("data-userid", rc.u.getId()));
-			item.add(new WebMarkupContainer("privateChat").setVisible(!room.getRoom().getHiddenElements().contains(RoomElement.Chat) && !getUserId().equals(rc.u.getId())));
+			item.add(new WebMarkupContainer("privateChat").setVisible(!room.getRoom().isHidden(RoomElement.Chat) && !getUserId().equals(rc.u.getId())));
 			if (room.getClient() != null && rc.c.getUid().equals(room.getClient().getUid())) {
 				item.add(AttributeAppender.append("class", "current"));
 			}
@@ -161,7 +161,7 @@ public class RoomSidebar extends Panel {
 	}
 	
 	private void updateShowFiles() {
-		showFiles = !room.getRoom().getHiddenElements().contains(RoomElement.Files) && room.getClient().hasRight(Right.whiteBoard);
+		showFiles = !room.getRoom().isHidden(RoomElement.Files) && room.getClient().hasRight(Right.whiteBoard);
 	}
 	
 	public void updateUsers(IPartialPageRequestHandler handler) {

Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/ChatPanel.java
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/ChatPanel.java?rev=1739696&r1=1739695&r2=1739696&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/ChatPanel.java (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/ChatPanel.java Mon Apr 18 06:30:25 2016
@@ -190,7 +190,7 @@ public class ChatPanel extends BasePanel
 	}
 
 	public void roomEnter(Room r, AjaxRequestTarget target) {
-		if (r.getHiddenElements().contains(RoomElement.Chat)) {
+		if (r.isHidden(RoomElement.Chat)) {
 			toggle(target, false);
 			return;
 		}
@@ -207,7 +207,7 @@ public class ChatPanel extends BasePanel
 	}
 	
 	public void roomExit(Room r, IPartialPageRequestHandler handler) {
-		if (r.getHiddenElements().contains(RoomElement.Chat)) {
+		if (r.isHidden(RoomElement.Chat)) {
 			return;
 		}
 		handler.appendJavaScript(String.format("removeChatTab('%1$s%2$d');", ID_ROOM_PREFIX, r.getId()));

Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/webapp/css/activities.css
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/webapp/css/activities.css?rev=1739696&r1=1739695&r2=1739696&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/webapp/css/activities.css (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/webapp/css/activities.css Mon Apr 18 06:30:25 2016
@@ -16,7 +16,7 @@
  * specific language governing permissions and limitations
  * under the License.
  */
-#activitiesPanel {
+#activities {
 	position: fixed;
 	z-index: 2000;
 	bottom: 0px;
@@ -24,14 +24,14 @@
 	width: 600px;
 	height: 20px;
 }
-#activitiesPanel .control.block .ui-icon {
+#activities .control.block .ui-icon {
 	text-align: center;
 }
-#activitiesPanel .control.block .label {
+#activities .control.block .label {
 	display: inline-block;
 	padding-left: 20px;
 }
-#activitiesPanel .area {
+#activities .area {
 	height: 319px;
 	overflow-y: auto;
 }

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=1739696&r1=1739695&r2=1739696&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 Mon Apr 18 06:30:25 2016
@@ -1149,7 +1149,7 @@ public class ScopeApplicationAdapter ext
 			sessionManager.updateClientByStreamId(streamid, currentClient, true, null);
 
 			Room room = roomDao.get(roomId);
-			if (!room.getHiddenElements().contains(RoomElement.MicrophoneStatus)) {
+			if (!room.isHidden(RoomElement.MicrophoneStatus)) {
 				currentClient.setCanGiveAudio(true);
 			}
 

Modified: openmeetings/application/trunk/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/Room.java
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/Room.java?rev=1739696&r1=1739695&r2=1739696&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/Room.java (original)
+++ openmeetings/application/trunk/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/Room.java Mon Apr 18 06:30:25 2016
@@ -100,7 +100,7 @@ public class Room implements IDataProvid
 		, Chat
 		, Activities
 		, Files
-		, ActionsMenu
+		, ActionMenu
 		, ScreenSharing
 		, Whiteboard
 		, MicrophoneStatus
@@ -505,6 +505,17 @@ public class Room implements IDataProvid
 		this.hiddenElements = hiddenElements;
 	}
 
+	public boolean isHidden(RoomElement e) {
+		return hiddenElements != null && hiddenElements.contains(e);
+	}
+	
+	public boolean hide(RoomElement e) {
+		if (hiddenElements == null) {
+			hiddenElements = new HashSet<>();
+		}
+		return hiddenElements.add(e);
+	}
+
 	public List<RoomGroup> getRoomGroups() {
 		return roomGroups;
 	}

Modified: openmeetings/application/trunk/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupImport.java
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupImport.java?rev=1739696&r1=1739695&r2=1739696&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupImport.java (original)
+++ openmeetings/application/trunk/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupImport.java Mon Apr 18 06:30:25 2016
@@ -83,6 +83,7 @@ import org.apache.openmeetings.db.entity
 import org.apache.openmeetings.db.entity.record.Recording;
 import org.apache.openmeetings.db.entity.record.RecordingMetaData;
 import org.apache.openmeetings.db.entity.room.Room;
+import org.apache.openmeetings.db.entity.room.Room.RoomElement;
 import org.apache.openmeetings.db.entity.room.RoomGroup;
 import org.apache.openmeetings.db.entity.room.RoomModerator;
 import org.apache.openmeetings.db.entity.room.RoomPoll;
@@ -360,17 +361,7 @@ public class BackupImport {
 		 * ##################### Import Rooms
 		 */
 		{
-			Registry registry = new Registry();
-			Strategy strategy = new RegistryStrategy(registry);
-			RegistryMatcher matcher = new RegistryMatcher(); //TODO need to be removed in the later versions
-			Serializer serializer = new Persister(strategy, matcher);
-
-			matcher.bind(Long.class, LongTransform.class);
-			matcher.bind(Integer.class, IntegerTransform.class);
-			registry.bind(User.class, new UserConverter(userDao, usersMap));
-			registry.bind(Room.Type.class, RoomTypeConverter.class);
-			
-			List<Room> list = readList(serializer, f, "rooms.xml", "rooms", Room.class);
+			List<Room> list = readRoomList(f, "rooms.xml", "rooms");
 			for (Room r : list) {
 				Long roomId = r.getId();
 
@@ -674,7 +665,7 @@ public class BackupImport {
 	}
 	
 	private static <T> List<T> readList(Serializer ser, File baseDir, String fileName, String listNodeName, Class<T> clazz, boolean notThow) throws Exception {
-		List<T> list = new ArrayList<T>();
+		List<T> list = new ArrayList<>();
 		File xml = new File(baseDir, fileName);
 		if (!xml.exists()) {
 			final String msg = fileName + " missing";
@@ -711,8 +702,9 @@ public class BackupImport {
 		return null;
 	}
 	
+	//FIXME (need to be removed in later versions) HACK to fix old properties
 	public List<FileExplorerItem> readFileExplorerItemList(File baseDir, String fileName, String listNodeName) throws Exception {
-		List<FileExplorerItem> list = new ArrayList<FileExplorerItem>();
+		List<FileExplorerItem> list = new ArrayList<>();
 		File xml = new File(baseDir, fileName);
 		if (xml.exists()) {
 			Registry registry = new Registry();
@@ -790,8 +782,9 @@ public class BackupImport {
 		return list;
 	}
 	
+	//FIXME (need to be removed in later versions) HACK to fix old properties
 	public List<Recording> readRecordingList(File baseDir, String fileName, String listNodeName) throws Exception {
-		List<Recording> list = new ArrayList<Recording>();
+		List<Recording> list = new ArrayList<>();
 		File xml = new File(baseDir, fileName);
 		if (xml.exists()) {
 			Registry registry = new Registry();
@@ -865,9 +858,9 @@ public class BackupImport {
 		
 		StringWriter sw = new StringWriter();
 		Transformer xformer = TransformerFactory.newInstance().newTransformer();
-        xformer.transform(new DOMSource(doc), new StreamResult(sw));
-        
-		List<MeetingMember> list = new ArrayList<MeetingMember>();
+		xformer.transform(new DOMSource(doc), new StreamResult(sw));
+
+		List<MeetingMember> list = new ArrayList<>();
 		InputNode root = NodeBuilder.read(new StringReader(sw.toString()));
 		InputNode root1 = NodeBuilder.read(new StringReader(sw.toString())); //HACK to handle external attendee's firstname, lastname, email
 		InputNode listNode = root.getNext();
@@ -967,7 +960,7 @@ public class BackupImport {
 		Transformer xformer = TransformerFactory.newInstance().newTransformer();
 		xformer.transform(new DOMSource(doc), new StreamResult(sw));
 
-		List<User> list = new ArrayList<User>();
+		List<User> list = new ArrayList<>();
 		InputNode root = NodeBuilder.read(new StringReader(sw.toString()));
 		InputNode root1 = NodeBuilder.read(new StringReader(sw.toString())); //HACK to handle Address inside user
 		InputNode root2 = NodeBuilder.read(new StringReader(sw.toString())); //HACK to handle old om_time_zone, level_id, status
@@ -1048,6 +1041,72 @@ public class BackupImport {
 			}
 		}
 		return list;
+	}
+	
+	//FIXME (need to be removed in later versions) HACK to fix old properties
+	private List<Room> readRoomList(File baseDir, String fileName, String listNodeName) throws Exception {
+		List<Room> list = new ArrayList<>();
+		File xml = new File(baseDir, fileName);
+		if (xml.exists()) {
+			Registry registry = new Registry();
+			Strategy strategy = new RegistryStrategy(registry);
+			RegistryMatcher matcher = new RegistryMatcher(); //TODO need to be removed in the later versions
+			Serializer ser = new Persister(strategy, matcher);
+
+			matcher.bind(Long.class, LongTransform.class);
+			matcher.bind(Integer.class, IntegerTransform.class);
+			registry.bind(User.class, new UserConverter(userDao, usersMap));
+			registry.bind(Room.Type.class, RoomTypeConverter.class);
+			
+			InputNode root = NodeBuilder.read(new FileInputStream(xml));
+			InputNode root1 = NodeBuilder.read(new FileInputStream(xml)); //HACK to handle old hideTopBar, hideChat, hideActivitiesAndActions, hideFilesExplorer, hideActionsMenu, hideScreenSharing, hideWhiteboard, showMicrophoneStatus
+			InputNode listNode = root.getNext();
+			InputNode listNode1 = root1.getNext(); //HACK to handle old hideTopBar, hideChat, hideActivitiesAndActions, hideFilesExplorer, hideActionsMenu, hideScreenSharing, hideWhiteboard, showMicrophoneStatus
+			if (listNodeName.equals(listNode.getName())) {
+				InputNode item = listNode.getNext();
+				InputNode item1 = listNode1.getNext(); //HACK to handle old hideTopBar, hideChat, hideActivitiesAndActions, hideFilesExplorer, hideActionsMenu, hideScreenSharing, hideWhiteboard, showMicrophoneStatus
+				while (item != null) {
+					Room r = ser.read(Room.class, item, false);
+					
+					Boolean showMicrophoneStatus = null;
+					//HACK to handle old hideTopBar, hideChat, hideActivitiesAndActions, hideFilesExplorer, hideActionsMenu, hideScreenSharing, hideWhiteboard, showMicrophoneStatus
+					do {
+						if ("hideTopBar".equals(item1.getName()) && "true".equals(item1.getValue())) {
+							r.hide(RoomElement.TopBar);
+						}
+						if ("hideChat".equals(item1.getName()) && "true".equals(item1.getValue())) {
+							r.hide(RoomElement.Chat);
+						}
+						if ("hideActivitiesAndActions".equals(item1.getName()) && "true".equals(item1.getValue())) {
+							r.hide(RoomElement.Activities);
+						}
+						if ("hideFilesExplorer".equals(item1.getName()) && "true".equals(item1.getValue())) {
+							r.hide(RoomElement.Files);
+						}
+						if ("hideActionsMenu".equals(item1.getName()) && "true".equals(item1.getValue())) {
+							r.hide(RoomElement.ActionMenu);
+						}
+						if ("hideScreenSharing".equals(item1.getName()) && "true".equals(item1.getValue())) {
+							r.hide(RoomElement.ScreenSharing);
+						}
+						if ("hideWhiteboard".equals(item1.getName()) && "true".equals(item1.getValue())) {
+							r.hide(RoomElement.Whiteboard);
+						}
+						if ("showMicrophoneStatus".equals(item1.getName())) {
+							showMicrophoneStatus = Boolean.valueOf(item1.getValue());
+						}
+						item1 = listNode1.getNext(); //HACK to handle Address inside user
+					} while (item1 != null && !"room".equals(item1.getName()));
+					
+					if (Boolean.FALSE.equals(showMicrophoneStatus)) {
+						r.hide(RoomElement.MicrophoneStatus);
+					}
+					list.add(r);
+					item = listNode.getNext();
+				}
+			}
+		}
+		return list;
 	}
 	
 	private static Long getProfileId(File f) {

Modified: openmeetings/application/trunk/openmeetings-install/src/main/java/org/apache/openmeetings/installation/ImportInitvalues.java
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-install/src/main/java/org/apache/openmeetings/installation/ImportInitvalues.java?rev=1739696&r1=1739695&r2=1739696&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-install/src/main/java/org/apache/openmeetings/installation/ImportInitvalues.java (original)
+++ openmeetings/application/trunk/openmeetings-install/src/main/java/org/apache/openmeetings/installation/ImportInitvalues.java Mon Apr 18 06:30:25 2016
@@ -51,9 +51,7 @@ import static org.apache.openmeetings.ut
 import static org.apache.openmeetings.util.OpenmeetingsVariables.webAppRootKey;
 
 import java.io.File;
-import java.util.Arrays;
 import java.util.Date;
-import java.util.HashSet;
 import java.util.Iterator;
 
 import org.apache.openmeetings.db.dao.basic.ConfigurationDao;
@@ -367,7 +365,7 @@ public class ImportInitvalues {
 		r.setDemoRoom(false);
 		r.setDemoTime(null);
 
-		r.setHiddenElements(new HashSet<>(Arrays.asList(RoomElement.MicrophoneStatus)));
+		r.hide(RoomElement.MicrophoneStatus);
 		r.setModerated(false);
 
 		r.setDeleted(false);
@@ -395,7 +393,7 @@ public class ImportInitvalues {
 			createRoom("public Interview Room", Type.interview, 16L, true, null);
 			createRoom("public Conference Room", Type.conference, 32L, true, null);
 			Room r = createRoom("public Video Only Room", Type.conference, 32L, true, null);
-			r.setHiddenElements(new HashSet<>(Arrays.asList(RoomElement.Whiteboard)));
+			r.hide(RoomElement.Whiteboard);
 			roomDao.update(r, null);
 			createRoom("public Video And Whiteboard Room", Type.conference, 32L, true, null);
 			createRoom("public Restricted Room", Type.restricted, 100L, true, null);

Modified: openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ar.properties.xml
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ar.properties.xml?rev=1739696&r1=1739695&r2=1739696&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ar.properties.xml (original)
+++ openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ar.properties.xml Mon Apr 18 06:30:25 2016
@@ -1908,4 +1908,6 @@
 	<entry key="dashboard.widget.admin.cleanup.cleanup">Cleanup</entry>
 	<entry key="dashboard.widget.admin.cleanup.warn">Are you sure you want to delete all temporary files? This operation cannot be undone.</entry>
 	<entry key="dashboard.widget.admin.cleanup.error">Unexpected error while performing cleanup</entry>
+	<entry key="room.action.request.right.moderator">would like to be moderator of this room.</entry>
+	<entry key="admin.room.hidden.elements">Hidden room elements</entry>
 </properties>

Modified: openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_bg.properties.xml
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_bg.properties.xml?rev=1739696&r1=1739695&r2=1739696&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_bg.properties.xml (original)
+++ openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_bg.properties.xml Mon Apr 18 06:30:25 2016
@@ -1908,4 +1908,6 @@
 	<entry key="dashboard.widget.admin.cleanup.cleanup">Cleanup</entry>
 	<entry key="dashboard.widget.admin.cleanup.warn">Are you sure you want to delete all temporary files? This operation cannot be undone.</entry>
 	<entry key="dashboard.widget.admin.cleanup.error">Unexpected error while performing cleanup</entry>
+	<entry key="room.action.request.right.moderator">would like to be moderator of this room.</entry>
+	<entry key="admin.room.hidden.elements">Hidden room elements</entry>
 </properties>

Modified: openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ca.properties.xml
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ca.properties.xml?rev=1739696&r1=1739695&r2=1739696&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ca.properties.xml (original)
+++ openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ca.properties.xml Mon Apr 18 06:30:25 2016
@@ -1908,4 +1908,6 @@
 	<entry key="dashboard.widget.admin.cleanup.cleanup">Cleanup</entry>
 	<entry key="dashboard.widget.admin.cleanup.warn">Are you sure you want to delete all temporary files? This operation cannot be undone.</entry>
 	<entry key="dashboard.widget.admin.cleanup.error">Unexpected error while performing cleanup</entry>
+	<entry key="room.action.request.right.moderator">would like to be moderator of this room.</entry>
+	<entry key="admin.room.hidden.elements">Hidden room elements</entry>
 </properties>

Modified: openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_cs.properties.xml
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_cs.properties.xml?rev=1739696&r1=1739695&r2=1739696&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_cs.properties.xml (original)
+++ openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_cs.properties.xml Mon Apr 18 06:30:25 2016
@@ -1908,4 +1908,6 @@
 	<entry key="dashboard.widget.admin.cleanup.cleanup">Cleanup</entry>
 	<entry key="dashboard.widget.admin.cleanup.warn">Are you sure you want to delete all temporary files? This operation cannot be undone.</entry>
 	<entry key="dashboard.widget.admin.cleanup.error">Unexpected error while performing cleanup</entry>
+	<entry key="room.action.request.right.moderator">would like to be moderator of this room.</entry>
+	<entry key="admin.room.hidden.elements">Hidden room elements</entry>
 </properties>