Closed Bug 1143467 Opened 9 years ago Closed 9 years ago

disney.com.sg sends desktop site to Firefox OS

Categories

(Web Compatibility :: Site Reports, defect)

All
Gonk (Firefox OS)
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED WORKSFORME

People

(Reporter: haseeb, Unassigned)

References

()

Details

(Whiteboard: [country-sg] [clientsniff])

      No description provided.
Firefox Android -> http://m.disney.com.sg/android/
Safari  iOS 7   -> http://m.disney.com.sg/ios/

The issue is that they do not seem to have a Web only version.
Both versions are proposing a series of app dedicated to the platform Android or iOS and some HTML5 games.

Games like this one is working well on Firefox OS (Gecko) 
once we passed the barrier of the UA sniffing. It's a html5 canvas game.
http://home.disney.com.sg/games/titles/bighero6_big_hero_shootout/index.html

The variable for supportedBrowser is 
	var supportedBrowser = (Modernizr.canvas && (Modernizr.webaudio || (Modernizr.audio==true))) && (isHomeScreen()==true || disneyGamesHTML5.isBrowserSupported());

It could be almost fine with the feature detection if it was not for … disneyGamesHTML5 which goes back to the old UA sniffing. Sad Panda.

DisneyGamesHTML5.prototype.isBrowserSupported = function () {
    var supported = false;

    for (var i = 0; i < this.minBrowser.length; i++) {
        var minBrowser = this.minBrowser[i];
        if ((!minBrowser.browserType || this.info.browserName == minBrowser.browserType) &&
            (!minBrowser.platformType || this.info.platformType == minBrowser.platformType)) {
            if (this.info.browserVersion >= minBrowser.minVersion && minBrowser.minVersion > 0) {
                supported = true;
            }
        }
    }

    return supported;
};



Calling this:


    this.minBrowser = [
        {
            "browserType": "MSIE",
            "platformType": "Win",
            "minVersion": 9
        },
        {
            "browserType": "Chrome",
            "platformType": "",
            "minVersion": 5
        },
        {
            "browserType": "Firefox",
            "platformType": "",
            "minVersion": 3.5
        },
        {
            "browserType":"Safari",
            "platformType":"Win",
            "minVersion":6
        },
        {
            "browserType":"Safari",
            "platformType":"Mac",
            "minVersion":6
        },
        {
            "browserType":"Safari",
            "platformType":"iPhone",
            "minVersion":6
        },
        {
            "browserType":"Safari",
            "platformType":"iPad",
            "minVersion":6
        },
        {
            "browserType":"Safari",
            "platformType":"iPod",
            "minVersion":6
        }
    ];

Not sure we can do anything. One of these cases.



Another issue for testing this time. The first redirection is not a proper HTTP redirection.

→ http -b http://disney.com.sg/  'User-Agent:Mozilla/5.0 (Android; Mobile; rv:36.0) Gecko/36.0 Firefox/36.0' 
<meta http-equiv="refresh" content="0;url=http://home.disney.com.sg/"/>

And the second one when requesting http://home.disney.com.sg/ is a JavaScript client-side redirection.


        <script type='text/javascript'>
                var isMobile = {
                  Android: function() {
                        return navigator.userAgent.match(/Android/i);
                  },
                  iOS: function() {
                        return navigator.userAgent.match(/iPhone|iPad|iPod/i);
                  },
                  Opera: function() {
                        return navigator.userAgent.match(/Opera Mini/i);
                  },
                  any: function() {
                        return (isMobile.Android() || isMobile.iOS() || isMobile.Opera());
                }
        };
        if( isMobile.any() ) {
                window.location = "http://m.disney.com.sg";
        };

Interesting bug. A user with Opera Mini on J2ME
Opera/9.80 (J2ME/MIDP; Opera Mini/7.1.32249/30.3697; U; en) Presto/2.8.119 Version/11.10

will enter in an infinite loop in between m.disney.com.sg and home.disney.com.sg
Whiteboard: [country-sg] → [country-sg] [serversniff]
Whiteboard: [country-sg] [serversniff] → [country-sg] [clientsnifff]
Whiteboard: [country-sg] [clientsnifff] → [country-sg] [clientsniff]
The site is now responsive.
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → WORKSFORME
Product: Tech Evangelism → Web Compatibility
Component: Mobile → Site Reports
You need to log in before you can comment on or make changes to this bug.