pike.git
/
lib
/
modules
/
Auth.pmod
/
Github.pike
version
»
Context lines:
10
20
40
80
file
none
3
pike.git/lib/modules/Auth.pmod/Github.pike:1:
+
/*
+
Author: Pontus Östlund <https://profiles.google.com/poppanator>
-
+
Permission to copy, modify, and distribute this source for any legal
+
purpose granted as long as my name is still attached to it. More
+
specifically, the GPL, LGPL and MPL licenses apply to this software.
+
*/
+
+
//! This class is used to OAuth2 authenticate against Github
+
+
inherit Auth.OAuth2.Client;
+
+
constant OAUTH_AUTH_URI = "https://github.com/login/oauth/authorize";
+
constant OAUTH_TOKEN_URI = "https://github.com/login/oauth/access_token";
+
+
enum Scopes {
+
SCOPE_REPO = "repo",
+
SCOPE_GIST = "gist",
+
SCOPE_USER = "user",
+
SCOPE_USER_EMAIL = "user:email",
+
SCOPE_USER_FOLLOW = "user:follow",
+
SCOPE_PUBLIC_REPO = "public_repo",
+
SCOPE_REPO_DEPLOYMENT = "repo_deployment",
+
SCOPE_REPO_STATUS = "repo:status",
+
SCOPE_DELETE_REPO = "delete_repo",
+
SCOPE_NOTIFICATIONS = "notifications",
+
SCOPE_READ_REPO_HOOK = "read:repo_hook",
+
SCOPE_WRITE_REPO_HOOK = "write:repo_hook",
+
SCOPE_ADMIN_REPO_HOOK = "admin:repo_hook",
+
SCOPE_READ_ORG = "read:org",
+
SCOPE_WRITE_ORG = "write:org",
+
SCOPE_ADMIN_ORG = "admin:org",
+
SCOPE_READ_PUBLIC_KEY = "read:public_key",
+
SCOPE_WRITE_PUBLIC_KEY = "write:public_key",
+
SCOPE_ADMIN_PUBLIC_KEY = "admin:public_key"
+
};
+
+
protected multiset(string) valid_scopes = (<
+
SCOPE_REPO,
+
SCOPE_GIST,
+
SCOPE_USER,
+
SCOPE_USER_EMAIL,
+
SCOPE_USER_FOLLOW,
+
SCOPE_PUBLIC_REPO,
+
SCOPE_REPO_DEPLOYMENT,
+
SCOPE_REPO_STATUS,
+
SCOPE_DELETE_REPO,
+
SCOPE_NOTIFICATIONS,
+
SCOPE_READ_REPO_HOOK,
+
SCOPE_WRITE_REPO_HOOK,
+
SCOPE_ADMIN_REPO_HOOK,
+
SCOPE_READ_ORG,
+
SCOPE_WRITE_ORG,
+
SCOPE_ADMIN_ORG,
+
SCOPE_READ_PUBLIC_KEY,
+
SCOPE_WRITE_PUBLIC_KEY,
+
SCOPE_ADMIN_PUBLIC_KEY >);
Newline at end of file added.