You are here

function gdpr_consent_get_conditions in GDPR Consent 7

Function to get conditions.

Parameters

string $language: Language code.

bool $raw: TODO.

Return value

array Return array about conditions.

13 calls to gdpr_consent_get_conditions()
gdpr_consent_accept_form in ./gdpr_consent.module
Consent acceptance form.
gdpr_consent_accept_form_submit in ./gdpr_consent.module
Implements hook_form_id_submit().
gdpr_consent_administration in ./gdpr_consent.admin.inc
Module settings form.
gdpr_consent_conditions_updated in ./gdpr_consent.admin.inc
Check if consents have been updated.
gdpr_consent_form_user_profile_form_alter in ./gdpr_consent.module
Implements hook_form_FORM_ID_alter().

... See full list

File

./gdpr_consent.module, line 917
Module file for GDPR Consent.

Code

function gdpr_consent_get_conditions($language = NULL, $raw = FALSE) {
  $keys = array(
    'tc_id',
    'version',
    'revision',
    'language',
    'conditions',
    'data_details',
    'date',
    'changes',
    'format',
    'format_details',
  );
  if (!empty($language)) {
    $result = db_select('gdpr_consent_conditions', 'lc')
      ->fields('lc')
      ->condition('language', $language)
      ->orderBy('version', 'DESC')
      ->orderBy('revision', 'DESC')
      ->range(0, 1)
      ->addTag('gdpr_consent_conditions_by_language')
      ->execute()
      ->fetchAllAssoc('tc_id');
    $result = (array) array_shift($result);
  }
  else {
    $result = db_select('gdpr_consent_conditions', 'lc')
      ->fields('lc')
      ->orderBy('tc_id', 'DESC')
      ->addTag('gdpr_consent_all_conditions')
      ->execute()
      ->fetchAllAssoc('tc_id');
    $result = (array) array_shift($result);
  }
  foreach ($keys as $key) {
    $conditions[$key] = isset($result[$key]) ? $result[$key] : '';
  }
  $conditions['format'] = empty($conditions['format']) ? filter_default_format() : $conditions['format'];
  return $conditions;
}