You are here

oauth2_login.install in OAuth2 Login 7.2

Same filename and directory in other branches
  1. 8 oauth2_login.install
  2. 7 oauth2_login.install

Enable and disable functions for OAuth2 Login.

File

oauth2_login.install
View source
<?php

/**
 * @file
 * Enable and disable functions for OAuth2 Login.
 */

/**
 * Implements hook_enable().
 */
function oauth2_login_enable() {

  // Make sure that the hybriauth provider DrupalOAuth2 is enabled.
  $hybridauth_providers = variable_get('hybridauth_providers');
  $hybridauth_providers['DrupalOAuth2'] = 'DrupalOAuth2';
  variable_set('hybridauth_providers', $hybridauth_providers);

  // Set default values to hybridauth variables.
  variable_set('hybridauth_duplicate_emails', '2');
  variable_set('hybridauth_pictures', 1);
  variable_set('hybridauth_username', '[user:hybridauth:displayName]');
  variable_set('hybridauth_email_verification', 1);
  variable_set('hybridauth_forms', array(
    'user_login' => 0,
    'user_login_block' => 0,
    'user_register_form' => 0,
    'comment_form' => 0,
  ));

  // Make sure that users have the permission to use hybridauth.
  foreach ([
    'anonymous user',
    'authenticated user',
  ] as $role_name) {
    $role = user_role_load_by_name($role_name);
    user_role_grant_permissions($role->rid, [
      'use hybridauth',
    ]);
  }

  // Enable the oauth2 login.
  variable_set('oauth2_login_enabled', TRUE);
  module_load_include('inc', 'oauth2_login', 'oauth2_login.admin');
  oauth2_login_call_hook_enabled();
}

/**
 * Implements hook_disable().
 */
function oauth2_login_disable() {

  // Disable the oauth2 login.
  variable_set('oauth2_login_enabled', FALSE);
  module_load_include('inc', 'oauth2_login', 'oauth2_login.admin');
  oauth2_login_call_hook_enabled();

  // Disable hybriauth provider DrupalOAuth2.
  $hybridauth_providers = variable_get('hybridauth_providers');
  $hybridauth_providers['DrupalOAuth2'] = FALSE;
  variable_set('hybridauth_providers', $hybridauth_providers);

  // Delete variables.
  variable_del('oauth2_login_enabled');
  variable_del('oauth2_login_oauth2_server');
  variable_del('oauth2_login_client_id');
  variable_del('oauth2_login_client_secret');
  variable_del('oauth2_login_skipssl');
  variable_del('oauth2_login_proxy');

  /*
  // Remove the permission for using hybridauth.
  foreach (['anonymous user', 'authenticated user'] as $role_name) {
    $role = user_role_load_by_name($role_name);
    user_role_revoke_permissions($role->rid, ['use hybridauth']);
  }
  */
}

Functions

Namesort descending Description
oauth2_login_disable Implements hook_disable().
oauth2_login_enable Implements hook_enable().