AuthDelegate (objeto)

El objeto AuthDelegate implementa el comportamiento deseado para realizar acciones y eventos de autenticación de modo que pueda personalizar la integración con el sistema de autenticación existente en el sitio.

Creación de un delegado de autenticación

El paquete de autenticación debe proporcionarse con un delegado de autenticación para poder realizar una acción. Un delegado de autenticación es cualquier objeto JavaScript que implementa uno de los métodos de este tema.

.login(finishLogin)

Inicie sesión en un usuario válido e invoque la función finishLogin con un objeto Error si se ha producido un error o con las credenciales de Livefyre del usuario. Las implementaciones comunes de este método redirigen al usuario a una página de inicio de sesión o abren una nueva ventana o modal.

En este ejemplo se notifica automáticamente a la autenticación de un usuario de Livefyre con el token de autenticación, token:

authDelegate.login = function (finishLogin) { 
 finishLogin(null, { 
   livefyre: 'token' 
 }); 
};

El delegado de inicio de sesión más sencillo puede preguntar al usuario final su token de autenticación de Livefyre.

authDelegate.login = function contrivedLogin(finishLogin) { 
  var lfToken = prompt("Please type your Livefyre Token");  
  if (lfToken.length === 0) { 
   return finishLogin(new Error("User failed to type their lftoken")); 
  }  
 finishLogin(null, { 
   livefyre: lfToken 
 }); 
};

.logout(finishLogout)

Cierre la sesión de un usuario e invoque la función finishLogout con un objeto Error si se ha producido un error o nulo para notificar a la autenticación que el cierre de sesión se ha realizado correctamente.

Por ejemplo:

authDelegate.logout = function (finishLogout) { 
 clearUserSession(); //logic to clear a user session  
 finishLogout(null); 
}

.viewProfile(user)

Realice una acción para ver el perfil de un usuario.

authDelegate.viewProfile = function (user) { 
 window.open(user.get('profileUrl')); 
}

.editProfile(user)

Realice acciones para editar el perfil de un usuario.

authDelegate.editProfile = function (user) { 
 window.open(user.get('profileUrl') + '/edit/'); 
}

Al implementar todos los métodos enumerados anteriormente, la autenticación se puede configurar con un delegado de autenticación personalizado. Una vez construido un delegado, se puede proporcionar a auth mediante el método delegado.

var authDelegate = { 
 login: function(cb) { 
  ... 
  cb(null); 
 }, 
 ... 
} 
  
auth.delegate(authDelegate);

En esta página