Mercurial > hg > rr-repo
annotate sites/all/modules/google_analytics/googleanalytics.tokens.inc @ 2:b74b41bb73f0
-- Google analytics module
author | danieleb <danielebarchiesi@me.com> |
---|---|
date | Thu, 22 Aug 2013 17:22:54 +0100 |
parents | |
children |
rev | line source |
---|---|
danielebarchiesi@2 | 1 <?php |
danielebarchiesi@2 | 2 |
danielebarchiesi@2 | 3 /** |
danielebarchiesi@2 | 4 * @file |
danielebarchiesi@2 | 5 * Builds placeholder replacement tokens for user-related data. |
danielebarchiesi@2 | 6 */ |
danielebarchiesi@2 | 7 |
danielebarchiesi@2 | 8 /** |
danielebarchiesi@2 | 9 * Implements hook_token_info(). |
danielebarchiesi@2 | 10 */ |
danielebarchiesi@2 | 11 function googleanalytics_token_info() { |
danielebarchiesi@2 | 12 $user['role-names'] = array( |
danielebarchiesi@2 | 13 'name' => t('User role names'), |
danielebarchiesi@2 | 14 'description' => t('The role names the user account is a member of as comma separated list.'), |
danielebarchiesi@2 | 15 'needs-data' => 'user', |
danielebarchiesi@2 | 16 ); |
danielebarchiesi@2 | 17 $user['role-ids'] = array( |
danielebarchiesi@2 | 18 'name' => t('User role ids'), |
danielebarchiesi@2 | 19 'description' => t('The role ids the user account is a member of as comma separated list.'), |
danielebarchiesi@2 | 20 'needs-data' => 'user', |
danielebarchiesi@2 | 21 ); |
danielebarchiesi@2 | 22 |
danielebarchiesi@2 | 23 return array( |
danielebarchiesi@2 | 24 'tokens' => array('user' => $user), |
danielebarchiesi@2 | 25 ); |
danielebarchiesi@2 | 26 } |
danielebarchiesi@2 | 27 |
danielebarchiesi@2 | 28 /** |
danielebarchiesi@2 | 29 * Implements hook_tokens(). |
danielebarchiesi@2 | 30 */ |
danielebarchiesi@2 | 31 function googleanalytics_tokens($type, $tokens, array $data = array(), array $options = array()) { |
danielebarchiesi@2 | 32 $sanitize = !empty($options['sanitize']); |
danielebarchiesi@2 | 33 $replacements = array(); |
danielebarchiesi@2 | 34 |
danielebarchiesi@2 | 35 if ($type == 'user' && !empty($data['user']->roles)) { |
danielebarchiesi@2 | 36 $account = $data['user']; |
danielebarchiesi@2 | 37 |
danielebarchiesi@2 | 38 foreach ($tokens as $name => $original) { |
danielebarchiesi@2 | 39 switch ($name) { |
danielebarchiesi@2 | 40 // Basic user account information. |
danielebarchiesi@2 | 41 case 'role-names': |
danielebarchiesi@2 | 42 $names = implode(',', $account->roles); |
danielebarchiesi@2 | 43 $replacements[$original] = $sanitize ? check_plain($names) : $names; |
danielebarchiesi@2 | 44 break; |
danielebarchiesi@2 | 45 |
danielebarchiesi@2 | 46 case 'role-ids': |
danielebarchiesi@2 | 47 $ids = implode(',', array_keys($account->roles)); |
danielebarchiesi@2 | 48 $replacements[$original] = $sanitize ? check_plain($ids) : $ids; |
danielebarchiesi@2 | 49 break; |
danielebarchiesi@2 | 50 } |
danielebarchiesi@2 | 51 } |
danielebarchiesi@2 | 52 } |
danielebarchiesi@2 | 53 |
danielebarchiesi@2 | 54 return $replacements; |
danielebarchiesi@2 | 55 } |