Repository: openmeetings Updated Branches: refs/heads/3.3.x c6b2a3f65 -> d6f0f022b
[OPENMEETINGS-1008] 'personal.rooms.enabled' config is added Project: http://git-wip-us.apache.org/repos/asf/openmeetings/repo Commit: http://git-wip-us.apache.org/repos/asf/openmeetings/commit/d6f0f022 Tree: http://git-wip-us.apache.org/repos/asf/openmeetings/tree/d6f0f022 Diff: http://git-wip-us.apache.org/repos/asf/openmeetings/diff/d6f0f022 Branch: refs/heads/3.3.x Commit: d6f0f022b1ad198a0206000e9a9ff3ff3f9c448d Parents: c6b2a3f Author: Maxim Solodovnik <[email protected]> Authored: Tue Sep 12 23:20:28 2017 +0700 Committer: Maxim Solodovnik <[email protected]> Committed: Tue Sep 12 23:20:28 2017 +0700 ---------------------------------------------------------------------- .../core/documents/LibraryChartLoader.java | 42 ++-- .../openmeetings/core/remote/MobileService.java | 17 +- .../db/dao/basic/NavigationDao.java | 117 ----------- .../db/dao/user/PrivateMessageDao.java | 50 ++--- .../db/entity/basic/Naviglobal.java | 196 ------------------ .../openmeetings/db/entity/basic/Navimain.java | 201 ------------------- .../openmeetings/db/entity/room/RoomGroup.java | 20 +- .../installation/ImportInitvalues.java | 67 +------ .../openmeetings/screenshare/gui/BlankArea.java | 20 +- .../util/OpenmeetingsVariables.java | 7 +- .../openmeetings/util/geom/GeomPoint.java | 98 ++++----- .../apache/openmeetings/web/app/WebSession.java | 4 +- .../openmeetings/web/common/MainPanel.java | 93 ++++++--- .../web/common/menu/MainMenuItem.java | 13 +- .../openmeetings/web/user/MessageDialog.html | 2 +- .../openmeetings/web/user/MessageDialog.java | 19 +- .../web/user/calendar/AppointmentDialog.html | 2 +- .../web/user/calendar/AppointmentDialog.java | 11 +- .../openmeetings/web/util/OmUrlFragment.java | 3 +- .../classes/META-INF/db2_persistence.xml | 2 - .../classes/META-INF/derby_persistence.xml | 2 - .../classes/META-INF/mssql_persistence.xml | 2 - .../classes/META-INF/mysql_persistence.xml | 2 - .../classes/META-INF/oracle_persistence.xml | 2 - .../classes/META-INF/postgresql_persistence.xml | 2 - .../WEB-INF/classes/applicationContext.xml | 1 - .../apache/openmeetings/test/navi/TestNavi.java | 77 ------- 27 files changed, 232 insertions(+), 840 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/openmeetings/blob/d6f0f022/openmeetings-core/src/main/java/org/apache/openmeetings/core/documents/LibraryChartLoader.java ---------------------------------------------------------------------- diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/documents/LibraryChartLoader.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/documents/LibraryChartLoader.java index 85ba038..d61296e 100644 --- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/documents/LibraryChartLoader.java +++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/documents/LibraryChartLoader.java @@ -37,29 +37,29 @@ import com.thoughtworks.xstream.io.xml.XppDriver; public class LibraryChartLoader { private static final Logger log = Red5LoggerFactory.getLogger(LibraryChartLoader.class, webAppRootKey); - private static final String fileExt = ".xchart"; + private static final String fileExt = ".xchart"; - private static LibraryChartLoader instance; + private static LibraryChartLoader instance; - private LibraryChartLoader() { - } + private LibraryChartLoader() { + } - public static synchronized LibraryChartLoader getInstance() { - if (instance == null) { - instance = new LibraryChartLoader(); - } - return instance; - } + public static synchronized LibraryChartLoader getInstance() { + if (instance == null) { + instance = new LibraryChartLoader(); + } + return instance; + } - @SuppressWarnings("rawtypes") + @SuppressWarnings("rawtypes") public ArrayList loadChart(File dir, String fileName) { - try { - File file = new File(dir, fileName + fileExt); + try { + File file = new File(dir, fileName + fileExt); - log.error("filepathComplete: " + file); + log.error("filepathComplete: " + file); - XStream xStream = new XStream(new XppDriver()); - xStream.setMode(XStream.NO_REFERENCES); + XStream xStream = new XStream(new XppDriver()); + xStream.setMode(XStream.NO_REFERENCES); try (InputStream is = new FileInputStream(file); BufferedReader reader = new BufferedReader(new InputStreamReader(is, UTF_8))) @@ -67,11 +67,11 @@ public class LibraryChartLoader { ArrayList lMapList = (ArrayList) xStream.fromXML(reader); return lMapList; } - } catch (Exception err) { - log.error("Unexpected error while loading chart", err); - } + } catch (Exception err) { + log.error("Unexpected error while loading chart", err); + } - return null; - } + return null; + } } http://git-wip-us.apache.org/repos/asf/openmeetings/blob/d6f0f022/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/MobileService.java ---------------------------------------------------------------------- diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/MobileService.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/MobileService.java index d007887..1e953da 100644 --- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/MobileService.java +++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/MobileService.java @@ -22,6 +22,7 @@ import static org.apache.openmeetings.core.remote.ScopeApplicationAdapter.nextBr import static org.apache.openmeetings.db.util.LocaleHelper.getCountryName; import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_DEFAULT_GROUP_ID; import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_FRONTEND_REGISTER_KEY; +import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_MYROOMS_ENABLED; import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_OAUTH_REGISTER_KEY; import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_SOAP_REGISTER_KEY; import static org.apache.openmeetings.util.OpenmeetingsVariables.webAppRootKey; @@ -298,13 +299,15 @@ public class MobileService { IConnection current = Red5.getConnectionLocal(); StreamClient c = sessionManager.get(IClientUtil.getId(current.getClient())); User u = userDao.get(c.getUserId()); - //my rooms - List<Room> myl = new ArrayList<>(); - myl.add(roomDao.getUserRoom(u.getId(), Room.Type.conference, LabelDao.getString(1306L, u.getLanguageId()))); - myl.add(roomDao.getUserRoom(u.getId(), Room.Type.restricted, LabelDao.getString(1307L, u.getLanguageId()))); - myl.addAll(roomDao.getAppointedRoomsByUser(u.getId())); - for (Room r : myl) { - addRoom("my", null, false, result, r); + if ("true".equals(cfgDao.getConfValue(CONFIG_MYROOMS_ENABLED, String.class, "true"))) { + //my rooms + List<Room> myl = new ArrayList<>(); + myl.add(roomDao.getUserRoom(u.getId(), Room.Type.conference, LabelDao.getString(1306L, u.getLanguageId()))); + myl.add(roomDao.getUserRoom(u.getId(), Room.Type.restricted, LabelDao.getString(1307L, u.getLanguageId()))); + myl.addAll(roomDao.getAppointedRoomsByUser(u.getId())); + for (Room r : myl) { + addRoom("my", null, false, result, r); + } } //private rooms http://git-wip-us.apache.org/repos/asf/openmeetings/blob/d6f0f022/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/basic/NavigationDao.java ---------------------------------------------------------------------- diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/basic/NavigationDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/basic/NavigationDao.java deleted file mode 100644 index c496fe5..0000000 --- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/basic/NavigationDao.java +++ /dev/null @@ -1,117 +0,0 @@ -/* - * 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.db.dao.basic; - -import static org.apache.openmeetings.util.OpenmeetingsVariables.webAppRootKey; -import static org.apache.openmeetings.util.OpenmeetingsVariables.LEVEL_GROUP_ADMIN; - -import java.util.ArrayList; -import java.util.Date; -import java.util.List; - -import javax.persistence.EntityManager; -import javax.persistence.PersistenceContext; -import javax.persistence.TypedQuery; - -import org.apache.openmeetings.db.entity.basic.Naviglobal; -import org.apache.openmeetings.db.entity.basic.Navimain; -import org.red5.logging.Red5LoggerFactory; -import org.slf4j.Logger; -import org.springframework.transaction.annotation.Transactional; - -@Transactional -public class NavigationDao { - private static final Logger log = Red5LoggerFactory.getLogger(NavigationDao.class, webAppRootKey); - - @PersistenceContext - private EntityManager em; - - public Naviglobal getGlobalMenuEntry(Long globalId) { - try { - TypedQuery<Naviglobal> query = em.createNamedQuery("getNavigationById", Naviglobal.class); - query.setParameter("id", globalId); - return query.getSingleResult(); - } catch (Exception ex2) { - log.error("getGlobalMenuEntry", ex2); - } - return null; - - } - - public List<Naviglobal> getMainMenu(int level) { - List<Naviglobal> menu = em.createNamedQuery("getNavigation", Naviglobal.class) - .setParameter("levelId", level) - .getResultList(); - if (LEVEL_GROUP_ADMIN == level) { - // filtering of child objects is not working on JPQL level - for (Naviglobal ng : menu) { - em.detach(ng); - ng.setId(null); // we don't need below changed to be saved - List<Navimain> sub = new ArrayList<>(); - for (Navimain nm : ng.getMainnavi()) { - if (nm.getLevelId() <= level) { - sub.add(nm); - } - } - ng.setMainnavi(sub); - } - } - return menu; - } - - public Naviglobal addGlobalStructure(int naviorder, String labelId, int levelId, String name, String tooltipLabelId) { - Naviglobal ng = new Naviglobal(); - ng.setComment(""); - ng.setIcon(""); - ng.setNaviorder(naviorder); - ng.setLabelId(labelId); - ng.setDeleted(false); - ng.setLevelId(levelId); - ng.setName(name); - ng.setInserted(new Date()); - ng.setTooltipLabelId(tooltipLabelId); - - em.persist(ng); - return ng; - } - - public void addMainStructure(String action, String params, int naviorder, String labelId, - int levelId, String name, Long globalId, String tooltipLabelId) { - Naviglobal ng = getGlobalMenuEntry(globalId); - - Navimain nm = new Navimain(); - nm.setAction(action); - nm.setParams(params); - nm.setComment(""); - nm.setIcon(""); - nm.setLabelId(labelId); - nm.setNaviorder(naviorder); - nm.setLevelId(levelId); - nm.setName(name); - nm.setDeleted(false); - nm.setGlobalId(globalId); - nm.setInserted(new Date()); - nm.setTooltipLabelId(tooltipLabelId); - - ng.getMainnavi().add(nm); - - em.merge(ng); - } - -} http://git-wip-us.apache.org/repos/asf/openmeetings/blob/d6f0f022/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/PrivateMessageDao.java ---------------------------------------------------------------------- diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/PrivateMessageDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/PrivateMessageDao.java index 475fafd..cd98143 100644 --- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/PrivateMessageDao.java +++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/PrivateMessageDao.java @@ -45,8 +45,8 @@ public class PrivateMessageDao implements IDataProviderDao<PrivateMessage> { private static final Logger log = Red5LoggerFactory.getLogger(PrivateMessageDao.class, webAppRootKey); @PersistenceContext private EntityManager em; - - public Long addPrivateMessage(String subject, String message, Long parentMessageId, + + public Long addPrivateMessage(String subject, String message, Long parentMessageId, User from, User to, User owner, Boolean bookedRoom, Room room, boolean isContactRequest, Long userContactId) { try { @@ -64,41 +64,41 @@ public class PrivateMessageDao implements IDataProviderDao<PrivateMessage> { privateMessage.setIsRead(false); privateMessage.setIsContactRequest(isContactRequest); privateMessage.setUserContactId(userContactId); - + privateMessage = em.merge(privateMessage); Long privateMessageId = privateMessage.getFolderId(); - - return privateMessageId; + + return privateMessageId; } catch (Exception e) { log.error("[addPrivateMessage]",e); } return null; } - + @Override public List<PrivateMessage> get(int first, int count) { return em.createNamedQuery("getPrivateMessages", PrivateMessage.class) .setFirstResult(first).setMaxResults(count) .getResultList(); } - + @Override public PrivateMessage get(long id) { return get(Long.valueOf(id)); } - + @Override public PrivateMessage get(Long id) { - TypedQuery<PrivateMessage> query = em.createNamedQuery("getPrivateMessageById", PrivateMessage.class); + TypedQuery<PrivateMessage> query = em.createNamedQuery("getPrivateMessageById", PrivateMessage.class); query.setParameter("id", id); PrivateMessage privateMessage = null; try { privateMessage = query.getSingleResult(); - } catch (NoResultException ex) { - } + } catch (NoResultException ex) { + } return privateMessage; } - + @Override public PrivateMessage update(PrivateMessage entity, Long userId) { if (entity.getId() == null) { @@ -109,13 +109,13 @@ public class PrivateMessageDao implements IDataProviderDao<PrivateMessage> { } return entity; } - + private static String getQuery(boolean isCount, String search, String orderBy, boolean asc) { StringBuilder hql = new StringBuilder("SELECT "); hql.append(isCount ? "COUNT(" : "").append("m").append(isCount ? ")" : "") .append(" FROM PrivateMessage m WHERE m.owner.id = :ownerId ") .append(" AND m.folderId = :folderId "); - + if (!StringUtils.isEmpty(search)) { hql.append(" AND ( ") .append("lower(m.subject) LIKE :search ") @@ -126,15 +126,15 @@ public class PrivateMessageDao implements IDataProviderDao<PrivateMessage> { .append("OR lower(m.from.address.email) LIKE :search ") .append(" ) "); } - + if (!isCount && !StringUtils.isEmpty(orderBy)) { hql.append(" ORDER BY ").append(orderBy).append(asc ? " ASC" : " DESC"); } return hql.toString(); } - + public Long count(Long ownerId, Long folderId, String search) { - TypedQuery<Long> query = em.createQuery(getQuery(true, search, null, true), Long.class); + TypedQuery<Long> query = em.createQuery(getQuery(true, search, null, true), Long.class); query.setParameter("ownerId", ownerId); if (!StringUtils.isEmpty(search)) { query.setParameter("search", StringUtils.lowerCase("%" + search + "%")); @@ -142,9 +142,9 @@ public class PrivateMessageDao implements IDataProviderDao<PrivateMessage> { query.setParameter("folderId", folderId); return query.getSingleResult(); } - + public List<PrivateMessage> get(Long ownerId, Long folderId, String search, String orderBy, boolean asc, int start, int max) { - TypedQuery<PrivateMessage> query = em.createQuery(getQuery(false, search, orderBy, asc), PrivateMessage.class); + TypedQuery<PrivateMessage> query = em.createQuery(getQuery(false, search, orderBy, asc), PrivateMessage.class); query.setParameter("ownerId", ownerId); query.setParameter("folderId", folderId); if (!StringUtils.isEmpty(search)) { @@ -154,27 +154,27 @@ public class PrivateMessageDao implements IDataProviderDao<PrivateMessage> { query.setMaxResults(max); return query.getResultList(); } - + public int updateReadStatus(Collection<Long> ids, Boolean isRead) { - Query query = em.createNamedQuery("updatePrivateMessagesReadStatus"); + Query query = em.createNamedQuery("updatePrivateMessagesReadStatus"); query.setParameter("isRead", isRead); query.setParameter("ids", ids); return query.executeUpdate(); } public int moveMailsToFolder(Collection<Long> ids, Long folderId) { - Query query = em.createNamedQuery("moveMailsToFolder"); + Query query = em.createNamedQuery("moveMailsToFolder"); query.setParameter("folderId", folderId); query.setParameter("ids", ids); return query.executeUpdate(); } - + public int delete(Collection<Long> ids) { - Query query = em.createNamedQuery("deletePrivateMessages"); + Query query = em.createNamedQuery("deletePrivateMessages"); query.setParameter("ids", ids); return query.executeUpdate(); } - + public List<PrivateMessage> getByRoom(Long roomId) { return em.createNamedQuery("getPrivateMessagesByRoom", PrivateMessage.class) .setParameter("roomId", roomId).getResultList(); http://git-wip-us.apache.org/repos/asf/openmeetings/blob/d6f0f022/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/basic/Naviglobal.java ---------------------------------------------------------------------- diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/basic/Naviglobal.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/basic/Naviglobal.java deleted file mode 100644 index be48494..0000000 --- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/basic/Naviglobal.java +++ /dev/null @@ -1,196 +0,0 @@ -/* - * 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.db.entity.basic; - -import java.util.ArrayList; -import java.util.Date; -import java.util.List; - -import javax.persistence.CascadeType; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.FetchType; -import javax.persistence.GeneratedValue; -import javax.persistence.GenerationType; -import javax.persistence.Id; -import javax.persistence.JoinColumn; -import javax.persistence.NamedQueries; -import javax.persistence.NamedQuery; -import javax.persistence.OneToMany; -import javax.persistence.OrderBy; -import javax.persistence.Table; - -import org.apache.openjpa.persistence.jdbc.ForeignKey; -import org.apache.openmeetings.db.entity.IDataProviderEntity; - -@Entity -@NamedQueries({ - @NamedQuery(name = "getNavigation", query = "SELECT ng FROM Naviglobal ng " - + "WHERE ng.levelId <= :levelId AND ng.deleted = false ORDER BY ng.naviorder ASC"), - @NamedQuery(name = "getNavigationById", query = "SELECT ng from Naviglobal ng WHERE ng.id = :id") }) -@Table(name = "naviglobal") -public class Naviglobal implements IDataProviderEntity { - private static final long serialVersionUID = 1L; - - @Id - @GeneratedValue(strategy = GenerationType.IDENTITY) - @Column(name = "id") - private Long id; - - @Column(name = "name") - private String name; - - @Column(name = "icon") - private String icon; - - @Column(name = "updated") - private Date updated; - - @Column(name = "inserted") - private Date inserted; - - @Column(name = "comment") - private String comment; - - @Column(name = "naviorder", nullable = false) - private int naviorder; - - @Column(name = "level_id", nullable = false) - private int levelId; - - @Column(name = "deleted", nullable = false) - private boolean deleted; - - @Column(name = "label_id") - private String labelId; - - @Column(name = "tooltip_label_id") - private String tooltipLabelId; - - @OneToMany(fetch = FetchType.EAGER, cascade = CascadeType.ALL) - @JoinColumn(name = "global_id", nullable = false) - @ForeignKey(enabled = true) - @OrderBy("naviorder") - private List<Navimain> mainnavi = new ArrayList<>(); - - @Override - public Long getId() { - return id; - } - - @Override - public void setId(Long id) { - this.id = id; - } - - public String getComment() { - return comment; - } - - public void setComment(String comment) { - this.comment = comment; - } - - public String getIcon() { - return icon; - } - - public void setIcon(String icon) { - this.icon = icon; - } - - public Date getInserted() { - return inserted; - } - - public void setInserted(Date inserted) { - this.inserted = inserted; - } - - public Date getUpdated() { - return updated; - } - - public void setUpdated(Date updated) { - this.updated = updated; - } - - public boolean isDeleted() { - return deleted; - } - - public void setDeleted(boolean deleted) { - this.deleted = deleted; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public int getNaviorder() { - return naviorder; - } - - public void setNaviorder(int naviorder) { - this.naviorder = naviorder; - } - - public int getLevelId() { - return levelId; - } - - public void setLevelId(int levelId) { - this.levelId = levelId; - } - - public List<Navimain> getMainnavi() { - return mainnavi; - } - - public void setMainnavi(List<Navimain> mainnavi) { - this.mainnavi = mainnavi; - } - - public String getLabelId() { - return labelId; - } - - public void setLabelId(String labelId) { - this.labelId = labelId; - } - - public String getTooltipLabelId() { - return tooltipLabelId; - } - - public void setTooltipLabelId(String tooltipLabelId) { - this.tooltipLabelId = tooltipLabelId; - } - - @Override - public String toString() { - return "Naviglobal [id=" + id + ", name=" + name + ", naviorder=" + naviorder + ", deleted=" - + deleted + ", labelId=" + labelId + ", tooltipLabelId=" + tooltipLabelId + "]"; - } - -} http://git-wip-us.apache.org/repos/asf/openmeetings/blob/d6f0f022/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/basic/Navimain.java ---------------------------------------------------------------------- diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/basic/Navimain.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/basic/Navimain.java deleted file mode 100644 index 2561e3e..0000000 --- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/basic/Navimain.java +++ /dev/null @@ -1,201 +0,0 @@ -/* - * 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.db.entity.basic; - -import java.util.Date; - -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.GeneratedValue; -import javax.persistence.GenerationType; -import javax.persistence.Id; -import javax.persistence.Table; - -import org.apache.openmeetings.db.entity.IDataProviderEntity; - -@Entity -@Table(name = "navimain") -public class Navimain implements IDataProviderEntity { - private static final long serialVersionUID = 1L; - - @Id - @GeneratedValue(strategy = GenerationType.IDENTITY) - @Column(name = "id") - private Long id; - - @Column(name = "global_id") - private Long globalId; - - @Column(name = "name") - private String name; - - @Column(name = "icon") - private String icon; - - @Column(name = "action") - private String action; - - @Column(name = "params") - private String params; - - @Column(name = "updated") - private Date updated; - - @Column(name = "inserted") - private Date inserted; - - @Column(name = "comment") - private String comment; - - @Column(name = "naviorder", nullable = false) - private int naviorder; - - @Column(name = "level_id", nullable = false) - private int levelId; - - @Column(name = "label_id") - private String labelId; - - @Column(name = "deleted", nullable = false) - private boolean deleted; - - @Column(name = "tooltip_label_id") - private String tooltipLabelId; - - @Override - public Long getId() { - return id; - } - - @Override - public void setId(Long id) { - this.id = id; - } - - public String getAction() { - return action; - } - - public void setAction(String action) { - this.action = action; - } - - public int getLevelId() { - return levelId; - } - - public void setLevelId(int levelId) { - this.levelId = levelId; - } - - public Long getGlobalId() { - return globalId; - } - - public void setGlobalId(Long globalId) { - this.globalId = globalId; - } - - public String getComment() { - return comment; - } - - public void setComment(String comment) { - this.comment = comment; - } - - public String getIcon() { - return icon; - } - - public void setIcon(String icon) { - this.icon = icon; - } - - public Date getInserted() { - return inserted; - } - - public void setInserted(Date inserted) { - this.inserted = inserted; - } - - public Date getUpdated() { - return updated; - } - - public void setUpdated(Date updated) { - this.updated = updated; - } - - public boolean isDeleted() { - return deleted; - } - - public void setDeleted(boolean deleted) { - this.deleted = deleted; - } - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public int getNaviorder() { - return naviorder; - } - - public void setNaviorder(int naviorder) { - this.naviorder = naviorder; - } - - public String getLabelId() { - return labelId; - } - - public void setLabelId(String labelId) { - this.labelId = labelId; - } - - public String getTooltipLabelId() { - return tooltipLabelId; - } - - public void setTooltipLabelId(String tooltipLabelId) { - this.tooltipLabelId = tooltipLabelId; - } - - public String getParams() { - return params; - } - - public void setParams(String params) { - this.params = params; - } - - @Override - public String toString() { - return "Navimain [id=" + id + ", globalId=" + globalId + ", name=" + name + ", action=" + action + ", params=" + params - + ", naviorder=" + naviorder + ", labelId=" + labelId + ", deleted=" + deleted + ", tooltipLabelId=" - + tooltipLabelId + "]"; - } -} http://git-wip-us.apache.org/repos/asf/openmeetings/blob/d6f0f022/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/RoomGroup.java ---------------------------------------------------------------------- diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/RoomGroup.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/RoomGroup.java index f08670a..42bf899 100644 --- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/RoomGroup.java +++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/RoomGroup.java @@ -70,25 +70,25 @@ public class RoomGroup implements IDataProviderEntity { @Column(name = "id") @Element(data = true, name = "rooms_organisation_id") private Long id; - + @ManyToOne(fetch = FetchType.EAGER) @JoinColumn(name="room_id", nullable=true) @ForeignKey(enabled = true) @Element(name="rooms_id", data=true, required=false) private Room room; - + @ManyToOne(fetch = FetchType.EAGER) @JoinColumn(name="group_id", nullable=true) @ForeignKey(enabled = true) @Element(name="organisation_id", data=true, required=false) private Group group; - + @Column(name = "inserted") private Date inserted; - + @Column(name = "updated") private Date updated; - + @Column(name = "deleted", nullable = false) @Element(data=true) private boolean deleted; @@ -107,7 +107,7 @@ public class RoomGroup implements IDataProviderEntity { public void setGroup(Group group) { this.group = group; } - + public Room getRoom() { return room; } @@ -123,21 +123,21 @@ public class RoomGroup implements IDataProviderEntity { public void setId(Long id) { this.id = id; } - + public Date getInserted() { return inserted; } public void setInserted(Date inserted) { this.inserted = inserted; } - + public Date getUpdated() { return updated; } public void setUpdated(Date updated) { this.updated = updated; - } - + } + public boolean isDeleted() { return deleted; } http://git-wip-us.apache.org/repos/asf/openmeetings/blob/d6f0f022/openmeetings-install/src/main/java/org/apache/openmeetings/installation/ImportInitvalues.java ---------------------------------------------------------------------- diff --git a/openmeetings-install/src/main/java/org/apache/openmeetings/installation/ImportInitvalues.java b/openmeetings-install/src/main/java/org/apache/openmeetings/installation/ImportInitvalues.java index 3c1212f..8530d70 100644 --- a/openmeetings-install/src/main/java/org/apache/openmeetings/installation/ImportInitvalues.java +++ b/openmeetings-install/src/main/java/org/apache/openmeetings/installation/ImportInitvalues.java @@ -39,6 +39,7 @@ import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_IGNORE_B import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_IMAGEMAGIC_PATH; import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_LOGIN_MIN_LENGTH_KEY; import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_MAX_UPLOAD_SIZE_KEY; +import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_MYROOMS_ENABLED; import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_OAUTH_REGISTER_KEY; import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_PASS_MIN_LENGTH_KEY; import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_REDIRECT_URL_FOR_EXTERNAL_KEY; @@ -56,10 +57,6 @@ import static org.apache.openmeetings.util.OpenmeetingsVariables.DEFAULT_MAX_UPL import static org.apache.openmeetings.util.OpenmeetingsVariables.EXT_PROCESS_TTL; import static org.apache.openmeetings.util.OpenmeetingsVariables.HEADER_CSP_SELF; import static org.apache.openmeetings.util.OpenmeetingsVariables.HEADER_XFRAME_SAMEORIGIN; -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; @@ -70,7 +67,6 @@ import java.util.Iterator; import org.apache.openmeetings.db.dao.basic.ConfigurationDao; import org.apache.openmeetings.db.dao.basic.ErrorDao; -import org.apache.openmeetings.db.dao.basic.NavigationDao; import org.apache.openmeetings.db.dao.label.LabelDao; import org.apache.openmeetings.db.dao.room.RoomDao; import org.apache.openmeetings.db.dao.room.SipDao; @@ -78,7 +74,6 @@ import org.apache.openmeetings.db.dao.server.OAuth2Dao; import org.apache.openmeetings.db.dao.user.GroupDao; import org.apache.openmeetings.db.dao.user.UserDao; import org.apache.openmeetings.db.entity.basic.ErrorValue; -import org.apache.openmeetings.db.entity.basic.Naviglobal; import org.apache.openmeetings.db.entity.room.Room; import org.apache.openmeetings.db.entity.room.Room.RoomElement; import org.apache.openmeetings.db.entity.room.Room.Type; @@ -106,8 +101,6 @@ public class ImportInitvalues { @Autowired private UserDao userDao; @Autowired - private NavigationDao navimanagement; - @Autowired private ErrorDao errorDao; @Autowired private SipDao sipDao; @@ -124,45 +117,6 @@ public class ImportInitvalues { return progress; } - public void loadMainMenu() { - /* - * ######################## Dashboard Menu Points - */ - Naviglobal home = navimanagement.addGlobalStructure(1, "124", LEVEL_USER, "home", "582"); - navimanagement.addMainStructure("dashboardModuleStartScreen", null, 1, "290", LEVEL_USER, "Dashboard", home.getId(), "1450"); - navimanagement.addMainStructure("dashboardModuleCalendar", null, 2, "291", LEVEL_USER, "Calendar", home.getId(), "1451"); - - /* - * ######################## Conference Menu Points - */ - 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"); - - /* - * ######################## Recording Menu Points - */ - Naviglobal rec = navimanagement.addGlobalStructure(3, "395", LEVEL_USER, "record", "583"); - navimanagement.addMainStructure("recordModule", null, 1, "395", LEVEL_USER, "Recordings", rec.getId(), "1452"); - - /* - * ######################## Administration Menu Points - */ - Naviglobal admin = navimanagement.addGlobalStructure(6, "6", LEVEL_GROUP_ADMIN, "Administration Menu", "586"); - navimanagement.addMainStructure("adminModuleUser", null, 14, "125", LEVEL_GROUP_ADMIN, "Administration of Users", admin.getId(), "1454"); - navimanagement.addMainStructure("adminModuleConnections", null, 15, "597", LEVEL_ADMIN, "Aministration of Connections", admin.getId(), "1455"); - navimanagement.addMainStructure("adminModuleOrg", null, 16, "127", LEVEL_GROUP_ADMIN, "Administration of Groups", admin.getId(), "1456"); - navimanagement.addMainStructure("adminModuleRoom", null, 17, "186", LEVEL_GROUP_ADMIN, "Administration of Rooms", admin.getId(), "1457"); - navimanagement.addMainStructure("adminModuleConfiguration", null, 18, "263", LEVEL_ADMIN, "Administration of Configuration", admin.getId(), "1458"); - navimanagement.addMainStructure("adminModuleLanguages", null, 19, "348", LEVEL_ADMIN, "Administration of Languages", admin.getId(), "1459"); - navimanagement.addMainStructure("adminModuleLDAP", null, 20, "1103", LEVEL_ADMIN, "Administration of LDAP Configs", admin.getId(), "1460"); - navimanagement.addMainStructure("adminModuleOAuth", null, 21, "1571", LEVEL_ADMIN, "Administration of OAuth2 servers", admin.getId(), "1572"); - navimanagement.addMainStructure("adminModuleBackup", null, 22, "367", LEVEL_ADMIN, "Administration of Backups", admin.getId(), "1461"); - navimanagement.addMainStructure("adminModuleEmail", null, 23, "main.menu.admin.email", LEVEL_ADMIN, "Administration of Emails", admin.getId(), "main.menu.admin.email.desc"); - log.debug("MainMenu ADDED"); - } - public void loadErrorMappingsFromXML() throws Exception { SAXReader reader = new SAXReader(); Document document = reader.read(new File(OmFileHelper.getLanguagesDir(), OmFileHelper.nameOfErrorFile)); @@ -301,11 +255,11 @@ public class ImportInitvalues { cfgDao.add(CONFIG_SCREENSHARING_FPS_SHOW, "true", null, "Is screensharing FPS should be displayed or not (true/false)"); cfgDao.add(CONFIG_SCREENSHARING_ALLOW_REMOTE, "true", null, "Is remote control will be enabled while screensharing. Allowing remote control will be not possible in case it is set to 'false' (true/false)"); - cfgDao.add(CONFIG_DASHBOARD_SHOW_MYROOMS_KEY, "1", null, "Show My Rooms Tab"); + cfgDao.add(CONFIG_DASHBOARD_SHOW_MYROOMS_KEY, "1", null, "Show 'My Rooms' widget on dashboard"); - cfgDao.add(CONFIG_DASHBOARD_SHOW_CHAT, "1", null, "Show Chat Tab"); + cfgDao.add(CONFIG_DASHBOARD_SHOW_CHAT, "1", null, "Show 'Global Chat' outside the room"); - cfgDao.add(CONFIG_DASHBOARD_SHOW_RSS_KEY, "0", null, "Show RSS Tab"); + cfgDao.add(CONFIG_DASHBOARD_SHOW_RSS_KEY, "0", null, "Show RSS widget on dashboard"); cfgDao.add("show.whiteboard.draw.status", "0", null, "Display name of the user who draw the current object (User Name auto-disapper after 3 seconds."); @@ -355,6 +309,7 @@ public class ImportInitvalues { cfgDao.add(CONFIG_HEADER_XFRAME, HEADER_XFRAME_SAMEORIGIN, null, "Value for 'X-Frame-Options' header (default: DENY), more info: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Frame-Options"); cfgDao.add(CONFIG_HEADER_CSP, HEADER_CSP_SELF, null, "Value for 'Content-Security-Policy' header (default: default-src 'self'; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval';), have to be modified to enable Google analytics site: https://content-security-policy.com/"); cfgDao.add(CONFIG_EXT_PROCESS_TTL, "" + EXT_PROCESS_TTL, null, String.format("Time to live in minutes for external processes such as conversion via ffmpeg (default %s minutes)", EXT_PROCESS_TTL)); + cfgDao.add(CONFIG_MYROOMS_ENABLED, "" + true, null, "Users are allowed to create personal rooms"); log.debug("Configurations ADDED"); } @@ -512,15 +467,13 @@ public class ImportInitvalues { log.debug("System contains users, no need to install data one more time."); } sipDao.delete(); - progress = 14; - loadMainMenu(); - progress = 28; + progress = 17; loadErrorMappingsFromXML(); - progress = 42; + progress = 34; loadConfiguration(cfg); - progress = 56; + progress = 51; loadInitialOAuthServers(); - progress = 70; + progress = 68; } public void loadAll(InstallationConfig cfg, boolean force) throws Exception { @@ -531,7 +484,7 @@ public class ImportInitvalues { } loadSystem(cfg, force); loadInitUserAndGroup(cfg); - progress = 84; + progress = 85; loadDefaultRooms("1".equals(cfg.createDefaultRooms), StringValue.valueOf(cfg.defaultLangId).toLong(1L)); progress = 100; http://git-wip-us.apache.org/repos/asf/openmeetings/blob/d6f0f022/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/BlankArea.java ---------------------------------------------------------------------- diff --git a/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/BlankArea.java b/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/BlankArea.java index 3839f7c..1616180 100644 --- a/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/BlankArea.java +++ b/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/BlankArea.java @@ -18,23 +18,25 @@ */ package org.apache.openmeetings.screenshare.gui; -import javax.swing.*; -import java.awt.Dimension; import java.awt.Color; +import java.awt.Dimension; + +import javax.swing.BorderFactory; +import javax.swing.SwingConstants; public class BlankArea extends MouseListenerable { private static final long serialVersionUID = 1L; private Dimension minSize = new Dimension(100, 50); - public BlankArea(Color color) { - setBackground(color); - setOpaque(false); + public BlankArea(Color color) { + setBackground(color); + setOpaque(false); setHorizontalAlignment(SwingConstants.LEFT); setVerticalAlignment(SwingConstants.TOP); setHorizontalTextPosition(0); setVerticalTextPosition(0); - setBorder(BorderFactory.createLineBorder(Color.black)); - setMinimumSize(minSize); - setPreferredSize(minSize); - } + setBorder(BorderFactory.createLineBorder(Color.black)); + setMinimumSize(minSize); + setPreferredSize(minSize); + } } http://git-wip-us.apache.org/repos/asf/openmeetings/blob/d6f0f022/openmeetings-util/src/main/java/org/apache/openmeetings/util/OpenmeetingsVariables.java ---------------------------------------------------------------------- diff --git a/openmeetings-util/src/main/java/org/apache/openmeetings/util/OpenmeetingsVariables.java b/openmeetings-util/src/main/java/org/apache/openmeetings/util/OpenmeetingsVariables.java index e0d7f4a..fea7d2c 100644 --- a/openmeetings-util/src/main/java/org/apache/openmeetings/util/OpenmeetingsVariables.java +++ b/openmeetings-util/src/main/java/org/apache/openmeetings/util/OpenmeetingsVariables.java @@ -51,14 +51,11 @@ public class OpenmeetingsVariables { public static final String CONFIG_IMAGEMAGIC_PATH = "imagemagick_path"; public static final String CONFIG_HEADER_XFRAME = "header.x.frame.options"; public static final String CONFIG_EXT_PROCESS_TTL = "external.process.ttl"; + public static final String CONFIG_HEADER_CSP = "header.content.security.policy"; + public static final String CONFIG_MYROOMS_ENABLED = "personal.rooms.enabled"; public static final String HEADER_XFRAME_SAMEORIGIN = "SAMEORIGIN"; public static final String HEADER_CSP_SELF = "default-src 'self'; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval';"; - public static final String CONFIG_HEADER_CSP = "header.content.security.policy"; - 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; public static int DEFAULT_MINUTES_REMINDER_SEND = 15; public static String DEFAULT_BASE_URL = "http://localhost:5080/openmeetings/"; http://git-wip-us.apache.org/repos/asf/openmeetings/blob/d6f0f022/openmeetings-util/src/main/java/org/apache/openmeetings/util/geom/GeomPoint.java ---------------------------------------------------------------------- diff --git a/openmeetings-util/src/main/java/org/apache/openmeetings/util/geom/GeomPoint.java b/openmeetings-util/src/main/java/org/apache/openmeetings/util/geom/GeomPoint.java index f03222b..74dd3b7 100644 --- a/openmeetings-util/src/main/java/org/apache/openmeetings/util/geom/GeomPoint.java +++ b/openmeetings-util/src/main/java/org/apache/openmeetings/util/geom/GeomPoint.java @@ -26,9 +26,9 @@ import org.red5.logging.Red5LoggerFactory; import org.slf4j.Logger; /** - * + * * Java Implementation of the Actionscript Class flash.geom.Point - * + * * @author swagner * */ @@ -43,22 +43,22 @@ public class GeomPoint extends Point { gPoint.setLocation(this.getX() + p.getX(),this.getY() + p.getY()); return gPoint; } - + public GeomPoint subtract(GeomPoint p) { GeomPoint gPoint = new GeomPoint(); gPoint.setLocation(this.getX() - p.getX(),this.getY() - p.getY()); return gPoint; } - + @Override public GeomPoint clone() { GeomPoint p = new GeomPoint(); p.setLocation(this.getX(), this.getY()); return p; } - + public static GeomPoint interpolate(GeomPoint p1, GeomPoint p2, float f) { - + if (f == 0) { GeomPoint p = new GeomPoint(); p.setLocation(p2.getX(), p2.getY()); @@ -68,31 +68,31 @@ public class GeomPoint extends Point { p.setLocation(p1.getX(), p1.getY()); return p; } - + double returnValueP1 = linearInterpolation(p1.getX(),p2.getX(),f); double returnValueP2 = linearInterpolation(p1.getY(),p2.getY(),f); - + GeomPoint p = new GeomPoint(); p.setLocation(returnValueP1, returnValueP2); return p; } - + public double length() { return Math.sqrt( this.getX()*this.getX() + this.getY()*this.getY() ); } - + @Override public String toString() { return getClass().getName() + "[x=" + this.getX() + ",y=" + this.getY() + "]"; - } - + } + public void normalize(double newLength) { - - //Function for Line y = mx + 0 + + //Function for Line y = mx + 0 //given points 0,0 and this.getX(),this.getY(); // 0 = m*0 + c // m = -c; - // + // // this.getY() = m*this.getX(); double m; @@ -109,36 +109,36 @@ public class GeomPoint extends Point { m = this.getY() / this.getX(); //log.debug("Case 2"); } - + //log.debug("m :"+m +" newLength "+newLength); - + //Circle (x-x0)^2 + (y-y0)^2 = r^2 // anyY = m * anyX; // newLength * newLength = anyY * anyY + anyX * anyX; - // + // // newLength * newLength = (m * anyX) * (m * anyX) + anyX * anyX; - // + // // newLength * newLength = m * m * anyX * anyX + anyX * anyX; // newLength * newLength = ( m*m + 1 ) * anyX * anyX; - // + // // newLength * newLength / ( m*m + 1 ) = anyX * anyX; - + double anyX = Math.sqrt( ( newLength * newLength ) / ( m*m + 1 ) ); double anyY = m * anyX; - + //log.debug("anyX :"+anyX + " anyY: " + anyY); - + //translate to Flash point of origin if (this.getX() < 0) { anyX *= -1; anyY *= -1; } - + //log.debug("anyX :"+anyX + " anyY: " + anyY); this.setLocation(anyX, anyY); - + } - + /** * Interpolate one number * @param a @@ -149,20 +149,20 @@ public class GeomPoint extends Point { public static double linearInterpolation(double a, double b, float t) { return a + t * (b - a); } - + public static GeomPoint getLineIntersection ( GeomPoint a1,GeomPoint a2, GeomPoint b1,GeomPoint b2) { - + //log.debug("b1: "+b1); //log.debug("b2: "+b2); - + double x,y,m1,m2; - + if ((a2.getX()-a1.getX()) == 0) { - + //log.debug("k1 ^ 0"); - + double k2 = (b2.getY()-b1.getY()) / (b2.getX()-b1.getX()); //log.debug("k2: "+k2); //log.debug("b1.getY(): "+b1.getY()); @@ -170,45 +170,45 @@ public class GeomPoint extends Point { // an infinite directional constant means the line is vertical // so the intersection must be at the x coordinate of the line x = a1.getX(); - m2 = b1.getY() - k2 * b1.getX(); - //log.debug("m2: "+m2); - y = k2 * x + m2; - //log.debug("y: "+y); - + m2 = b1.getY() - k2 * b1.getX(); + //log.debug("m2: "+m2); + y = k2 * x + m2; + //log.debug("y: "+y); + } else if((b2.getX()-b1.getX()) == 0) { - + //log.debug("k2 ^^ 0"); - + double k1 = (a2.getY()-a1.getY()) / (a2.getX()-a1.getX()); // same as above for line 2 m1 = a1.getY() - k1 * a1.getX(); x = b1.getX(); y = k1 * x + m1; - + } else { - + //calculate directional constants double k1 = (a2.getY()-a1.getY()) / (a2.getX()-a1.getX()); double k2 = (b2.getY()-b1.getY()) / (b2.getX()-b1.getX()); - + // if the directional constants are equal, the lines are parallel, // meaning there is no intersection point. if (java.lang.Double.compare(k1, k2) == 0) return null; - + //log.debug("neither"); // log.debug("k1: "+k1); // log.debug("k2: "+k2); - + m1 = a1.getY() - k1 * a1.getX(); - m2 = b1.getY() - k2 * b1.getX(); + m2 = b1.getY() - k2 * b1.getX(); x = (m1-m2) / (k2-k1); y = k1 * x + m1; } - - + + GeomPoint gPoint = new GeomPoint(); gPoint.setLocation(x, y); - + return gPoint; - } + } } http://git-wip-us.apache.org/repos/asf/openmeetings/blob/d6f0f022/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/WebSession.java ---------------------------------------------------------------------- diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/WebSession.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/WebSession.java index 72939d8..5dd42cd 100644 --- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/WebSession.java +++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/WebSession.java @@ -23,6 +23,7 @@ import static org.apache.openmeetings.util.CalendarPatterns.ISO8601_FULL_FORMAT_ import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_DASHBOARD_SHOW_MYROOMS_KEY; import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_DASHBOARD_SHOW_RSS_KEY; import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_DEFAULT_LANG_KEY; +import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_MYROOMS_ENABLED; import static org.apache.openmeetings.util.OpenmeetingsVariables.webAppRootKey; import static org.apache.openmeetings.web.app.Application.exit; import static org.apache.openmeetings.web.app.Application.getAuthenticationStrategy; @@ -515,7 +516,8 @@ public class WebSession extends AbstractAuthenticatedWebSession implements IWebS dashboard = (UserDashboard)dashboardContext.getDashboardPersister().load(); boolean existMyRoomWidget = false, existRssWidget = false, existAdminWidget = false; ConfigurationDao cfgDao = getBean(ConfigurationDao.class); - boolean showMyRoomConfValue = 1 == cfgDao.getConfValue(CONFIG_DASHBOARD_SHOW_MYROOMS_KEY, Integer.class, "0"); + boolean showMyRoomConfValue = "true".equals(cfgDao.getConfValue(CONFIG_MYROOMS_ENABLED, String.class, "true")) + && 1 == cfgDao.getConfValue(CONFIG_DASHBOARD_SHOW_MYROOMS_KEY, Integer.class, "0"); boolean showRssConfValue = 1 == cfgDao.getConfValue(CONFIG_DASHBOARD_SHOW_RSS_KEY, Integer.class, "0"); boolean showAdminWidget = getRights().contains(User.Right.Admin); boolean save = false; http://git-wip-us.apache.org/repos/asf/openmeetings/blob/d6f0f022/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/MainPanel.java ---------------------------------------------------------------------- diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/MainPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/MainPanel.java index 2176e16..573d5ef 100644 --- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/MainPanel.java +++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/MainPanel.java @@ -20,10 +20,7 @@ package org.apache.openmeetings.web.common; import static org.apache.openmeetings.db.util.AuthLevelUtil.hasAdminLevel; import static org.apache.openmeetings.db.util.AuthLevelUtil.hasGroupAdminLevel; -import static org.apache.openmeetings.util.OpenmeetingsVariables.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.CONFIG_MYROOMS_ENABLED; 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.getBean; @@ -42,12 +39,10 @@ import java.util.List; 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.basic.ConfigurationDao; 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; @@ -64,6 +59,8 @@ 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.openmeetings.web.util.OmUrlFragment.MenuActions; +import org.apache.openmeetings.web.util.OmUrlFragment.MenuParams; import org.apache.wicket.Component; import org.apache.wicket.MarkupContainer; import org.apache.wicket.ajax.AbstractAjaxTimerBehavior; @@ -287,43 +284,77 @@ public class MainPanel extends Panel { }); } - private static int getLevel() { - Set<Right> r = WebSession.getRights(); - return hasAdminLevel(r) ? LEVEL_ADMIN : (hasGroupAdminLevel(r) ? LEVEL_GROUP_ADMIN : LEVEL_USER); + private IMenuItem getSubItem(String lbl, String title, MenuActions action, MenuParams param) { + return new MainMenuItem(lbl, title, action, param) { + private static final long serialVersionUID = 1L; + + @Override + public void onClick(AjaxRequestTarget target) { + onClick(MainPanel.this, target); + } + }; } private List<IMenuItem> getMainMenu() { List<IMenuItem> menu = new ArrayList<>(); - for (Naviglobal gl : getBean(NavigationDao.class).getMainMenu(getLevel())) { + { + // Dashboard Menu Points + List<IMenuItem> l = new ArrayList<>(); + l.add(getSubItem("290", "1450", MenuActions.dashboardModuleStartScreen, null)); + l.add(getSubItem("291", "1451", MenuActions.dashboardModuleCalendar, null)); + menu.add(new MenuItem(Application.getString("124"), l)); + } + { + // Conference Menu Points List<IMenuItem> l = new ArrayList<>(); - for (Navimain nm : gl.getMainnavi()) { - l.add(new MainMenuItem(nm) { + l.add(getSubItem("777", "1506", MenuActions.conferenceModuleRoomList, MenuParams.publicTabButton)); + l.add(getSubItem("779", "1507", MenuActions.conferenceModuleRoomList, MenuParams.privateTabButton)); + if ("true".equals(getBean(ConfigurationDao.class).getConfValue(CONFIG_MYROOMS_ENABLED, String.class, "true"))) { + l.add(getSubItem("781", "1508", MenuActions.conferenceModuleRoomList, MenuParams.myTabButton)); + } + 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) { - onClick(MainPanel.this, target); + RoomEnterBehavior.roomEnter((MainPage)getPage(), target, roomId); } }); } - 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("792"), l)); + } + { + // Recording Menu Points + List<IMenuItem> l = new ArrayList<>(); + l.add(getSubItem("395", "1452", MenuActions.recordModule, null)); + menu.add(new MenuItem(Application.getString("395"), l)); + } + Set<Right> r = WebSession.getRights(); + boolean isAdmin = hasAdminLevel(r); + if (isAdmin || hasGroupAdminLevel(r)) { + // Administration Menu Points + List<IMenuItem> l = new ArrayList<>(); + l.add(getSubItem("125", "1454", MenuActions.adminModuleUser, null)); + if (isAdmin) { + l.add(getSubItem("597", "1455", MenuActions.adminModuleConnections, null)); + } + l.add(getSubItem("127", "1456", MenuActions.adminModuleOrg, null)); + l.add(getSubItem("186", "1457", MenuActions.adminModuleRoom, null)); + if (isAdmin) { + l.add(getSubItem("263", "1458", MenuActions.adminModuleConfiguration, null)); + l.add(getSubItem("348", "1459", MenuActions.adminModuleLanguages, null)); + l.add(getSubItem("1103", "1454", MenuActions.adminModuleLDAP, null)); + l.add(getSubItem("1571", "1572", MenuActions.adminModuleOAuth, null)); + l.add(getSubItem("367", "1461", MenuActions.adminModuleBackup, null)); + l.add(getSubItem("main.menu.admin.email", "main.menu.admin.email.desc", MenuActions.adminModuleEmail, null)); } - menu.add(new MenuItem(Application.getString(gl.getLabelId()), l)); + menu.add(new MenuItem(Application.getString("6"), l)); } return menu; } http://git-wip-us.apache.org/repos/asf/openmeetings/blob/d6f0f022/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/menu/MainMenuItem.java ---------------------------------------------------------------------- diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/menu/MainMenuItem.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/menu/MainMenuItem.java index 099289a..630987d 100644 --- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/menu/MainMenuItem.java +++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/menu/MainMenuItem.java @@ -18,7 +18,6 @@ */ package org.apache.openmeetings.web.common.menu; -import org.apache.openmeetings.db.entity.basic.Navimain; import org.apache.openmeetings.web.app.Application; import org.apache.openmeetings.web.common.MainPanel; import org.apache.openmeetings.web.util.OmUrlFragment; @@ -30,13 +29,13 @@ public class MainMenuItem extends MenuItem { private static final long serialVersionUID = 1L; private MenuActions action; private MenuParams params; - - public MainMenuItem(Navimain m) { - super(Application.getString(m.getLabelId()), Application.getString(m.getTooltipLabelId())); - action = MenuActions.valueOf(m.getAction()); - params = m.getParams() != null ? MenuParams.valueOf(m.getParams()) : MenuParams.publicTabButton; + + public MainMenuItem(String lbl, String title, MenuActions action, MenuParams param) { + super(Application.getString(lbl), Application.getString(title)); + this.action = action; + this.params = param != null ? param : MenuParams.publicTabButton; } - + public void onClick(MainPanel main, AjaxRequestTarget target) { main.updateContents(new OmUrlFragment(action, params), target); } http://git-wip-us.apache.org/repos/asf/openmeetings/blob/d6f0f022/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/MessageDialog.html ---------------------------------------------------------------------- diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/MessageDialog.html b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/MessageDialog.html index 1b60e5a..fe3bfea 100644 --- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/MessageDialog.html +++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/MessageDialog.html @@ -46,7 +46,7 @@ <div wicket:id="message"></div> </td> </tr> - <tr> + <tr wicket:enclosure="bookedRoom"> <td colspan="2"><input type="checkbox" wicket:id="bookedRoom" /><label wicket:for="bookedRoom"><wicket:message key="1218"/></label></td> </tr> <tr wicket:id="roomParamsBlock"> http://git-wip-us.apache.org/repos/asf/openmeetings/blob/d6f0f022/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/MessageDialog.java ---------------------------------------------------------------------- diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/MessageDialog.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/MessageDialog.java index 6f222bf..7b6141f 100644 --- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/MessageDialog.java +++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/MessageDialog.java @@ -20,6 +20,7 @@ package org.apache.openmeetings.web.user; import static org.apache.openmeetings.db.entity.user.PrivateMessage.INBOX_FOLDER_ID; import static org.apache.openmeetings.db.entity.user.PrivateMessage.SENT_FOLDER_ID; +import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_MYROOMS_ENABLED; import static org.apache.openmeetings.web.app.Application.getBean; import static org.apache.openmeetings.web.app.Application.getContactsLink; import static org.apache.openmeetings.web.app.Application.getInvitationLink; @@ -36,6 +37,7 @@ import java.util.Date; import java.util.List; import org.apache.openmeetings.core.mail.MailHandler; +import org.apache.openmeetings.db.dao.basic.ConfigurationDao; import org.apache.openmeetings.db.dao.calendar.AppointmentDao; import org.apache.openmeetings.db.dao.room.IInvitationManager; import org.apache.openmeetings.db.dao.room.RoomDao; @@ -153,6 +155,7 @@ public class MessageDialog extends AbstractFormDialog<PrivateMessage> { target.add(bookedRoom, roomParamsBlock); } })); + bookedRoom.setVisible("true".equals(getBean(ConfigurationDao.class).getConfValue(CONFIG_MYROOMS_ENABLED, String.class, "true"))); roomParamsBlock.add(roomParams); roomParams.add(new RoomTypeDropDown("room.type")); roomParams.add(start); @@ -202,17 +205,17 @@ public class MessageDialog extends AbstractFormDialog<PrivateMessage> { a.setEnd(CalendarWebHelper.getDate(end.getModelObject())); List<MeetingMember> attendees = new ArrayList<>(); for (User to : modelTo.getObject()) { - MeetingMember mm = new MeetingMember(); - mm.setUser(to); - mm.setDeleted(false); - mm.setInserted(a.getInserted()); - mm.setUpdated(a.getUpdated()); - mm.setAppointment(a); - attendees.add(mm); + MeetingMember mm = new MeetingMember(); + mm.setUser(to); + mm.setDeleted(false); + mm.setInserted(a.getInserted()); + mm.setUpdated(a.getUpdated()); + mm.setAppointment(a); + attendees.add(mm); } a.setOwner(owner); a.setMeetingMembers(attendees); - getBean(AppointmentDao.class).update(a, getUserId(), false); + getBean(AppointmentDao.class).update(a, getUserId(), false); m.setRoom(r); } else { m.setRoom(null); http://git-wip-us.apache.org/repos/asf/openmeetings/blob/d6f0f022/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/AppointmentDialog.html ---------------------------------------------------------------------- diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/AppointmentDialog.html b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/AppointmentDialog.html index 6a69179..0834a93 100644 --- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/AppointmentDialog.html +++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/AppointmentDialog.html @@ -71,7 +71,7 @@ </div> <div id="tab2"> <div class="table"> - <div> + <div wicket:enclosure="createRoom"> <input type="checkbox" wicket:id="createRoom" /><label wicket:for="createRoom"><wicket:message key="1509" /></label> </div> <div wicket:id="create-room-block"> http://git-wip-us.apache.org/repos/asf/openmeetings/blob/d6f0f022/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/AppointmentDialog.java ---------------------------------------------------------------------- diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/AppointmentDialog.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/AppointmentDialog.java index e721c0b..8ab6dbb 100644 --- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/AppointmentDialog.java +++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/AppointmentDialog.java @@ -18,6 +18,7 @@ */ package org.apache.openmeetings.web.user.calendar; +import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_MYROOMS_ENABLED; import static org.apache.openmeetings.util.OpenmeetingsVariables.webAppRootKey; import static org.apache.openmeetings.web.app.Application.getBean; import static org.apache.openmeetings.web.app.WebSession.getRights; @@ -33,6 +34,7 @@ import java.util.Iterator; import java.util.List; import java.util.Set; +import org.apache.openmeetings.db.dao.basic.ConfigurationDao; import org.apache.openmeetings.db.dao.calendar.AppointmentDao; import org.apache.openmeetings.db.dao.room.RoomDao; import org.apache.openmeetings.db.dao.user.GroupUserDao; @@ -283,6 +285,7 @@ public class AppointmentDialog extends AbstractFormDialog<Appointment> { private class AppointmentForm extends Form<Appointment> { private static final long serialVersionUID = 1L; + private final boolean myRoomsAllowed; private boolean createRoom = true; private Room appRoom = null; private final DateTimePicker start = new OmDateTimePicker("start", Model.of(LocalDateTime.now())); @@ -331,7 +334,7 @@ public class AppointmentDialog extends AbstractFormDialog<Appointment> { if (a.getRoom() == null) { a.setRoom(createAppRoom()); } - createRoom = a.getRoom().isAppointment(); + createRoom = myRoomsAllowed && a.getRoom().isAppointment(); if (createRoom) { appRoom = a.getRoom(); } else { @@ -372,6 +375,8 @@ public class AppointmentDialog extends AbstractFormDialog<Appointment> { super(id, model); setOutputMarkupId(true); + myRoomsAllowed = "true".equals(getBean(ConfigurationDao.class).getConfValue(CONFIG_MYROOMS_ENABLED, String.class, "true")); + createRoom = myRoomsAllowed; add(feedback.setOutputMarkupId(true)); //General add(new RequiredTextField<String>("title").setLabel(Model.of(Application.getString(572)))); @@ -426,8 +431,8 @@ public class AppointmentDialog extends AbstractFormDialog<Appointment> { createRoom = getConvertedInput(); target.add(createRoomBlock.setEnabled(createRoom), groom.setEnabled(!createRoom)); } - }); - add(createRoomBlock.add(roomType, new CheckBox("moderated")).setEnabled(createRoom).setOutputMarkupId(true)); + }.setVisible(myRoomsAllowed)); + add(createRoomBlock.add(roomType, new CheckBox("moderated")).setEnabled(createRoom).setVisible(myRoomsAllowed).setOutputMarkupId(true)); add(groom.setRequired(true).setLabel(Model.of(Application.getString(406))).setEnabled(!createRoom).setOutputMarkupId(true)); add(sipContainer.setOutputMarkupPlaceholderTag(true).setOutputMarkupId(true)); sipContainer.add(new Label("room.confno", "")).setVisible(false); http://git-wip-us.apache.org/repos/asf/openmeetings/blob/d6f0f022/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/OmUrlFragment.java ---------------------------------------------------------------------- diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/OmUrlFragment.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/OmUrlFragment.java index 9ca152f..957a789 100644 --- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/OmUrlFragment.java +++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/OmUrlFragment.java @@ -19,6 +19,7 @@ package org.apache.openmeetings.web.util; import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_DEFAULT_LANDING_ZONE; +import static org.apache.openmeetings.util.OpenmeetingsVariables.CONFIG_MYROOMS_ENABLED; import static org.apache.openmeetings.web.app.Application.getBean; import static org.apache.openmeetings.web.user.profile.SettingsPanel.EDIT_PROFILE_TAB_ID; import static org.apache.openmeetings.web.user.profile.SettingsPanel.MESSAGES_TAB_ID; @@ -273,7 +274,7 @@ public class OmUrlFragment implements Serializable { MenuParams params = MenuParams.publicTabButton; if (TYPE_GROUP.equals(type)) { params = MenuParams.privateTabButton; - } else if (TYPE_MY.equals(type)) { + } else if ("true".equals(getBean(ConfigurationDao.class).getConfValue(CONFIG_MYROOMS_ENABLED, String.class, "true")) && TYPE_MY.equals(type)) { params = MenuParams.myTabButton; } basePanel = new RoomsSelectorPanel(CHILD_ID, params); http://git-wip-us.apache.org/repos/asf/openmeetings/blob/d6f0f022/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/db2_persistence.xml ---------------------------------------------------------------------- diff --git a/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/db2_persistence.xml b/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/db2_persistence.xml index 4f59627..7268dbf 100644 --- a/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/db2_persistence.xml +++ b/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/db2_persistence.xml @@ -28,8 +28,6 @@ <class>org.apache.openmeetings.db.entity.basic.ErrorValue</class> <class>org.apache.openmeetings.db.entity.server.LdapConfig</class> <class>org.apache.openmeetings.db.entity.basic.MailMessage</class> - <class>org.apache.openmeetings.db.entity.basic.Naviglobal</class> - <class>org.apache.openmeetings.db.entity.basic.Navimain</class> <class>org.apache.openmeetings.db.entity.server.Sessiondata</class> <class>org.apache.openmeetings.db.entity.server.SOAPLogin</class> <class>org.apache.openmeetings.db.entity.calendar.Appointment</class> http://git-wip-us.apache.org/repos/asf/openmeetings/blob/d6f0f022/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/derby_persistence.xml ---------------------------------------------------------------------- diff --git a/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/derby_persistence.xml b/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/derby_persistence.xml index f0600aa..1f1e117 100644 --- a/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/derby_persistence.xml +++ b/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/derby_persistence.xml @@ -28,8 +28,6 @@ <class>org.apache.openmeetings.db.entity.basic.ErrorValue</class> <class>org.apache.openmeetings.db.entity.server.LdapConfig</class> <class>org.apache.openmeetings.db.entity.basic.MailMessage</class> - <class>org.apache.openmeetings.db.entity.basic.Naviglobal</class> - <class>org.apache.openmeetings.db.entity.basic.Navimain</class> <class>org.apache.openmeetings.db.entity.server.Sessiondata</class> <class>org.apache.openmeetings.db.entity.server.SOAPLogin</class> <class>org.apache.openmeetings.db.entity.calendar.Appointment</class> http://git-wip-us.apache.org/repos/asf/openmeetings/blob/d6f0f022/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/mssql_persistence.xml ---------------------------------------------------------------------- diff --git a/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/mssql_persistence.xml b/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/mssql_persistence.xml index 311d32f..1406f21 100644 --- a/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/mssql_persistence.xml +++ b/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/mssql_persistence.xml @@ -28,8 +28,6 @@ <class>org.apache.openmeetings.db.entity.basic.ErrorValue</class> <class>org.apache.openmeetings.db.entity.server.LdapConfig</class> <class>org.apache.openmeetings.db.entity.basic.MailMessage</class> - <class>org.apache.openmeetings.db.entity.basic.Naviglobal</class> - <class>org.apache.openmeetings.db.entity.basic.Navimain</class> <class>org.apache.openmeetings.db.entity.server.Sessiondata</class> <class>org.apache.openmeetings.db.entity.server.SOAPLogin</class> <class>org.apache.openmeetings.db.entity.calendar.Appointment</class> http://git-wip-us.apache.org/repos/asf/openmeetings/blob/d6f0f022/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/mysql_persistence.xml ---------------------------------------------------------------------- diff --git a/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/mysql_persistence.xml b/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/mysql_persistence.xml index a59d954..bd84f1c 100644 --- a/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/mysql_persistence.xml +++ b/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/mysql_persistence.xml @@ -28,8 +28,6 @@ <class>org.apache.openmeetings.db.entity.basic.ErrorValue</class> <class>org.apache.openmeetings.db.entity.server.LdapConfig</class> <class>org.apache.openmeetings.db.entity.basic.MailMessage</class> - <class>org.apache.openmeetings.db.entity.basic.Naviglobal</class> - <class>org.apache.openmeetings.db.entity.basic.Navimain</class> <class>org.apache.openmeetings.db.entity.server.Sessiondata</class> <class>org.apache.openmeetings.db.entity.server.SOAPLogin</class> <class>org.apache.openmeetings.db.entity.calendar.Appointment</class> http://git-wip-us.apache.org/repos/asf/openmeetings/blob/d6f0f022/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/oracle_persistence.xml ---------------------------------------------------------------------- diff --git a/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/oracle_persistence.xml b/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/oracle_persistence.xml index 87faf64..a5229c1 100644 --- a/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/oracle_persistence.xml +++ b/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/oracle_persistence.xml @@ -28,8 +28,6 @@ <class>org.apache.openmeetings.db.entity.basic.ErrorValue</class> <class>org.apache.openmeetings.db.entity.server.LdapConfig</class> <class>org.apache.openmeetings.db.entity.basic.MailMessage</class> - <class>org.apache.openmeetings.db.entity.basic.Naviglobal</class> - <class>org.apache.openmeetings.db.entity.basic.Navimain</class> <class>org.apache.openmeetings.db.entity.server.Sessiondata</class> <class>org.apache.openmeetings.db.entity.server.SOAPLogin</class> <class>org.apache.openmeetings.db.entity.calendar.Appointment</class> http://git-wip-us.apache.org/repos/asf/openmeetings/blob/d6f0f022/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/postgresql_persistence.xml ---------------------------------------------------------------------- diff --git a/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/postgresql_persistence.xml b/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/postgresql_persistence.xml index fc25f9f..6d2c129 100644 --- a/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/postgresql_persistence.xml +++ b/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/postgresql_persistence.xml @@ -28,8 +28,6 @@ <class>org.apache.openmeetings.db.entity.basic.ErrorValue</class> <class>org.apache.openmeetings.db.entity.server.LdapConfig</class> <class>org.apache.openmeetings.db.entity.basic.MailMessage</class> - <class>org.apache.openmeetings.db.entity.basic.Naviglobal</class> - <class>org.apache.openmeetings.db.entity.basic.Navimain</class> <class>org.apache.openmeetings.db.entity.server.Sessiondata</class> <class>org.apache.openmeetings.db.entity.server.SOAPLogin</class> <class>org.apache.openmeetings.db.entity.calendar.Appointment</class> http://git-wip-us.apache.org/repos/asf/openmeetings/blob/d6f0f022/openmeetings-web/src/main/webapp/WEB-INF/classes/applicationContext.xml ---------------------------------------------------------------------- diff --git a/openmeetings-web/src/main/webapp/WEB-INF/classes/applicationContext.xml b/openmeetings-web/src/main/webapp/WEB-INF/classes/applicationContext.xml index 9c95d2b..12e412e 100644 --- a/openmeetings-web/src/main/webapp/WEB-INF/classes/applicationContext.xml +++ b/openmeetings-web/src/main/webapp/WEB-INF/classes/applicationContext.xml @@ -154,7 +154,6 @@ <bean id="groupDao" class="org.apache.openmeetings.db.dao.user.GroupDao" /> <bean id="groupUserDao" class="org.apache.openmeetings.db.dao.user.GroupUserDao" /> <bean id="errorManagement" class="org.apache.openmeetings.db.dao.basic.ErrorDao" /> - <bean id="navimanagement" class="org.apache.openmeetings.db.dao.basic.NavigationDao" /> <bean id="pollManagement" class="org.apache.openmeetings.db.dao.room.PollDao" /> <bean id="labelDao" class="org.apache.openmeetings.db.dao.label.LabelDao" /> <bean id="configurationDaoImpl" class="org.apache.openmeetings.db.dao.basic.ConfigurationDao" /> http://git-wip-us.apache.org/repos/asf/openmeetings/blob/d6f0f022/openmeetings-web/src/test/java/org/apache/openmeetings/test/navi/TestNavi.java ---------------------------------------------------------------------- diff --git a/openmeetings-web/src/test/java/org/apache/openmeetings/test/navi/TestNavi.java b/openmeetings-web/src/test/java/org/apache/openmeetings/test/navi/TestNavi.java deleted file mode 100644 index c0d4165..0000000 --- a/openmeetings-web/src/test/java/org/apache/openmeetings/test/navi/TestNavi.java +++ /dev/null @@ -1,77 +0,0 @@ -/* - * 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.test.navi; - -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.junit.Assert.assertNotNull; -import static org.junit.Assert.assertTrue; - -import java.util.List; - -import org.apache.openmeetings.db.dao.basic.NavigationDao; -import org.apache.openmeetings.db.entity.basic.Naviglobal; -import org.apache.openmeetings.db.entity.basic.Navimain; -import org.apache.openmeetings.test.AbstractJUnitDefaults; -import org.junit.Test; -import org.springframework.beans.factory.annotation.Autowired; - -public class TestNavi extends AbstractJUnitDefaults { - @Autowired - private NavigationDao navimanagement; - - private List<Naviglobal> testGetNavi(int level) { - List<Naviglobal> ll = navimanagement.getMainMenu(level); - - assertTrue("GlobalNavi size should be greater than zero: " + ll.size(), ll.size() > 0); - - for (Naviglobal navigl : ll) { - assertNotNull("Naviglobal retrieved should not be null", navigl); - assertTrue(String.format("Naviglobal retrieved should have level not greater than: %s, has: ", level, navigl.getLevelId()), navigl.getLevelId() <= level); - - assertNotNull("Naviglobal retrieved should have Navimain entries", navigl.getMainnavi()); - for (Navimain navim : navigl.getMainnavi()) { - assertNotNull("Navimain retrieved should not be null", navim); - assertTrue(String.format("Navimain retrieved should have level not greater than: %s, has: ", level, navim.getLevelId()), navim.getLevelId() <= level); - } - } - return ll; - } - - @Test - public void testGetUserNavi() { - testGetNavi(LEVEL_USER); - } - - @Test - public void testGetGroupAdminNavi() { - testGetNavi(LEVEL_GROUP_ADMIN); - } - - @Test - public void testGetAdminNavi() { - List<Naviglobal> menu = testGetNavi(LEVEL_ADMIN); - for (Naviglobal ng : menu) { - if (ng.getLevelId() == LEVEL_ADMIN) { - assertTrue("Admin menu should conatin more than 4 items: " + ng.getMainnavi().size(), ng.getMainnavi().size() > 4); - } - } - } -}
