added firebase and rudimentary leaderboard support
This commit is contained in:
21
addons/godot-firebase/auth/providers/facebook.gd
Normal file
21
addons/godot-firebase/auth/providers/facebook.gd
Normal file
@@ -0,0 +1,21 @@
|
||||
class_name FacebookProvider
|
||||
extends AuthProvider
|
||||
|
||||
func _init(client_id: String,client_secret: String):
|
||||
randomize()
|
||||
set_client_id(client_id)
|
||||
set_client_secret(client_secret)
|
||||
|
||||
self.redirect_uri = "https://www.facebook.com/v13.0/dialog/oauth?"
|
||||
self.access_token_uri = "https://graph.facebook.com/v13.0/oauth/access_token"
|
||||
self.provider_id = "facebook.com"
|
||||
self.params.scope = "public_profile"
|
||||
self.params.state = str(randf_range(0, 1))
|
||||
if Utilities.is_web():
|
||||
self.should_exchange = false
|
||||
self.params.response_type = "token"
|
||||
else:
|
||||
self.should_exchange = true
|
||||
self.params.response_type = "code"
|
||||
|
||||
|
||||
1
addons/godot-firebase/auth/providers/facebook.gd.uid
Normal file
1
addons/godot-firebase/auth/providers/facebook.gd.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://s5c12vma7ufy
|
||||
14
addons/godot-firebase/auth/providers/github.gd
Normal file
14
addons/godot-firebase/auth/providers/github.gd
Normal file
@@ -0,0 +1,14 @@
|
||||
class_name GitHubProvider
|
||||
extends AuthProvider
|
||||
|
||||
func _init(client_id: String,client_secret: String):
|
||||
randomize()
|
||||
set_client_id(client_id)
|
||||
set_client_secret(client_secret)
|
||||
self.should_exchange = true
|
||||
self.redirect_uri = "https://github.com/login/oauth/authorize?"
|
||||
self.access_token_uri = "https://github.com/login/oauth/access_token"
|
||||
self.provider_id = "github.com"
|
||||
self.params.scope = "user:read"
|
||||
self.params.state = str(randf_range(0, 1))
|
||||
self.params.response_type = "code"
|
||||
1
addons/godot-firebase/auth/providers/github.gd.uid
Normal file
1
addons/godot-firebase/auth/providers/github.gd.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://gactahg7liyw
|
||||
13
addons/godot-firebase/auth/providers/google.gd
Normal file
13
addons/godot-firebase/auth/providers/google.gd
Normal file
@@ -0,0 +1,13 @@
|
||||
class_name GoogleProvider
|
||||
extends AuthProvider
|
||||
|
||||
func _init(client_id: String,client_secret: String):
|
||||
set_client_id(client_id)
|
||||
set_client_secret(client_secret)
|
||||
self.should_exchange = true
|
||||
self.redirect_uri = "https://accounts.google.com/o/oauth2/v2/auth?"
|
||||
self.access_token_uri = "https://oauth2.googleapis.com/token"
|
||||
self.provider_id = "google.com"
|
||||
self.params.response_type = "code"
|
||||
self.params.scope = "email openid profile"
|
||||
self.params.response_type = "code"
|
||||
1
addons/godot-firebase/auth/providers/google.gd.uid
Normal file
1
addons/godot-firebase/auth/providers/google.gd.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://dkl7y6dl8fg8s
|
||||
39
addons/godot-firebase/auth/providers/twitter.gd
Normal file
39
addons/godot-firebase/auth/providers/twitter.gd
Normal file
@@ -0,0 +1,39 @@
|
||||
class_name TwitterProvider
|
||||
extends AuthProvider
|
||||
|
||||
var request_token_endpoint: String = "https://api.twitter.com/oauth/access_token?oauth_callback="
|
||||
|
||||
var oauth_header: Dictionary = {
|
||||
oauth_callback="",
|
||||
oauth_consumer_key="",
|
||||
oauth_nonce="",
|
||||
oauth_signature="",
|
||||
oauth_signature_method="HMAC-SHA1",
|
||||
oauth_timestamp="",
|
||||
oauth_version="1.0"
|
||||
}
|
||||
|
||||
func _init(client_id: String,client_secret: String):
|
||||
randomize()
|
||||
set_client_id(client_id)
|
||||
set_client_secret(client_secret)
|
||||
|
||||
self.oauth_header.oauth_consumer_key = client_id
|
||||
self.oauth_header.oauth_nonce = Time.get_ticks_usec()
|
||||
self.oauth_header.oauth_timestamp = Time.get_ticks_msec()
|
||||
|
||||
|
||||
self.should_exchange = true
|
||||
self.redirect_uri = "https://twitter.com/i/oauth2/authorize?"
|
||||
self.access_token_uri = "https://api.twitter.com/2/oauth2/token"
|
||||
self.provider_id = "twitter.com"
|
||||
self.params.redirect_type = "redirect_uri"
|
||||
self.params.response_type = "code"
|
||||
self.params.scope = "users.read"
|
||||
self.params.state = str(randf_range(0, 1))
|
||||
|
||||
func get_oauth_params() -> String:
|
||||
var params: PackedStringArray = []
|
||||
for key in self.oauth.keys():
|
||||
params.append(key+"="+self.oauth.get(key))
|
||||
return "&".join(params)
|
||||
1
addons/godot-firebase/auth/providers/twitter.gd.uid
Normal file
1
addons/godot-firebase/auth/providers/twitter.gd.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://bwvku5unmemyb
|
||||
Reference in New Issue
Block a user