Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Web interface doesn't work in IE 11 in intranet sites Compatibility View #9385

Closed
simnv opened this issue Jan 11, 2018 · 11 comments · Fixed by #14422
Closed

Web interface doesn't work in IE 11 in intranet sites Compatibility View #9385

simnv opened this issue Jan 11, 2018 · 11 comments · Fixed by #14422

Comments

@simnv
Copy link

simnv commented Jan 11, 2018

Description:

Web interface doesn't work in IE 11 in intranet sites Compatibility View, which is default Internet Explorer 11 behavior for intranet sites.

Server Setup Information:

  • Version of Rocket.Chat Server: 0.60.3
  • Operating System: Centos 6.9 on server, Windows 10 on client
  • Deployment Method(snap/docker/tar/etc): tar
  • Number of Running Instances: 1
  • DB Replicaset Oplog: 1
  • Node Version: node/8.9.3

Steps to Reproduce:

  1. Install Rocket.Chat on one of the local intranet sites
  2. Open Rocket.Chat in Internet Explorer 11

Expected behavior:

Page should open.

Actual behavior:

Empty page, lots of JavaScript errors in the browser console.

Additional information:

If I open Compatibility View settings, and uncheck the "Display intranet sites in Compatibility View" box, Rocket.Chat works normally.

Possible remediation:

<meta http-equiv="X-UA-Compatible" content="IE=edge" /> tag should be before the script tag in the page head.

@derekbartram
Copy link

I can reproduce this issue - this is a significant problem for organisation deployment; we can't uncheck that box without potentially breaking a number of other sites (or certainly introducing a lot of testing for other applications).

@josephsmith1990
Copy link

Any update on this issue? It seems simnv has the solution, just needing Rocket.Chat to implement. It means moving:
<meta http-equiv="X-UA-Compatible" content="IE=edge" / > tag ahead of the script tag.
The alternative of unchecking "Display intranet sites in Compatibility View" box doesn't work for many of us in a corporate setting to push it across to all users as it breaks a bunch of legacy Intranet sites.

@pagnotta
Copy link

pagnotta commented Mar 18, 2019

+1

But are you sure the solution works? Tried it temporarily on my server by editing /opt/Rocket.Chat/programs/server/packages/rocketchat_ui-master.js so that it injects the <meta http-equiv="X-UA-Compatible" content="IE=edge" / > tag before the script in the head, but IE11 still didn't load.

Would be a showstopper, since IE11 is default on our desktops.

Using Server 0.74.3.

@josephsmith1990
Copy link

Pagnotta - Theortically, it should work. Everything I'm reading and experience shows that it's a question of moving it ahead of the script tag. How did you run the temporary server? I thought Rocket.Chat web-interface calls the Rocket.Chat hosted .js file. You're saying you just hosted it on your end, and had it refer there?

Hopefully someone can validate this on their end. It really should be a 30 second operation for them and a quick win.

Like you, showstopper if IE11 still doesn't work. It's the default country-wide across our corp.

@josephsmith1990
Copy link

...to add to my last comment, here's why the code (and where it's placed) matters for those of us in a corporate environment that: a) forces display of intranet sites in compatibility mode, and b) has IE11 as default browser: http://tesmond.blogspot.com/2011/10/ie9-intranet-compatibility-mode-in.html

The link also provides the solution :)

@simnv
Copy link
Author

simnv commented Apr 1, 2019

But are you sure the solution works? Tried it temporarily on my server by editing /opt/Rocket.Chat/programs/server/packages/rocketchat_ui-master.js so that it injects the <meta http-equiv="X-UA-Compatible" content="IE=edge" / > tag before the script in the head, but IE11 still didn't load.

Since my original post there were more breaking changes to rocketchat, like the lack of es6 to es5 transpilation. For example, spread and rest syntax (dot-dot-dot) doesn't work in ie11.

You can test it yourself: open rocketchat link in ie11, press f12, choose Edge compatibility manually at the top corner:
image

You will see some errors in console that indicate that there are more things broken now. In my case it is for ...:
image

Proposed change worked for 0.60.3, but it doesn't work now. We've moved on to Electron desktop client, since there are no other options.

@fadanner
Copy link

fadanner commented Apr 3, 2019

Having the same issue with 0.74.3.
Issue exists even on https://open.rocket.chat
Compatibility View mode doesn't make any difference. Issue happens without compatibility view, too.

SCRIPT1002: Syntaxfehler d1eef865fbf5b68bd6eb0f292fa51263c005b1ba.js (5,1702140)
This is a major problem as we use IE11 in whole environment.

@fadanner
Copy link

Does anyone have an idea on this?
It is a very big problem for our users if the chat does not work in IE11.

@sfinity
Copy link

sfinity commented Apr 11, 2019

Having the same issue with 1.0.0-rc.2
does not work in IE11
SCRIPT1002: Syntax Error 436769ec810494cebfd29cd81e6d6b2171ad84d3.js (5,1634318)

@fadanner
Copy link

fadanner commented May 3, 2019

Any news on this? Bug is still open.

@pagnotta
Copy link

pagnotta commented May 4, 2019

As pointed out by simnv in #9385 (comment) it seems to be (also) a problem of ES6 code which is not compatible with IE11, like e.g. the three dot (...) spread syntax for iterable objects.

See https://kangax.github.io/compat-table/es6/ for compatibility.

Is there no transpilation to ES5? What is the policy on IE11 compatibility? Is there any intention to support IE11, or is it considered dead by the devs?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

8 participants