danielebarchiesi@2: t('User role names'), danielebarchiesi@2: 'description' => t('The role names the user account is a member of as comma separated list.'), danielebarchiesi@2: 'needs-data' => 'user', danielebarchiesi@2: ); danielebarchiesi@2: $user['role-ids'] = array( danielebarchiesi@2: 'name' => t('User role ids'), danielebarchiesi@2: 'description' => t('The role ids the user account is a member of as comma separated list.'), danielebarchiesi@2: 'needs-data' => 'user', danielebarchiesi@2: ); danielebarchiesi@2: danielebarchiesi@2: return array( danielebarchiesi@2: 'tokens' => array('user' => $user), danielebarchiesi@2: ); danielebarchiesi@2: } danielebarchiesi@2: danielebarchiesi@2: /** danielebarchiesi@2: * Implements hook_tokens(). danielebarchiesi@2: */ danielebarchiesi@2: function googleanalytics_tokens($type, $tokens, array $data = array(), array $options = array()) { danielebarchiesi@2: $sanitize = !empty($options['sanitize']); danielebarchiesi@2: $replacements = array(); danielebarchiesi@2: danielebarchiesi@2: if ($type == 'user' && !empty($data['user']->roles)) { danielebarchiesi@2: $account = $data['user']; danielebarchiesi@2: danielebarchiesi@2: foreach ($tokens as $name => $original) { danielebarchiesi@2: switch ($name) { danielebarchiesi@2: // Basic user account information. danielebarchiesi@2: case 'role-names': danielebarchiesi@2: $names = implode(',', $account->roles); danielebarchiesi@2: $replacements[$original] = $sanitize ? check_plain($names) : $names; danielebarchiesi@2: break; danielebarchiesi@2: danielebarchiesi@2: case 'role-ids': danielebarchiesi@2: $ids = implode(',', array_keys($account->roles)); danielebarchiesi@2: $replacements[$original] = $sanitize ? check_plain($ids) : $ids; danielebarchiesi@2: break; danielebarchiesi@2: } danielebarchiesi@2: } danielebarchiesi@2: } danielebarchiesi@2: danielebarchiesi@2: return $replacements; danielebarchiesi@2: }