[Encore] A Fix Is In for IE7

Richard L Bowman rbowman at bridgewater.edu
Mon Nov 13 04:36:55 MST 2006


Here is my fix for enCore Xpress 4.0.1 to allow IE7 to access such 
MOO's correctly. It fixes the code so that the MOOtcan java applet 
can be called with correct frame size parameters. (It may work with 
other versions, too, but I cannot check that since our BC-MOO is 
running 4.0.1.)

1. Logon to your MOO, even with IE7. The Program Editor will still 
funciton even with the chat side of Xpress does not show.

2. Use the Program Editor button to edit object #147 (enCore Xpress 
MOO client). About 2/3 of the way down the list of properties, select 
"javascript_functions".

3. In the edit window, locate the following function:

--------------original code is below----------------------
function _getMaxSize() {
    if (_isNetscape()) {
       if (_javaPluginAvailable()) {
          var _marginWidth = 2;
          return [innerWidth-_marginWidth*2, innerHeight-_marginWidth*2];
       }
       else {
          return ["100%", "100%"];
       }
    }
    else { // we assume MSIE-style DOM-things
       return [myBody.clientWidth, myBody.clientHeight];
    }
}
---------------------------------------------------------------

4. Edit this function to be as listed below. Basically add the 
variable list to the beginning and then replace the last two 
"else...return" LINES with the last two "else...return" SECTIONS of 
code below. BE VERY CAREFUL when copying and pasting!

---------------edited code is below----------------------
function _getMaxSize() {
    var _appWidth, _appHeight;
    if (_isNetscape()) {
       if (_javaPluginAvailable()) {
          var _marginWidth = 2;
          return [innerWidth-_marginWidth*2, innerHeight-_marginWidth*2];
       }
       else {
          return ["100%", "100%"];
       }
    }
    else if(document.documentElement &&
          (document.documentElement.clientWidth || 
document.documentElement.clientHeight)) {
       _appWidth = document.documentElement.clientWidth;
       _appHeight = document.documentElement.clientHeight;
       return [_appWidth, _appHeight];
    }
    else if(myBody && ( myBody.clientWidth || myBody.clientHeight ) ) {
       _appWidth = myBody.clientWidth;
       _appHeight = myBody.clientHeight;
       return [_appWidth, _appHeight];
    }
}
---------------------------------------------------------------

5. Logoff and then log back on to your MOO. IE7 should now work properly.

Richard L. Bowman
Web Site: http://www.bridgewater.edu/~rbowman/
BC-MOO: http://www.bridgewater.edu:7000/ 




More information about the Encore mailing list