Repository: openmeetings
Updated Branches:
  refs/heads/4.0.x 247d18cc9 -> 4df4d6597


[OPENMEETINGS-1759] appointment owner is allowed to enter room any time


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

Branch: refs/heads/4.0.x
Commit: 4df4d6597825ded213f5b2fad52bb7fdd0e089cd
Parents: 247d18c
Author: Maxim Solodovnik <solomax...@gmail.com>
Authored: Sat Nov 18 20:45:24 2017 +0700
Committer: Maxim Solodovnik <solomax...@gmail.com>
Committed: Sat Nov 18 20:45:24 2017 +0700

----------------------------------------------------------------------
 .../openmeetings/web/room/EventDetailDialog.java      |  2 +-
 .../org/apache/openmeetings/web/room/RoomPanel.java   | 14 +++++++++-----
 .../java/org/apache/openmeetings/web/room/room.js     | 12 +++++++-----
 .../web/user/calendar/AppointmentDialog.html          |  2 +-
 .../web/user/calendar/AppointmentDialog.java          |  2 +-
 5 files changed, 19 insertions(+), 13 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/openmeetings/blob/4df4d659/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/EventDetailDialog.java
----------------------------------------------------------------------
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/EventDetailDialog.java
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/EventDetailDialog.java
index 651d2d6..f1c7b27 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/EventDetailDialog.java
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/EventDetailDialog.java
@@ -48,7 +48,7 @@ public class EventDetailDialog extends 
AbstractDialog<Appointment> {
                add(new Label("description"));
                add(new Label("owner.timeZoneId"));
                add(new Label("start", 
getDateFormat().format(getModelObject().getStart())));
-               add(new Label("end", 
getDateFormat().format(getModelObject().getStart())));
+               add(new Label("end", 
getDateFormat().format(getModelObject().getEnd())));
                add(new Label("owner.firstname"));
                add(new Label("owner.lastname"));
        }

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/4df4d659/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
----------------------------------------------------------------------
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
index d888193..513c325 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
@@ -226,6 +226,7 @@ public class RoomPanel extends BasePanel {
                        pdfWb = null;
                }
        };
+       Component eventDetail = new 
WebMarkupContainer(EVENT_DETAILS_ID).setVisible(false);
 
        public RoomPanel(String id, Room r) {
                super(id);
@@ -245,7 +246,6 @@ public class RoomPanel extends BasePanel {
                //let's refresh user in client
                update(getClient().updateUser(getBean(UserDao.class)));
                Component accessDenied = new 
WebMarkupContainer(ACCESS_DENIED_ID).setVisible(false);
-               Component eventDetail = new 
WebMarkupContainer(EVENT_DETAILS_ID).setVisible(false);
 
                room.add(AttributeModifier.append(ATTR_CLASS, 
r.getType().name()));
                room.add(menu = new RoomMenuPanel("menu", this));
@@ -297,8 +297,9 @@ public class RoomPanel extends BasePanel {
                        if (r.isAppointment()) {
                                Appointment a = 
getBean(AppointmentDao.class).getByRoom(r.getId());
                                if (a != null && !a.isDeleted()) {
-                                       allowed = 
a.getOwner().getId().equals(getUserId());
-                                       log.debug("appointed room, isOwner ? " 
+ allowed);
+                                       boolean isOwner = 
a.getOwner().getId().equals(getUserId());
+                                       allowed = isOwner;
+                                       log.debug("appointed room, isOwner ? 
{}", isOwner);
                                        if (!allowed) {
                                                for (MeetingMember mm : 
a.getMeetingMembers()) {
                                                        if 
(getUserId().equals(mm.getUser().getId())) {
@@ -309,11 +310,11 @@ public class RoomPanel extends BasePanel {
                                        }
                                        if (allowed) {
                                                Calendar c = 
WebSession.getCalendar();
-                                               if 
(c.getTime().after(a.getStart()) && c.getTime().before(a.getEnd())) {
+                                               if (isOwner || 
c.getTime().after(a.getStart()) && c.getTime().before(a.getEnd())) {
                                                        eventDetail = new 
EventDetailDialog(EVENT_DETAILS_ID, a);
                                                } else {
                                                        allowed = false;
-                                                       deniedMessage = 
getString("error.hash.period") + String.format(" %s - %s", 
getDateFormat().format(a.getStart()), getDateFormat().format(a.getEnd()));
+                                                       deniedMessage = 
String.format("%s %s - %s", getString("error.hash.period"), 
getDateFormat().format(a.getStart()), getDateFormat().format(a.getEnd()));
                                                }
                                        }
                                }
@@ -707,6 +708,9 @@ public class RoomPanel extends BasePanel {
 
        @Override
        public void cleanup(IPartialPageRequestHandler handler) {
+               if (eventDetail instanceof EventDetailDialog) {
+                       ((EventDetailDialog)eventDetail).close(handler, null);
+               }
                handler.add(getBasePage().getHeader().setVisible(true), 
getMainPanel().getTopControls().setVisible(true));
                if (r.isHidden(RoomElement.Chat)) {
                        getMainPanel().getChat().toggle(handler, true);

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/4df4d659/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/room.js
----------------------------------------------------------------------
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/room.js 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/room.js
index 5564ed3..33d9387 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/room.js
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/room.js
@@ -672,7 +672,7 @@ var Room = (function() {
                }
        }
        function _reload() {
-               if (!!options.reloadUrl) {
+               if (!!options && !!options.reloadUrl) {
                        window.location.href = options.reloadUrl;
                } else {
                        window.location.reload();
@@ -706,10 +706,12 @@ var Room = (function() {
                });
        }
        function _load() {
-               sb.ready(function() {
-                       _setSize();
-               });
-               _sbAddResizable();
+               if (sb !== undefined) {
+                       sb.ready(function() {
+                               _setSize();
+                       });
+                       _sbAddResizable();
+               }
                $(window).on('resize.openmeetings', function() {
                        _setSize();
                });

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/4df4d659/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 bc97ee6..b42577f 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
@@ -22,7 +22,7 @@
        <wicket:panel>
                <form wicket:id="appForm" class="appointmentPopUp">
                        <span wicket:id="feedback"></span>
-                       <div id="tabs">
+                       <div class="tabs">
                                <ul>
                                        <li><a href="#tab1"><wicket:message 
key="appointment.tab.general"/></a></li>
                                        <li><a href="#tab2"><wicket:message 
key="406"/></a></li>

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/4df4d659/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 fbf4e64..b3b7c68 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
@@ -200,7 +200,7 @@ public class AppointmentDialog extends 
AbstractFormDialog<Appointment> {
 
        @Override
        protected void onOpen(IPartialPageRequestHandler handler) {
-               handler.add(form.add(new JQueryUIBehavior("#tabs", "tabs")));
+               handler.add(form.add(new JQueryUIBehavior(String.format("#%s 
.tabs", getMarkupId()), "tabs")));
        }
 
        @Override

Reply via email to