summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOlav Morken <olav.morken@uninett.no>2010-11-18 12:13:08 +0000
committerOlav Morken <olav.morken@uninett.no>2010-11-18 12:13:08 +0000
commit4e12c1a80a4e97eddedab9df34da93a0a88888d5 (patch)
tree75cd84b91f29e5825129cf6e122d7818aaff4222
parent41d950a83b1b453e5599e51b076368b70d723544 (diff)
downloadsimplesamlphp-4e12c1a80a4e97eddedab9df34da93a0a88888d5.zip
simplesamlphp-4e12c1a80a4e97eddedab9df34da93a0a88888d5.tar.gz
simplesamlphp-4e12c1a80a4e97eddedab9df34da93a0a88888d5.tar.bz2
twitter: New attribute names + attribute map.
Thanks to Brook Schofield for providing this patch. git-svn-id: https://simplesamlphp.googlecode.com/svn/trunk@2654 44740490-163a-0410-bde0-09ae8108e29a
-rw-r--r--attributemap/twitter2name.php17
-rw-r--r--modules/authtwitter/lib/Auth/Source/Twitter.php16
2 files changed, 24 insertions, 9 deletions
diff --git a/attributemap/twitter2name.php b/attributemap/twitter2name.php
new file mode 100644
index 0000000..605b561
--- /dev/null
+++ b/attributemap/twitter2name.php
@@ -0,0 +1,17 @@
+<?php
+$attributemap = array(
+
+ // Generated Twitter Attributes
+ 'twitter_screen_n_realm' => 'eduPersonPrincipalName', // screen_name@twitter.com
+ //'twitter_at_screen_name' => 'eduPersonPrincipalName', // legacy @twitter format
+ 'twitter_targetedID' => 'eduPersonTargetedID', // http://twitter.com!id_str
+
+ // Attributes Returned by Twitter
+ 'twitter.screen_name' => 'uid', // equivalent to twitter username without leading @
+ //'twitter.id_str' => 'uid', // persistent numeric twitter user id
+ 'twitter.name' => 'displayName',
+ 'twitter.url' => 'labeledURI',
+ 'twitter.lang' => 'preferredLanguage',
+ //'twitter.profile_image_url' => 'jpegPhoto',
+ 'twitter.description' => 'description',
+);
diff --git a/modules/authtwitter/lib/Auth/Source/Twitter.php b/modules/authtwitter/lib/Auth/Source/Twitter.php
index d6211e5..1fba2eb 100644
--- a/modules/authtwitter/lib/Auth/Source/Twitter.php
+++ b/modules/authtwitter/lib/Auth/Source/Twitter.php
@@ -115,18 +115,16 @@ class sspmod_authtwitter_Auth_Source_Twitter extends SimpleSAML_Auth_Source {
$attributes = array();
foreach($userdata AS $key => $value) {
if (is_string($value))
- $attributes[$key] = array((string)$value);
+ $attributes['twitter.' . $key] = array((string)$value);
}
- if (array_key_exists('screen_name', $userdata) )
- $attributes['eduPersonPrincipalName'] = array('@' . $userdata['screen_name']);
- if (array_key_exists('name', $userdata) )
- $attributes['displayName'] = array($userdata['name']);
- if (array_key_exists('profile_image_url', $userdata) )
- $attributes['jpegPhoto'] = array(base64_encode(file_get_contents($userdata['profile_image_url'])));
- if (array_key_exists('url', $userdata) )
- $attributes['labeledURI'] = array($userdata['url']);
+ if (array_key_exists('screen_name', $userdata) ) {
+ $attributes['twitter_at_screen_name'] = array('@' . $userdata['screen_name']);
+ $attributes['twitter_screen_n_realm'] = array($userdata['screen_name'] . '@twitter.com');
+ }
+ if (array_key_exists('id_str', $userdata) )
+ $attributes['twitter_targetedID'] = array('http://twitter.com!' . $userdata['id_str']);
$state['Attributes'] = $attributes;