You are here

function piwik_user in Piwik Web Analytics 6.2

Same name and namespace in other branches
  1. 5 piwik.module \piwik_user()
  2. 6 piwik.module \piwik_user()

Implementation of hook_user().

Allow users to decide if tracking code will be added to pages or not.

File

./piwik.module, line 272
Drupal Module: Piwik

Code

function piwik_user($type, $edit, &$account, $category = NULL) {
  switch ($type) {
    case 'form':
      if ($category == 'account' && user_access('opt-in or out of tracking') && ($custom = variable_get('piwik_custom', 0)) != 0 && _piwik_visibility_roles($account)) {
        $form['piwik'] = array(
          '#type' => 'fieldset',
          '#title' => t('Piwik configuration'),
          '#weight' => 3,
          '#collapsible' => TRUE,
          '#tree' => TRUE,
        );
        switch ($custom) {
          case 1:
            $description = t('Users are tracked by default, but you are able to opt out.');
            break;
          case 2:
            $description = t('Users are <em>not</em> tracked by default, but you are able to opt in.');
            break;
        }
        $form['piwik']['custom'] = array(
          '#type' => 'checkbox',
          '#title' => t('Enable user tracking'),
          '#description' => $description,
          '#default_value' => isset($account->piwik['custom']) ? $account->piwik['custom'] : $custom == 1,
        );
        return $form;
      }
      break;
  }
}