Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Pleroma
pleroma
Commits
5fe9e4dd
Commit
5fe9e4dd
authored
Sep 09, 2017
by
lain
Browse files
Do oauth redirect.
parent
d625d8db
Changes
1
Hide whitespace changes
Inline
Side-by-side
lib/pleroma/web/oauth/oauth_controller.ex
View file @
5fe9e4dd
...
...
@@ -14,14 +14,19 @@ def authorize(conn, params) do
}
end
def
create_authorization
(
conn
,
%{
"authorization"
=>
%{
"name"
=>
name
,
"password"
=>
password
,
"client_id"
=>
client_id
}}
=
params
)
do
def
create_authorization
(
conn
,
%{
"authorization"
=>
%{
"name"
=>
name
,
"password"
=>
password
,
"client_id"
=>
client_id
,
"redirect_uri"
=>
redirect_uri
}}
=
params
)
do
with
%
User
{}
=
user
<-
User
.
get_cached_by_nickname
(
name
),
true
<-
Pbkdf2
.
checkpw
(
password
,
user
.
password_hash
),
%
App
{}
=
app
<-
Repo
.
get_by
(
App
,
client_id:
client_id
),
{
:ok
,
auth
}
<-
Authorization
.
create_authorization
(
app
,
user
)
do
render
conn
,
"results.html"
,
%{
auth:
auth
}
if
redirect_uri
==
"urn:ietf:wg:oauth:2.0:oob"
do
render
conn
,
"results.html"
,
%{
auth:
auth
}
else
url
=
"
#{
redirect_uri
}
?code=
#{
auth
.
token
}
"
redirect
(
conn
,
external:
url
)
end
end
end
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment