diff options
author | 2011-11-01 22:23:41 +0100 | |
---|---|---|
committer | 2011-11-01 22:23:41 +0100 | |
commit | 81f483aabf6d40f7d3379fb2a85ecb6a5fd218fb (patch) | |
tree | 5a3a9a81072df4ec54e36d30f77559ce9d145bbe | |
parent | Add get_bool request (diff) | |
download | python-github3-81f483aabf6d40f7d3379fb2a85ecb6a5fd218fb.tar.xz python-github3-81f483aabf6d40f7d3379fb2a85ecb6a5fd218fb.zip |
Complete AuthUser handler
-rw-r--r-- | github3/handlers/user.py | 12 | ||||
-rw-r--r-- | github3/models/__init__.py | 2 | ||||
-rw-r--r-- | github3/models/user.py | 9 |
3 files changed, 22 insertions, 1 deletions
diff --git a/github3/handlers/user.py b/github3/handlers/user.py index 47f1a92..5f5d130 100644 --- a/github3/handlers/user.py +++ b/github3/handlers/user.py @@ -60,3 +60,15 @@ class AuthUser(User): def get_emails(self): return self._get_raw('emails') + def get_is_following(self, user): + username = getattr(user, 'login', False) + if not username: + username = user + return self._get_bool('following', username) + + def get_keys(self): + return self._get_resources('keys', model=models.Key) + + def get_key(self, key_id): + return self._get_resource('keys', key_id, model=models.Key) + diff --git a/github3/models/__init__.py b/github3/models/__init__.py index 6e4db1b..ff0c28a 100644 --- a/github3/models/__init__.py +++ b/github3/models/__init__.py @@ -1,4 +1,4 @@ -from .user import AuthUser, User +from .user import AuthUser, User, Key from .repos import Repo from .orgs import Org from .gists import Gist diff --git a/github3/models/user.py b/github3/models/user.py index 7c730f6..3f0efc4 100644 --- a/github3/models/user.py +++ b/github3/models/user.py @@ -14,6 +14,15 @@ class Plan(BaseResource): def __repr__(self): return '<Plan {0}>'.format(str(self.name)) +class Key(BaseResource): + """Github Key object model.""" + + _strs = ['url', 'title', 'key'] + _ints = ['id'] + + def __repr__(self): + return '<Key {0}>'.format(str(self.title)) + class User(BaseResource): """Github User object model.""" |