Author: solomax
Date: Fri Apr 15 08:20:54 2016
New Revision: 1739253

URL: http://svn.apache.org/viewvc?rev=1739253&view=rev
Log:
[OPENMEETINGS-1120] closed activities/chat are highlighted on new message

Modified:
    
openmeetings/application/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat.js
    
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/activities/activities.js
    
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat.js
    
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/activities/activities.js
    
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat.js

Modified: 
openmeetings/application/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat.js
URL: 
http://svn.apache.org/viewvc/openmeetings/application/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat.js?rev=1739253&r1=1739252&r2=1739253&view=diff
==============================================================================
--- 
openmeetings/application/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat.js
 (original)
+++ 
openmeetings/application/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat.js
 Fri Apr 15 08:20:54 2016
@@ -37,6 +37,9 @@ $(function() {
                        }
                }
        });
+       reinit();
+});
+function reinit() {
        chatTabs = $("#chatTabs").tabs({
                activate: function(event, ui) {
                        $('#activeChatTab').val(ui.newPanel[0].id);
@@ -48,23 +51,26 @@ $(function() {
                $("#" + panelId).remove();
                chatTabs.tabs("refresh");
        });
-});
+}
+function chatClosed() {
+       return $('#chatPanel').height() < 24;
+}
 function openChat() {
-       if ($('#chatPanel').height() < 24) {
+       if (chatClosed()) {
                $('#chat .control.block 
.ui-icon').removeClass('ui-icon-carat-1-n').addClass('ui-icon-carat-1-s');
+               $('#chat .control.block').removeClass('ui-state-highlight');
                $('#chatPanel, #chat').animate({height: openedHeight}, 1000);
        }
 }
 function closeChat() {
-       var chat = $('#chatPanel');
-       if ($('#chatPanel').height() > 24) {
+       if (!chatClosed()) {
                $('#chat .control.block 
.ui-icon').removeClass('ui-icon-carat-1-s').addClass('ui-icon-carat-1-n');
-               chat.animate({height: closedHeight}, 1000);
+               $('#chatPanel').animate({height: closedHeight}, 1000);
                $('#chatPanel, #chat').animate({height: closedHeight}, 1000);
        }
 }
 function toggleChat() {
-       if ($('#chatPanel').height() < 24) {
+       if (chatClosed()) {
                openChat();
        } else {
                closeChat();
@@ -74,7 +80,10 @@ function activateTab(id) {
        chatTabs.tabs("option", "active", chatTabs.find('a[href="#' + id + 
'"]').parent().index());
 }
 function addChatTab(id, label) {
-       if ($('#chat').length < 1 || $('#' + id).length > 0) {
+       if (!$("#chatTabs").data("ui-tabs")) {
+               reinit();
+       }
+       if ($('#chat').length < 1 || $('#' + id).length) {
                return;
        }
        var li = $(tabTemplate.replace(/#\{href\}/g, "#" + 
id).replace(/#\{label\}/g, label));
@@ -86,8 +95,16 @@ function addChatTab(id, label) {
        chatTabs.tabs("refresh");
        activateTab(id);
 }
+function removeChatTab(id) {
+       $('li[aria-controls="' + id + '"]').remove();
+       $('#' + id).remove();
+       chatTabs.tabs("refresh");
+}
 function addChatMessage(m) {
        if ($('#chat').length > 0 && m && m.type == "chat") {
+               if (chatClosed()) {
+                       $('#chat 
.control.block').addClass('ui-state-highlight');
+               }
                var msg;
                for (var i = 0; i < m.msg.length; ++i) {
                        var cm = m.msg[i];

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=1739253&r1=1739252&r2=1739253&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
 Fri Apr 15 08:20:54 2016
@@ -184,6 +184,7 @@ public class ActivitiesPanel extends Bas
        public void add(Activity a, IPartialPageRequestHandler handler) {
                activities.put(a.getUid(), a);
                update(handler);
+               handler.appendJavaScript("hightlightActivities();");
        }
 
        public void remove(String uid, IPartialPageRequestHandler handler) {

Modified: 
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/activities.js
URL: 
http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/activities.js?rev=1739253&r1=1739252&r2=1739253&view=diff
==============================================================================
--- 
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/activities.js
 (original)
+++ 
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/activities.js
 Fri Apr 15 08:20:54 2016
@@ -17,24 +17,34 @@
  * under the License.
  */
 var closedHeight = "20px", openedHeight = "345px";
+function activitiesClosed(activities) {
+       return activities.height() < 24;
+}
 function openActivities() {
        var activities = $('#activitiesPanel');
-       if (activities.height() < 24) {
+       if (activitiesClosed(activities)) {
                $('.control.block .ui-icon', 
activities).removeClass('ui-icon-carat-1-n').addClass('ui-icon-carat-1-s');
+               $('.control.block', 
activities).removeClass('ui-state-highlight');
                activities.animate({height: openedHeight}, 1000);
        }
 }
 function closeActivities() {
        var activities = $('#activitiesPanel');
-       if (activities.height() > 24) {
+       if (!activitiesClosed(activities)) {
                $('.control.block .ui-icon', 
activities).removeClass('ui-icon-carat-1-s').addClass('ui-icon-carat-1-n');
                activities.animate({height: closedHeight}, 1000);
        }
 }
 function toggleActivities() {
-       if ($('#activitiesPanel').height() < 24) {
+       if (activitiesClosed($('#activitiesPanel'))) {
                openActivities();
        } else {
                closeActivities();
        }
 }
+function hightlightActivities() {
+       var activities = $('#activitiesPanel');
+       if (activitiesClosed(activities)) {
+               $('.control.block', activities).addClass('ui-state-highlight');
+       }
+}

Modified: 
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat.js
URL: 
http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat.js?rev=1739253&r1=1739252&r2=1739253&view=diff
==============================================================================
--- 
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat.js
 (original)
+++ 
openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat.js
 Fri Apr 15 08:20:54 2016
@@ -52,22 +52,25 @@ function reinit() {
                chatTabs.tabs("refresh");
        });
 }
+function chatClosed() {
+       return $('#chatPanel').height() < 24;
+}
 function openChat() {
-       if ($('#chatPanel').height() < 24) {
+       if (chatClosed()) {
                $('#chat .control.block 
.ui-icon').removeClass('ui-icon-carat-1-n').addClass('ui-icon-carat-1-s');
+               $('#chat .control.block').removeClass('ui-state-highlight');
                $('#chatPanel, #chat').animate({height: openedHeight}, 1000);
        }
 }
 function closeChat() {
-       var chat = $('#chatPanel');
-       if ($('#chatPanel').height() > 24) {
+       if (!chatClosed()) {
                $('#chat .control.block 
.ui-icon').removeClass('ui-icon-carat-1-s').addClass('ui-icon-carat-1-n');
-               chat.animate({height: closedHeight}, 1000);
+               $('#chatPanel').animate({height: closedHeight}, 1000);
                $('#chatPanel, #chat').animate({height: closedHeight}, 1000);
        }
 }
 function toggleChat() {
-       if ($('#chatPanel').height() < 24) {
+       if (chatClosed()) {
                openChat();
        } else {
                closeChat();
@@ -99,6 +102,9 @@ function removeChatTab(id) {
 }
 function addChatMessage(m) {
        if ($('#chat').length > 0 && m && m.type == "chat") {
+               if (chatClosed()) {
+                       $('#chat 
.control.block').addClass('ui-state-highlight');
+               }
                var msg;
                for (var i = 0; i < m.msg.length; ++i) {
                        var cm = m.msg[i];

Modified: 
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/ActivitiesPanel.java
URL: 
http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/ActivitiesPanel.java?rev=1739253&r1=1739252&r2=1739253&view=diff
==============================================================================
--- 
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/ActivitiesPanel.java
 (original)
+++ 
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/ActivitiesPanel.java
 Fri Apr 15 08:20:54 2016
@@ -184,6 +184,7 @@ public class ActivitiesPanel extends Bas
        public void add(Activity a, IPartialPageRequestHandler handler) {
                activities.put(a.getUid(), a);
                update(handler);
+               handler.appendJavaScript("hightlightActivities();");
        }
 
        public void remove(String uid, IPartialPageRequestHandler handler) {

Modified: 
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/activities.js
URL: 
http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/activities.js?rev=1739253&r1=1739252&r2=1739253&view=diff
==============================================================================
--- 
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/activities.js
 (original)
+++ 
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/activities.js
 Fri Apr 15 08:20:54 2016
@@ -17,24 +17,34 @@
  * under the License.
  */
 var closedHeight = "20px", openedHeight = "345px";
+function activitiesClosed(activities) {
+       return activities.height() < 24;
+}
 function openActivities() {
        var activities = $('#activitiesPanel');
-       if (activities.height() < 24) {
+       if (activitiesClosed(activities)) {
                $('.control.block .ui-icon', 
activities).removeClass('ui-icon-carat-1-n').addClass('ui-icon-carat-1-s');
+               $('.control.block', 
activities).removeClass('ui-state-highlight');
                activities.animate({height: openedHeight}, 1000);
        }
 }
 function closeActivities() {
        var activities = $('#activitiesPanel');
-       if (activities.height() > 24) {
+       if (!activitiesClosed(activities)) {
                $('.control.block .ui-icon', 
activities).removeClass('ui-icon-carat-1-s').addClass('ui-icon-carat-1-n');
                activities.animate({height: closedHeight}, 1000);
        }
 }
 function toggleActivities() {
-       if ($('#activitiesPanel').height() < 24) {
+       if (activitiesClosed($('#activitiesPanel'))) {
                openActivities();
        } else {
                closeActivities();
        }
 }
+function hightlightActivities() {
+       var activities = $('#activitiesPanel');
+       if (activitiesClosed(activities)) {
+               $('.control.block', activities).addClass('ui-state-highlight');
+       }
+}

Modified: 
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat.js
URL: 
http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat.js?rev=1739253&r1=1739252&r2=1739253&view=diff
==============================================================================
--- 
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat.js
 (original)
+++ 
openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat.js
 Fri Apr 15 08:20:54 2016
@@ -52,22 +52,25 @@ function reinit() {
                chatTabs.tabs("refresh");
        });
 }
+function chatClosed() {
+       return $('#chatPanel').height() < 24;
+}
 function openChat() {
-       if ($('#chatPanel').height() < 24) {
+       if (chatClosed()) {
                $('#chat .control.block 
.ui-icon').removeClass('ui-icon-carat-1-n').addClass('ui-icon-carat-1-s');
+               $('#chat .control.block').removeClass('ui-state-highlight');
                $('#chatPanel, #chat').animate({height: openedHeight}, 1000);
        }
 }
 function closeChat() {
-       var chat = $('#chatPanel');
-       if ($('#chatPanel').height() > 24) {
+       if (!chatClosed()) {
                $('#chat .control.block 
.ui-icon').removeClass('ui-icon-carat-1-s').addClass('ui-icon-carat-1-n');
-               chat.animate({height: closedHeight}, 1000);
+               $('#chatPanel').animate({height: closedHeight}, 1000);
                $('#chatPanel, #chat').animate({height: closedHeight}, 1000);
        }
 }
 function toggleChat() {
-       if ($('#chatPanel').height() < 24) {
+       if (chatClosed()) {
                openChat();
        } else {
                closeChat();
@@ -99,6 +102,9 @@ function removeChatTab(id) {
 }
 function addChatMessage(m) {
        if ($('#chat').length > 0 && m && m.type == "chat") {
+               if (chatClosed()) {
+                       $('#chat 
.control.block').addClass('ui-state-highlight');
+               }
                var msg;
                for (var i = 0; i < m.msg.length; ++i) {
                        var cm = m.msg[i];


Reply via email to