'Connect'/logging in to facebook from an external site does not appear.

RESOLVED FIXED

Status

Tech Evangelism Graveyard
English US
RESOLVED FIXED
8 years ago
3 years ago

People

(Reporter: Rustam, Unassigned)

Tracking

({regression})

Details

(URL)

(Reporter)

Description

8 years ago
User-Agent:       Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2b4) Gecko/20091124 Firefox/3.6b4 (.NET CLR 3.5.30729)
Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2b4) Gecko/20091124 Firefox/3.6b4 (.NET CLR 3.5.30729)

The link that would allow you to log in to facebook from an external site (eg to access some information from you) does not appear, and is simply left out. I've seen it on multiple sites, but the above one makes it most obvious as it states that there should be a link below, although nothing appears. Checking in IE, there is a link.

Reproducible: Always

Steps to Reproduce:
1. Go to a website that needs authentication/log in to facebook
2. See that the link isn't there
3. If you want to be sure it's not the site, double check using another web browser
Actual Results:  
You don't see the link in FF but do in the other browser

Expected Results:  
You should see the link in FF

I do use the adblockplus extension and did at one point block something to do with facebook, however even when it is disabled the facebook link does not appear, and ABP shows no elements being blocked on the page where the block was activated, so I'm assuming FF isn't putting the link in, rather than ABP hiding it.

Comment 1

8 years ago
I'm experiencing the same issue - I see the Facebook Connect button in FF 3.5 and in the latest Safari and Chrome but not in FF 3.6b5.

Unsure whether this is a bug in Firefox or in Facebook. There's a bug report opened on Facebook as well: http://bugs.developers.facebook.com/show_bug.cgi?id=7811

Comment 2

8 years ago
I'm experiencing the same problem too.
Tested in FF 3.6b6pre and 3.7a1pre on Win XP SP3.

Comment 3

8 years ago
Here is a simple page using FB Connect:
http://www.somethingtoputhere.com/therunaround/index.php

"Or login with Facebook:" should be rendered as text with  background image when working properly, but renders as simple text in FF 3.6b6pre and 3.7a1pre.

Comment 4

8 years ago
Experiencing the same problem with FF 3.6b5. 
It affects not just the login but any elements rendered by XFBML.

Comment 5

8 years ago
This is a duplicate of the newer but confirmed issue, should any further discussion be made in the confirmed issue instead?
https://bugzilla.mozilla.org/show_bug.cgi?id=537932

Updated

8 years ago
Duplicate of this bug: 537932

Updated

8 years ago
Duplicate of this bug: 537058

Comment 8

8 years ago
Works: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2a1pre) Gecko/20090608 Minefield/3.6a1pre
Broken: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2a1pre) Gecko/20090609 Minefield/3.6a1pre

Regression window:
http://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=4f11e242a00e&tochange=39f1a74e500b
Status: UNCONFIRMED → NEW
Ever confirmed: true
Flags: blocking-firefox3.6?
Keywords: regression, testcase-wanted
OS: Windows 7 → All
Hardware: x86 → All
Version: unspecified → Trunk

Comment 9

8 years ago
That's a regression from bug 468708.

In http://static.ak.connect.facebook.com/connect.php/en_US/js/Api/CanvasUtil/Connect/XFBML, there is (after js beautification):

    getElementsByTagNameNS: function (b, f, c) {
        var e = null;
        switch (FBIntern.AppInfo.get_singleton().get_hostInfo().get_hostName()) {
        case FBIntern.HostName.MOZILLA:
            c = f + ':' + c;
            e = b.getElementsByTagNameNS(null, c);
            break;

Which should use http://www.w3.org/1999/xhtml for the namespace with Gecko >= 1.9.2
Blocks: 468708
Keywords: testcase-wanted

Updated

8 years ago
Assignee: nobody → english-us
Component: General → English US
Flags: blocking-firefox3.6?
Product: Firefox → Tech Evangelism
QA Contact: general → english-us
Version: Trunk → unspecified
cc'ing someone from facebook to get their attention.

I think the best thing to do here is to use the namespace of the namespace of the body element, that will work across all firefox versions. So instead of:

e = b.getElementsByTagNameNS(null, c);

do something like

e = b.getElementsByTagNameNS(document.body.namespaceURI, c);
Duplicate of this bug: 538903
Browser sniffing is clearly harmful here, since Firefox 3.6's behavior is consistent with WebKit's.

Comment 13

8 years ago
Update: I've updated JS code for Facebook Connect to use getElementsByTagNameNS(document.body.namespaceURI, c). This problem should go away now.

Comment 14

8 years ago
Great! I checked some of the Facebook connect enabled sites above with Firefox 3.6 RC1, and the Connect button is now visible.
Status: NEW → RESOLVED
Last Resolved: 8 years ago
Resolution: --- → FIXED
Awesome work, Wei - thanks so much!
Product: Tech Evangelism → Tech Evangelism Graveyard
You need to log in before you can comment on or make changes to this bug.