var supportsAddEventListener = (!!document.addEventListener);
var today = new Date();
+var wc_log = "";
+var is_ie6 = false;
if (document.all) {browserType = "ie"}
if (window.navigator.userAgent.toLowerCase().match("gecko")) {
browserType= "gecko";
function emptyElement(element) {
childNodes = element.childNodes;
for(var i=0; i<childNodes.length; i++) {
+ try {
element.removeChild(childNodes[i]);
+ } catch (e) {
+ WCLog(e+"|"+e.description);
+ }
}
}
/** Implements superior internet explorer 'extract all child text from element' feature'. Falls back on buggy, patent violating standardized method */
}
function IconBarRoomList() {
var currentExpanded = ctdlLocalPrefs.readPref("rooms_expanded");
+ var curRoomName = "";
+ if (document.getElementById("rmname")) {
+ curRoomName = getTextContent(document.getElementById("rmname"));
+ }
currentDropTargets = new Array();
var iconbar = document.getElementById("iconbar");
roomlist = document.getElementById("roomlist");
mailboxSPAN.appendChild(document.createTextNode(_mailbox));
$(mailboxSPAN).observe('click', expandFloorEvent);
mailboxLI.appendChild(mailboxSPAN);
- mailboxLI.setAttribute("class", "floor");
+ mailboxLI.className = "floor";
var mailboxUL = document.createElement("ul");
mailboxLI.appendChild(mailboxUL);
var mailboxRooms = GetMailboxRooms();
for(var i=0; i<mailboxRooms.length; i++) {
var room = mailboxRooms[i];
- currentDropTargets.push(addRoomToList(mailboxUL, room));
+ currentDropTargets.push(addRoomToList(mailboxUL, room, curRoomName));
}
- if (currentExpanded != null && currentExpanded == "Mailbox") {
+ if (currentExpanded != null && currentExpanded == _mailbox ) {
expandFloor(mailboxSPAN);
}
for(var a=0; a<floors.length; a++) {
floorSPAN.appendChild(document.createTextNode(name));
$(floorSPAN).observe('click', expandFloorEvent);
floorLI.appendChild(floorSPAN);
- floorLI.setAttribute("class", "floor");
+ floorLI.className = "floor";
var floorUL = document.createElement("ul");
floorLI.appendChild(floorUL);
var roomsForFloor = GetRoomsByFloorNum(floornum);
for(var b=0; b<roomsForFloor.length; b++) {
var room = roomsForFloor[b];
- currentDropTargets.push(addRoomToList(floorUL, room));
+ currentDropTargets.push(addRoomToList(floorUL, room, curRoomName));
}
if (currentExpanded != null && currentExpanded == name) {
expandFloor(floorSPAN);
}
}
-function addRoomToList(floorUL,room) {
+function addRoomToList(floorUL,room, roomToEmphasize) {
var roomName = room[RN_ROOM_NAME];
var flag = room[RN_ROOM_FLAG];
var curView = room[RN_CUR_VIEW];
if (hasNewMsgs) {
className += " room-newmsgs";
}
+ if (roomName == roomToEmphasize) {
+ className += " room-emphasized";
+ }
roomLI.setAttribute("class", className);
roomA.dropTarget = true;
roomA.dropHandler = roomListDropHandler;
console.log(msg);
} else if (!!window.opera && !!opera.postError) {
opera.postError(msg);
+ } else {
+ wc_log += msg + "\r\n";
}
}
// Use prototype api methods here
var elems = [$('room_banner'),$('actiondiv')];
fixMissingCSSTable(elems);
- var banner = $('banner');
- if (banner != null) {
+ if (!is_ie6) {
+ Event.observe(window, 'resize', makeContentScrollable);
+ makeContentScrollable();
+ }
+}
+function makeContentScrollable() {
+if (document.getElementById("banner")
+ && document.getElementById("content")
+ && !document.getElementById("summary_view")) {
+ WCLog("makeContentScrollable");
+ document.body.style.overflowY="hidden";
+ var global = $("global");
+ global.className += "scrollable";
+ var content = document.getElementById("content");
+ var banner = document.getElementById("banner");
+ var bannerHeight = banner.offsetHeight;
+ banner.style.width="100%";
+ var bannerPercent = (bannerHeight/document.viewport.getHeight())*100;
+ //banner.style.height=bannerPercent+"%";
+ content.style.overflowY="scroll";
+ //content.style.top=bannerPercent+"%";
+ content.style.height=(100-bannerPercent)+"%";
+ content.style.right="0px";
}
}
-
function fixOffsetBanner() {
var banner = document.getElementById("banner");
if (banner.offsetLeft > 0) {
contentDiv.style.width = newContentWidth+"px";
}
}
-/** Attempt to stop overflowing in x-axis in IE */
+/** Attempt to stop overflowing in x-axis in IE6 */
function resizeViewport() {
var documentWidth = 0;
var viewportWidth = document.viewport.getWidth();
var iconbar = $('iconbar');
var global = $('global');
+ if (iconbar == null || global == null || document.documentElement == null) {
+ return;
+ }
if (typeof window.offsetWidth != 'undefined') {
documentWidth = window.offsetWidth;
} else {