Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
G
gitlab-ce
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Boxiang Sun
gitlab-ce
Commits
33ba32e6
Commit
33ba32e6
authored
Feb 29, 2016
by
Phil Hughes
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Applications tab on profile settings
Closes #13855
parent
f8c4dc97
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
119 additions
and
86 deletions
+119
-86
app/assets/stylesheets/pages/profile.scss
app/assets/stylesheets/pages/profile.scss
+14
-0
app/controllers/oauth/applications_controller.rb
app/controllers/oauth/applications_controller.rb
+5
-1
app/controllers/profiles_controller.rb
app/controllers/profiles_controller.rb
+1
-0
app/views/doorkeeper/applications/_delete_form.html.haml
app/views/doorkeeper/applications/_delete_form.html.haml
+7
-1
app/views/doorkeeper/applications/_form.html.haml
app/views/doorkeeper/applications/_form.html.haml
+13
-18
app/views/profiles/applications.html.haml
app/views/profiles/applications.html.haml
+79
-66
No files found.
app/assets/stylesheets/pages/profile.scss
View file @
33ba32e6
...
@@ -175,3 +175,17 @@
...
@@ -175,3 +175,17 @@
color
:
$profile-settings-link-color
;
color
:
$profile-settings-link-color
;
}
}
}
}
.profile-settings-message
{
line-height
:
32px
;
color
:
#9E8E60
;
background-color
:
#FBF2D9
;
border
:
1px
solid
#F0E2BB
;
border-radius
:
3px
;
}
.oauth-applications
{
form
{
display
:
inline-block
;
}
}
app/controllers/oauth/applications_controller.rb
View file @
33ba32e6
...
@@ -11,6 +11,10 @@ class Oauth::ApplicationsController < Doorkeeper::ApplicationsController
...
@@ -11,6 +11,10 @@ class Oauth::ApplicationsController < Doorkeeper::ApplicationsController
head
:forbidden
and
return
head
:forbidden
and
return
end
end
def
new
redirect_to
applications_profile_url
end
def
create
def
create
@application
=
Doorkeeper
::
Application
.
new
(
application_params
)
@application
=
Doorkeeper
::
Application
.
new
(
application_params
)
...
@@ -20,7 +24,7 @@ class Oauth::ApplicationsController < Doorkeeper::ApplicationsController
...
@@ -20,7 +24,7 @@ class Oauth::ApplicationsController < Doorkeeper::ApplicationsController
flash
[
:notice
]
=
I18n
.
t
(
:notice
,
scope:
[
:doorkeeper
,
:flash
,
:applications
,
:create
])
flash
[
:notice
]
=
I18n
.
t
(
:notice
,
scope:
[
:doorkeeper
,
:flash
,
:applications
,
:create
])
redirect_to
oauth_application_url
(
@application
)
redirect_to
oauth_application_url
(
@application
)
else
else
re
nder
:new
re
direct_to
applications_profile_url
,
flash:
{
application:
@application
}
end
end
end
end
...
...
app/controllers/profiles_controller.rb
View file @
33ba32e6
...
@@ -13,6 +13,7 @@ class ProfilesController < Profiles::ApplicationController
...
@@ -13,6 +13,7 @@ class ProfilesController < Profiles::ApplicationController
@authorized_tokens
=
current_user
.
oauth_authorized_tokens
@authorized_tokens
=
current_user
.
oauth_authorized_tokens
@authorized_anonymous_tokens
=
@authorized_tokens
.
reject
(
&
:application
)
@authorized_anonymous_tokens
=
@authorized_tokens
.
reject
(
&
:application
)
@authorized_apps
=
@authorized_tokens
.
map
(
&
:application
).
uniq
-
[
nil
]
@authorized_apps
=
@authorized_tokens
.
map
(
&
:application
).
uniq
-
[
nil
]
@application
=
flash
[
:application
]
||
Doorkeeper
::
Application
.
new
end
end
def
update
def
update
...
...
app/views/doorkeeper/applications/_delete_form.html.haml
View file @
33ba32e6
-
submit_btn_css
||=
'btn btn-link btn-remove btn-sm'
-
submit_btn_css
||=
'btn btn-link btn-remove btn-sm'
=
form_tag
oauth_application_path
(
application
)
do
=
form_tag
oauth_application_path
(
application
)
do
%input
{
:name
=>
"_method"
,
:type
=>
"hidden"
,
:value
=>
"delete"
}
/
%input
{
:name
=>
"_method"
,
:type
=>
"hidden"
,
:value
=>
"delete"
}
/
=
submit_tag
'Destroy'
,
onclick:
"return confirm('Are you sure?')"
,
class:
submit_btn_css
-
if
defined?
small
\ No newline at end of file
=
button_tag
type:
"submit"
,
class:
"btn btn-transparent"
,
data:
{
confirm:
"Are you sure?"
}
do
%span
.sr-only
Destroy
=
icon
(
'trash'
)
-
else
=
submit_tag
'Destroy'
,
data:
{
confirm:
"Are you sure?"
},
class:
submit_btn_css
app/views/doorkeeper/applications/_form.html.haml
View file @
33ba32e6
=
form_for
application
,
url:
doorkeeper_submit_path
(
application
),
html:
{
class:
'form-horizontal'
,
role:
'form'
}
do
|
f
|
=
form_for
application
,
url:
doorkeeper_submit_path
(
application
),
html:
{
role:
'form'
}
do
|
f
|
-
if
application
.
errors
.
any?
-
if
application
.
errors
.
any?
.alert.alert-danger
.alert.alert-danger
%ul
%ul
...
@@ -6,25 +6,20 @@
...
@@ -6,25 +6,20 @@
%li
=
msg
%li
=
msg
.form-group
.form-group
=
f
.
label
:name
,
class:
'control-label'
=
f
.
label
:name
,
class:
'label-light'
=
f
.
text_field
:name
,
class:
'form-control'
,
required:
true
.col-sm-10
=
f
.
text_field
:name
,
class:
'form-control'
,
required:
true
.form-group
.form-group
=
f
.
label
:redirect_uri
,
class:
'control-label'
=
f
.
label
:redirect_uri
,
class:
'label-light'
=
f
.
text_area
:redirect_uri
,
class:
'form-control'
,
required:
true
.col-sm-10
=
f
.
text_area
:redirect_uri
,
class:
'form-control'
,
required:
true
%span
.help-block
Use one line per URI
-
if
Doorkeeper
.
configuration
.
native_redirect_uri
%span
.help-block
%span
.help-block
Use one line per URI
Use
-
if
Doorkeeper
.
configuration
.
native_redirect_uri
%code
=
Doorkeeper
.
configuration
.
native_redirect_uri
%span
.help-block
for local tests
Use
%code
=
Doorkeeper
.
configuration
.
native_redirect_uri
for local tests
.form-actions
.prepend-top-default
=
f
.
submit
'Submit'
,
class:
"btn btn-create"
=
f
.
submit
'Add application'
,
class:
"btn btn-create"
=
link_to
"Cancel"
,
applications_profile_path
,
class:
"btn btn-cancel"
app/views/profiles/applications.html.haml
View file @
33ba32e6
-
page_title
"Applications"
-
page_title
"Applications"
-
header_title
page_title
,
applications_profile_path
-
header_title
page_title
,
applications_profile_path
.alert.alert-help.prepend-top-default
.row.prepend-top-default
-
if
user_oauth_applications?
.col-lg-3.profile-settings-sidebar
Manage applications that can use GitLab as an OAuth provider,
%h4
.prepend-top-0
and applications that you've authorized to use your account.
=
page_title
-
else
%p
Manage applications that you've authorized to use your account.
-
if
user_oauth_applications?
Manage applications that can use GitLab as an OAuth provider,
and applications that you've authorized to use your account.
-
else
Manage applications that you've authorized to use your account.
.col-lg-9
-
if
user_oauth_applications?
%h5
Add new application
=
render
'doorkeeper/applications/form'
,
application:
@application
%hr
-
if
user_oauth_applications?
.oauth-applications
%h5
Your applications (
#{
@applications
.
size
}
)
-
if
@applications
.
any?
.table-responsive
%table
.table.table-striped
%thead
%tr
%th
Name
%th
Callback URL
%th
Clients
%th
{
width:
105
}
%tbody
-
@applications
.
each
do
|
application
|
%tr
{
:id
=>
"application_#{application.id}"
}
%td
=
link_to
application
.
name
,
oauth_application_path
(
application
)
%td
-
application
.
redirect_uri
.
split
.
each
do
|
uri
|
%div
=
uri
%td
=
application
.
access_tokens
.
count
%td
=
link_to
edit_oauth_application_path
(
application
),
class:
"btn btn-transparent append-right-5"
do
%span
.sr-only
Edit
=
icon
(
'pencil'
)
=
render
'doorkeeper/applications/delete_form'
,
application:
application
,
small:
true
-
else
.profile-settings-message.text-center
You don't have any applications
.oauth-authorized-applications.prepend-top-20
-
if
user_oauth_applications?
%h5
Authorized applications (
#{
@authorized_tokens
.
size
}
)
-
if
user_oauth_applications?
-
if
@authorized_tokens
.
any?
.oauth-applications
.table-responsive
%h3
%table
.table.table-striped
Your applications
%thead
.pull-right
%tr
=
link_to
'New Application'
,
new_oauth_application_path
,
class:
'btn btn-success'
%th
Name
-
if
@applications
.
any?
%th
Authorized At
.table-holder
%th
Scope
%table
.table.table-striped
%th
%thead
%tbody
%tr
-
@authorized_apps
.
each
do
|
app
|
%th
Name
-
token
=
app
.
authorized_tokens
.
order
(
'created_at desc'
).
first
%th
Callback URL
%tr
{
:id
=>
"application_#{app.id}"
}
%th
Clients
%td
=
app
.
name
%th
%td
=
token
.
created_at
%th
%td
=
token
.
scopes
%tbody
%td
=
render
'doorkeeper/authorized_applications/delete_form'
,
application:
app
-
@applications
.
each
do
|
application
|
-
@authorized_anonymous_tokens
.
each
do
|
token
|
%tr
{
:id
=>
"application_#{application.id}"
}
%tr
%td
=
link_to
application
.
name
,
oauth_application_path
(
application
)
%td
%td
Anonymous
-
application
.
redirect_uri
.
split
.
each
do
|
uri
|
%div
.help-block
%div
=
uri
%em
Authorization was granted by entering your username and password in the application.
%td
=
application
.
access_tokens
.
count
%td
=
token
.
created_at
%td
=
link_to
'Edit'
,
edit_oauth_application_path
(
application
),
class:
'btn btn-link btn-sm'
%td
=
token
.
scopes
%td
=
render
'doorkeeper/applications/delete_form'
,
application:
application
%td
=
render
'doorkeeper/authorized_applications/delete_form'
,
token:
token
-
else
.oauth-authorized-applications.prepend-top-20
.profile-settings-message.text-center
-
if
user_oauth_applications?
You don't have any authorized applications
%h3
Authorized applications
-
if
@authorized_tokens
.
any?
.table-holder
%table
.table.table-striped
%thead
%tr
%th
Name
%th
Authorized At
%th
Scope
%th
%tbody
-
@authorized_apps
.
each
do
|
app
|
-
token
=
app
.
authorized_tokens
.
order
(
'created_at desc'
).
first
%tr
{
:id
=>
"application_#{app.id}"
}
%td
=
app
.
name
%td
=
token
.
created_at
%td
=
token
.
scopes
%td
=
render
'doorkeeper/authorized_applications/delete_form'
,
application:
app
-
@authorized_anonymous_tokens
.
each
do
|
token
|
%tr
%td
Anonymous
%div
.help-block
%em
Authorization was granted by entering your username and password in the application.
%td
=
token
.
created_at
%td
=
token
.
scopes
%td
=
render
'doorkeeper/authorized_applications/delete_form'
,
token:
token
-
else
%p
.light
You don't have any authorized applications
Write
Preview
Markdown
is supported
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