I am using the latest versions of the mollom module and the terms of use module. When I click "create account with facebook login", I get taken to the normal login page, but I can't register because it says the captcha is incorrect or I haven't agreed to the terms of use. I'm assuming this is because fbconnect doesn't go through the correct registration process and fails to pass these inputs. Any thoughts?

CommentFileSizeAuthor
#23 fbconnect.pages_.inc_.869798.patch531 bytesanon

Comments

armanschwarz’s picture

Ok I did some testing and to summarize:

- With only Mollom - CAPTCHA fails
- With only reCAPTCHA - CAPTCHA fails
- With only Terms of Use Module - Pass

The problem is definitely the fbconnect module.

armanschwarz’s picture

A discussion on this here: http://drupal.org/node/831648#comment-3272424

I suspect the problem is to do with this piece of code:

/**
* Menu callback.
* Called when user perform facebook registration
*/
function fbconnect_register_page($form_state = array()) {
  $conf  = fbconnect_get_config();
  $fbuid = fbconnect_get_fbuid();
  $data  = fbconnect_get_info_from_fb($fbuid, 'name, proxied_email');
  $form  = drupal_retrieve_form('user_register', $form_state);
  $site  = $conf['invite_name'];

  drupal_prepare_form('user_register', $form, $form_state);

  $form['name']['#default_value'] = $data['name'];

  $form['fbconnect'] = array(
    '#type' => 'fieldset',
    '#title' => t('Facebook Connect'),
  );

Why not just use the standard API?

armanschwarz’s picture

Also the fact that the Terms of Use module works leads me to suggest that it might be something to do with a remote server connection problem with the fb connect module (Terms of Use module is local, whereas reCAPTCHA and Mollom are server-based)

vectoroc’s picture

Status: Active » Postponed (maintainer needs more info)

do you use "fast registration mode" ?

venusrising’s picture

I have the same issue, I have tried both fast and reg registration and it is saying it is failing due to terms of use.

venusrising’s picture

I get errors when trying to use fast register saying terms of use must be accepted Does anyone know how this can be fixed?

armanschwarz’s picture

The gigya module deals with this well, although you need to use a locally stored module such as captcha (not recaptcha or mollom).

venusrising’s picture

The problem with Gigya is that it costs $15,000 for sites with volume.

venusrising’s picture

The problem with Gigya is that it costs $15,000 for sites with volume.

venusrising’s picture

Status: Postponed (maintainer needs more info) » Active

The terms of use module gives the error is there a way to bypass or add it to this for the fast connect

venusrising’s picture

The terms of use module gives the error is there a way to bypass or add it to this for the fast connect

vectoroc’s picture

what do you mean ? explain pls

venusrising’s picture

Well, basically, you cannot use fast registration with the terms of use module enabled.
Why? Because the terms must be selected as "read" or the form returns an error as it is a required item.
If this is turned off then the FB connect works as expected BUT when you do not have the Terms of Use you have no way of requiring members to accept terms for legal reasons.

vectoroc’s picture

I think it's not a bug. I can't mark/enter automatically all required items as well

vectoroc’s picture

Version: 6.x-1.0-beta10 » 6.x-2.x-dev
Category: bug » task
Priority: Critical » Major

the only way that I see is to output registration form with only required fields (except login/password/email)

what do you think ?

venusrising’s picture

I am confused by your reply can you please clarify? When the terms of use module is enabled it REQUIREs the user to accept the terms, So, when you try to use facebook fast registration what happens is the terms module says hey wait you must accept me and yet it cannot be accepted as it requires the drupal standard registration to be done. So, I wonder if?
A. The terms of use could pop up with FB fast registration to allow it to be checked
B Bypassed?

Thanks for your efforts and input.

vectoroc’s picture

A: Probably I can hack the form to hide some elements
B: Also I can create new user account without user_register form (to use user_save directly)

venusrising’s picture

Wonder if there is a way to work in the terms of use module as so many people use it?

armanschwarz’s picture

Yes and mollom as well. There needs to be a way to bypass certain registration requirements. For me it's the main reason I don't use this module. While I like the idea of it, I don't want to sort through 1000 spam registrations every day because I had to disable mollom on the registration form. I would suggest the use of an alternate registration form, for which modules can be selectively disabled (for example, mollom can be enabled only for certain forms). Just an idea.

armanschwarz’s picture

I don't think the onus should be on fbconnect to selectively hack out any module that causes a problem. A far better solution would be a seperate login form, as I mentioned before. If other modules want to work with fbconnect they'd need to provide a feature to only get applied to certain forms (the user could then choose to exclude those captchas or terms of service requirements from the fbconnect form)

caseyc’s picture

Came up with a work-around for this. Create a "page" and set the path_auto url to fbconnect/register/prompt. On that page, explain that the user will have to create an account and link their fb account after they have registered and provide a registrater link.

The path_auto page url will override the drupal hook at that same url and your page should show when the user clicks the "log in with facebook" but then is presented with the option to create a new account with that facebook page (Or at least it does for me. Anyone else have problems with this?).

It's not perfect, but it will work until a solution to this is found with the module.

anon’s picture

Status: Active » Needs review

sry, dubble post

anon’s picture

StatusFileSize
new531 bytes

One solution is to let other modules alter the $form_state array with drupal_alter()

See my patch for how is is implemented in fbconnect.

Other modules would then be able to to something like this

function mymodule_fb_fast_reg_mode_values_alter($form_state) {
  $form_state['values']['terms_of_use']  = 1;
}
sledge81’s picture

Using the patch, while installing the module there's this error:
Parse error: syntax error, unexpected $end in fbconnect.pages.inc

venusrising’s picture

Would be great to incorporate terms of use to facebook connect so that it could be checked on the form using either login method-Drupal or FB Connect.

sledge81’s picture

A suggestion for this module would be to implement how the FBconnect works with the Polldaddy registration form.

http://polldaddy.com/signup-free/

When you click on the fconnect button, it shows a message to accept the TOS and that's it. Quite smooth sign up process actually.

Rob_Feature’s picture

FYI, twitter module (which can be used for login/registration the same as this one) does this without an issue. I only mention it because it may want to be mined for code.

For now, my solution was to install captcha alongside mollom and use captcha for user registration and mollom for everything else. When this fix is working, it'll be easy to switch back to mollom.

CarbonPig’s picture

A workaround for Mollom - Facebook Connect Problem

The problem is well documented, but still vague. Essentially, you can't complete the facebook connect module registration workflow on a Drupal site when you are using Mollom as your account registration (in the case of FB connect /fbconnect/user/registration) form protection.

My workaround is to keep Mollom on the site as the primary captcha solution and simply disable it for the registration form. In it's place, you can quickly setup the re-captcha module and use it only on the registration page. I tested the workflow and everything is fine.

This solution is a bit bulky, but will work until new releases or this bug is fixed.

Subscribing,

CarbonPig.com

venusrising’s picture

Status: Needs review » Active

Some good news. The legal module works with Facebook connect fast registration. The only issue we noticed (after spending a whole day hunting it down) is that when setting fast reg make sure Manual is set under login/out the auto login caused a redirect loop from firefox but perhaps we could get the fixed going forward.
The legal module bypasses Mollom too so it goes through the whole process great. hope this helps someone.

quadbyte’s picture

This one bugged me for a while. For sometimes I had both Mollom and reCaptcha installed as suggested in #28, but I was not satisfied by this workaround: too much memory used by reCaptcha and non homogenous captcha on the website.

So I found another workaround, I figured I don't really need the (Mollom) captcha when someone register via fbconnect, as most bots will fail to fill the facebook login popup box (at least I hope so...) so I simply removed the mollom captcha on the fbconnect register page.

With fbconnect installed and mollom installed and activated on user register page (+ user lost password page, but not relevant here)

/**
 * Implementation of hook_form_alter().
 */
function YOURMODULE_form_alter(&$form, $form_state, $form_id) {
  if($form_id == 'fbconnect_register_page') {
    unset($form['mollom']);  // remove mollom captcha display
    $form['#validate'] = array('user_register_validate'); // keep only necessary validate handler
    $form['#submit'] = array('user_register_submit', 'fbconnect_register_form_submit'); // keep only necessary submit handlers
  }  
}
guruslot’s picture

Any news on CAPTCHA Issue resolution?
Please give us a feedback.

  • vectoroc committed a473473 on
    #869798 : show the reason that prevents users registration #852582 :...
gobinathm’s picture

Issue summary: View changes
Status: Active » Closed (outdated)

Closing the issue. It was inactive for a long time & it's related to a Drupal Version which is not supported anymore