[Tutorial- Avanzado] Integrar Twitter Login a MyBB
Este tutorial es para integrar Twitter con el sistema de Login de MyBB. Los usuarios seran capaces de conectarse en el foro con sus cuentas de Twitte...

Este tutorial es para integrar Twitter con el sistema de Login de MyBB. Los usuarios seran capaces de conectarse en el foro con sus cuentas de Twitter. Si el visitante jamas habia tenido una cuenta en el foro... el mismo sistema lo ayuda a crearce una por primera vez. Si el visitante cuenta ya con una cuenta en el foro, esta simplemente es vinculada a la de Twitter.

Requerimentos:
Un servidor con PHP5 y SQLite
Un conjunto de Aplicación and y "Llave secreta" proporcionada por Twitter
Nota: La URL del Callback para la Twitter app tiene que estar en http://dominio.com/directoriodelforo/callback.php

Pasos:

Primero, En el panel de admin, ir a Estilos y Plantillas > Plantillas > Plantillas Globales > Añadir Plantilla

Dale a esta plantilla el titulo siguiente:
Cita:twtregisteruname

Introduce en ella el siguiente grupo de codigo HTML (Puedes editarla a tu gusto)
Código:
<html>
<head>
<title>Screeze: Select a username</title>
{$headerinclude}
<script type="text/javascript">
function process(f){
var now = new Date();
f.timezone.value = now.gettimezoneoffset();
return true;
}
</script>
</head>
<body>
{$header}
Hola! {$twname}! Parece que es la primera vez que te logeas en el foro con tu cuenta de twitter. Porfavor selecciona un nombre de usuario para usar en el foro y asi puedas logearte!.<br/>
<form action="./callback.php" method="post" onsubmit="return process(this)">
Nombre a utilizar:<input name="username" type="text" value="{$twname}">
<input name="timezone" type="hidden" value="0">
<input value="Aceptar" type="submit">
</form>
<p>Al clickear "Aceptar" tu estas de acuerdo con la Politica de Privacidad Y Los Terminos de el foro.</p>
{$footer}
</body>
</html>
Guarda la plantilla.

Repite para crear otra plantilla. A esta plantilla hay que titularla:
Cita:twdisconnect_normal

Introduce lo siguiente (Puedes editarla a tu gusto)
Código:
<html>
<head>
<title>Desconección de usuario</title>
{$headerinclude}
<SCRIPT LANGUAGE="JavaScript">
  function redirect() {
    setTimeout("location.href='{$settings['bburl']}' ", 5000);
  }
  </SCRIPT>
</head>
<body onLoad="redirect()">
{$header}
<h2>Desconeccion de la cuenta de twitter...{$fbdistat}</h2>
<br/>
Redirijiendo al indice del foro...
{$footer}
</body>
</html>
Guardas la plantilla.

Ahora ve a Configuración > Campos de Perfil Personalizados

Nota que el numero de ID (fid) aparece listado.

Vamos a agregar un nuevo campo.

Coloca el nuevo campo como se indica a continuación:

Titulo: Twitter Token
Descripción: Token
Tipo: Caja de Texto
Longitud Máxima: 65535
Opciones: [Dejar en blanco]
Orden de Vista: Uno mas que el ultimo ID agregado
Requerido: No
Editable: No
Oculto: Si

Guarda ya ese campo y agrega otro

Coloca el nuevo campo con la información siguiente:

Titulo: Twitter Secret
Descripción: Secret
Tipo: Caja de Texto
Longitud Máxima: 65535
Opciones: [Dejar en blanco]
Orden de Vista: Una mas que la ID del campo agregado anteriormente
Requerido: No
Editable: No
Oculto: Si

Guarda ese campo y agregaremos uno mas

El que sigue va de la siguiente manera:

Title: Registrado con Twitter
Desc: Resgistrado
Type: Caja de texto
MaxLength: 65535
FieldLength: 0
Opciones: [Dejar en blanco]
Orden de Vista: Una mas que la ID del campo agregado anteriormente (Tenga en cuenta este nuevo número también)
Requerido: No
Editable: No
Oculto: Si

Guardar este campo

Guarda las ID´s en un lugar seguro pues las utilizaremos después.

Sube el archivo callback.php file de lso archivos adjuntos a el root de tu foro. Edita lo que creas necesario del archivo.
NOTA: el fid13, fid14 y fid15 tienen que ser cambiados por elnumero de "fid" que te dieron los campos anteriormente en el mismo orden(solo remplaza el numero, EJEMPLO: xfid teniendo en cuenta que la X es el numero).

Sube el directorio twitterOAuth adjunto a el root de tu foro.


Sube el archivo twlogin.php a el root de tu foro y edita lo que creas necesario.

Sube el archivo twdisconnect.php y edita lo que creas necesario.

Ahora ya puedes dirigir a los usuarios o invitados a http://tusitio.com/twlogin.php Para vincular dicha cuenta a twitter (si el usuario ya tiene una cuenta regular en el foro) o para registrar y conectar (para usuarios que no tengan una cuenta regular del foro) o conectarse (para usuarios que tienen una cuenta pero no estan loggeados)

Tambien puedes dirigir a tus usuarios a http://tusitio.com/twdisconnect.php para desasociar sus cuentas de Twitter con sus cuentas del foro.

Tenga en cuenta que usted puede utilizar los campos del perfil establecido para determinar en el código que se ha registrado desde Twitter.

Tambien tenga en cuenta que estos usuarios no cuentan con una direccion de correo valida o contraseña... usted puede avisar a dichos usuarios que pueden solicitar que se agregue dicha informacion.

La librería TwitterOAuth es obra de Abraham Williams
([email protected]) - http://abrah.am


Todos los creditos para afrothunder - http://Screeze.com


Cluster: Tengo conocimiento total sobre el uso de dicho tutorial ya que me di a la tarea de contactar personalmente con afrothunder via messenger y pedirle soporte directamente... cualquier duda puedo responderla o en caso de tener dudas mas avanzadas contactar directamente en su thread de soporte ( [TUTORIAL]Integrate Twitter Logins with MyBB )
:)
actualmente todo el sistema esta funcional y el tutorial solo es una traduccion del original... pero tratare de estar actualizandolo para que le saquen el maximo partido Wink
:)
Genial, buen trabajo
Muy Bueno este Tutorial como dice Gustavo un TwitterConnect. +1Rep.
PD: Existe el FaceBook Connect para MyBB..??
Facebook connect solo existe via plugin y es de pago el mas funcional Wink, el gratuito es poco funcional sinceramente



Trick:
Si quieres agregar un mensaje de "Tu cuenta esta registrada gracias a Twitter Connect"

basta con abrir el archivo callback.php y buscar
Código PHP:
    // Set the data for the new user. 

acontinuacion agregas el siguiente campo
Código PHP:
        "usergroup" => x

cambia la X pro el GID del grupo que quieras que sea para los que creen sus cuentas con twitter...

ahora puedes poner una promocion de grupo para que los usuarios se pasen a el grupo de "Registrados" despues de un post o un dia de registro de dichos usuarios...

con esto puedes mostrar un cartel solo para ellos con PHP en plantillas Wink

Saludos.
:)