markocupic/contao-oauth2-client

Contao OAuth2 Client

1.0.2 2024-01-15 14:40 UTC

This package is auto-updated.

Last update: 2024-04-15 15:08:18 UTC


README

Logo Marko Cupic

Contao OAuth2 Client

This extension serves as a wrapper plugin for OAuth2 plugins like contao-github-login and contains a backend and frontend authenticator.

Follow these steps to create your oauth2 plugin.

  • Create a bundle and name it vendorname/contao-***-login
  • In your composer require 'markocupic/contao-oauth2-client', the OAuth base extension league/oauth2-github an e.g. league/oauth2-client. Have a look at knpuniversity/oauth2-client-bundle to find the client library of your choice.
  • Create for your backend and your frontend authenticators the ***BackendClientFactory and ***FrontendClientFactory class. Both classes have to extend Markocupic\ContaoOAuth2Client\OAuth2\Client\AbstractClientFactory.
  • As client name you should choose something like this: github_frontend or google_backend. Use only letters and the underscore.
  • Create for your button generator class ButtonGenerator that have to implement Markocupic\ContaoOAuth2Client\ButtonGenerator\ButtonGeneratorInterface
  • Create your Extension and Configuration class in the src/DependencyInjection folder.
  • Create your button and store it in the templates/backend directory of your bundle.
  • Create the frontend template mod_login_*** that extends @MarkocupicContaoOAuth2Client/frontend/modules/_mod_login_oauth2_base.html.twig button and store it in the templates/backend directory of your bundle.