Index: lams_learning/web/includes/presenceChat.jsp =================================================================== diff -u -r0bbad8932a51efb88ac79f78bf2c7d7396554fe9 -rf0bef7d11b4f82936c417e6e55c25fe9bfdb9a82 --- lams_learning/web/includes/presenceChat.jsp (.../presenceChat.jsp) (revision 0bbad8932a51efb88ac79f78bf2c7d7396554fe9) +++ lams_learning/web/includes/presenceChat.jsp (.../presenceChat.jsp) (revision f0bef7d11b4f82936c417e6e55c25fe9bfdb9a82) @@ -25,36 +25,61 @@ // labels var presenceLabel = ""; - + + // on startup $(document).ready(function (){ - // if presence im is enabled - - // create chat tabs - $("#presenceChatTabs").tabs({ scrollable: true }); + // if browser is ie6 + if($.browser.msie && parseInt($.browser.version) == 6){ + // make warningvisible + $("#presenceChatWarning").removeClass("startHidden"); + } + // otherwise enable presence chat + else{ + // if presence im is enabled + + // make visible + $("#presenceChat").removeClass("startHidden"); - // bind the select function which resets label to non-bold when clicked - $("#presenceChatTabs").bind('tabsselect', function(event, ui) { - var nick = getUserFromTag(ui.panel.id).nick; - $('#' + ui.panel.id + '_tabLabel').html(nick); - $("#presenceChatTabs").tabs('scrollTo', ui.tab.offsetLeft); - }); - - - // create roster tab - $("#presenceChatRoster").tabs({ scrollable: false }); - - - // correct room name - roomName = correctPresenceRoomName(roomName); - - // attempt to login once the window is loaded - doLogin(presenceUrl, userId, userId, userId, roomName, nickname, false); + // create chat tabs + $("#presenceChatTabs").tabs({ scrollable: true }); + + // bind the select function to do extra stuff + $("#presenceChatTabs").bind('tabsselect', function(event, ui) { + // remove visual indicators of new message + var tag = ui.panel.id; + $("#" + tagToTabLabel(tag)).removeClass('presenceTabNewMessage'); + $("#" + tagToListing(tag)).removeClass('presenceListingNewMessage'); + + // scroll to the clicked tab + $("#presenceChatTabs").tabs('scrollTo', ui.tab.offsetLeft); + }); + + // bind the show function to do extra stuff + $("#presenceChatTabs").bind('tabsshow', function(event, ui) { + // get the tag + var tag = ui.panel.id; + + // scroll to the bottom of the given message area + var messageArea = $("#" + tagToMessageArea(tag)); + messageArea.attr("scrollTop", messageArea.attr("scrollHeight")); + }); + + + // create roster tab + $("#presenceChatRoster").tabs({ scrollable: false }); + + // correct room name + roomName = correctPresenceRoomName(roomName); + + // attempt to login once the window is loaded + doLogin(presenceUrl, userId, userId, userId, roomName, nickname, false); + } }); <%-- initial html / presence.js adds on html into here --%> -
+
<%-- only pop the message box if im is enabled --%>
@@ -93,6 +118,7 @@
+ <%-- always pop the roster --%>
+ + <%-- div reserved for storing context menus --%>
+
+ + <%-- floating div shown when IE6 is being used --%> +
+ Sorry, Internet Explorer 6 is not compatible with Presence Chat
\ No newline at end of file