diff --git a/webclient/app.css b/webclient/app.css index 736aea660c..360263e13f 100755 --- a/webclient/app.css +++ b/webclient/app.css @@ -20,7 +20,7 @@ a:visited { color: #666; } a:hover { color: #000; } a:active { color: #000; } -#page { +.page { min-height: 100%; margin-bottom: -32px; /* to make room for the footer */ } @@ -34,6 +34,11 @@ a:active { color: #000; } padding-right: 20px; } +#unsupportedBrowser { + padding-top: 240px; + text-align: center; +} + #header { position: absolute; diff --git a/webclient/app.js b/webclient/app.js index 9370f773b3..31118304c6 100644 --- a/webclient/app.js +++ b/webclient/app.js @@ -80,7 +80,24 @@ matrixWebClient.config(['$routeProvider', '$provide', '$httpProvider', $httpProvider.interceptors.push('AccessTokenInterceptor'); }]); -matrixWebClient.run(['$location', 'matrixService', function($location, matrixService) { +matrixWebClient.run(['$location', '$rootScope', 'matrixService', function($location, $rootScope, matrixService) { + + // Check browser support + // Support IE from 9.0. AngularJS needs some tricks to run on IE8 and below + var version = parseFloat($.browser.version); + if ($.browser.msie && version < 9.0) { + $rootScope.unsupportedBrowser = { + browser: navigator.userAgent, + reason: "Internet Explorer is supported from version 9" + }; + } + // The app requires localStorage + if(typeof(Storage) === "undefined") { + $rootScope.unsupportedBrowser = { + browser: navigator.userAgent, + reason: "It does not support HTML local storage" + }; + } // If user auth details are not in cache, go to the login page if (!matrixService.isUserLoggedIn() && diff --git a/webclient/index.html b/webclient/index.html index 7e4dcb8345..a9d5cfd4b0 100644 --- a/webclient/index.html +++ b/webclient/index.html @@ -100,9 +100,20 @@ -
+ -