Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

google_id absent de la table #9

Open
brunodegoyrans opened this issue Aug 6, 2019 · 4 comments
Open

google_id absent de la table #9

brunodegoyrans opened this issue Aug 6, 2019 · 4 comments

Comments

@brunodegoyrans
Copy link

Dans le fichier magiclogin_with_google.php, il est fait référence au champs google_id de la table spip_auteurs.
Dans l'installation que j'ai, ce champs n'a pas été ajouté alors que le champs facebook_id a bien été ajouté.
Est-ce normal ?

Du coup, cela pourrait expliquer que j'obtiens systématiquement le formulaire de signup même si je me suis déjà connecté avec GG ?

@brunodegoyrans
Copy link
Author

Dans magiclogin_administrations.php :

	$maj['create'] = array(
		array('sql_alter',"TABLE spip_auteurs ADD twitter_token VARCHAR(255) DEFAULT '' NOT NULL"),
		array('sql_alter',"TABLE spip_auteurs ADD twitter_token_secret VARCHAR(255) DEFAULT '' NOT NULL"),
		array('sql_alter',"TABLE spip_auteurs ADD facebook_id VARCHAR(255) DEFAULT '' NOT NULL"),
	);

	$maj['0.2.0'] = array(
		array('sql_alter',"TABLE spip_auteurs ADD twitter_token VARCHAR(255) DEFAULT '' NOT NULL"),
		array('sql_alter',"TABLE spip_auteurs ADD twitter_token_secret VARCHAR(255) DEFAULT '' NOT NULL"),
		array('sql_alter',"TABLE spip_auteurs ADD facebook_id VARCHAR(255) DEFAULT '' NOT NULL"),
	);
	$maj['0.2.1'] = array(
		array('sql_alter',"TABLE spip_auteurs ADD google_id VARCHAR(255) DEFAULT '' NOT NULL"),
	);

Le champs google_id n'est ajouté qu'en cas de mise à jour du plugin en 0.2.1. Mais si on part d'une installation nouvelle du plugin, est-ce qu'on ne tombe pas dans le cas $maj['create'] et donc la colonne google_id n'est pas ajoutée ?

@Cerdic
Copy link
Member

Cerdic commented Aug 7, 2019

En effet c'est visiblement la cause du bug

@brunodegoyrans
Copy link
Author

Je ne maîtrise pas trop le mécanisme de xxx_upgrade mais je pense qu'il suffit d'ajouter la ligne de google_id dans $maj['create']


	$maj['create'] = array(
		array('sql_alter',"TABLE spip_auteurs ADD twitter_token VARCHAR(255) DEFAULT '' NOT NULL"),
		array('sql_alter',"TABLE spip_auteurs ADD twitter_token_secret VARCHAR(255) DEFAULT '' NOT NULL"),
		array('sql_alter',"TABLE spip_auteurs ADD facebook_id VARCHAR(255) DEFAULT '' NOT NULL"),
		array('sql_alter',"TABLE spip_auteurs ADD google_id VARCHAR(255) DEFAULT '' NOT NULL"),
	);

Je commiterai la correction prochainement.

@brunodegoyrans
Copy link
Author

A partir du moment où le bugue est corrigé, le google_id est bien enregistré en base. Pour les connexions suivantes, le visiteur a juste à cliquer sur le bouton GG et il est directement connecté. Il n'y a plus de mail de confirmation qui lui est envoyé systématiquement.

Avant la correction, le google_id n'était pas enregistré. Donc en cas de reconnexion, magiclogin voyait que le compte existait déjà, mais sans lien avec un compte Google. Donc on tombait dans le cas d'un auteur existant et alors un mail de confirmation était envoyé.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants