I reported this in the bug forum a few RCs back, so please forgive the repeat. But since that forum is history, and since I notice the issue is still present, I thought I'd mention it here again.
The internal browser checking fails for Opera 6 when you set the browser to "Identify as Opera" under Quick Preferences (F12). If youi set it to identify as any other available setting -- Mozilla 5.0, Mozilla 4.78, Mozilla 3.0, MSIE 50 -- then op6 (in milonic_src.js) is true. This may not really be an internal "bug" unless some function internal to the menu is going to rely on an accurate op6 test. If that were the case, then I'd think this is a slightly more important matter. It also affects anyone who may wish to use the menu system's internal browser sniffing, since it's very thorough and uses common flags like ie5, ie55, ns7, op6, etc.
Testing with Opera 6.05 in Win2k, with any "Identify as" setting
other than Opera, the navigator.userAgent contains 'Opera 6.05'. For example, a setting of Mozilla 5.0 yields a userAgent of
Mozilla/5.0 (Windows 2000; U) Opera 6.05 [en]
on the machine I'm using right now. But setting it to "Identify as Opera" yields a userAgent of
Opera/6.05 (Windows 2000; U) [en]
Note that the "Opera" part in this case contains a forward slash, as do the other "browser name/version num" representations when identifying as other browsers. The current test for op6 looks for userAgent.toLowerCase() containing 'opera 6', so the 'opera/6.05' that results from "Identify as Opera" fails the current op6 test.
Essentially, if you treated it like the current test for op7, it would work. In other words, Change
Code: Select all
op6=(_nu.indexOf("opera 6")!=-1)?_t:_f;
To
Code: Select all
op6=(_nu.indexOf("opera 6")!=-1||_nu.indexOf("opera/6")!=-1)?_t:_f;
Hope that made sense,
Kevin