diff --git a/plugins/oauth_provider/Gemfile b/plugins/oauth_provider/Gemfile
index ccaff8e..6909181 100644
--- a/plugins/oauth_provider/Gemfile
+++ b/plugins/oauth_provider/Gemfile
@@ -1 +1 @@
-gem 'doorkeeper', '~> 1.4.0'
+gem 'doorkeeper', '~> 3.1.0'
diff --git a/plugins/oauth_provider/controllers/doorkeeper/application_controller.rb b/plugins/oauth_provider/controllers/doorkeeper/application_controller.rb
index 75ac214..ff39280 100644
--- a/plugins/oauth_provider/controllers/doorkeeper/application_controller.rb
+++ b/plugins/oauth_provider/controllers/doorkeeper/application_controller.rb
@@ -2,7 +2,8 @@ module Doorkeeper
class ApplicationController < ApplicationController
include Helpers::Controller
- helper 'doorkeeper/form_errors'
+
+ helper 'doorkeeper/dashboard'
end
end
diff --git a/plugins/oauth_provider/controllers/doorkeeper/applications_controller.rb b/plugins/oauth_provider/controllers/doorkeeper/applications_controller.rb
new file mode 100644
index 0000000..1885268
--- /dev/null
+++ b/plugins/oauth_provider/controllers/doorkeeper/applications_controller.rb
@@ -0,0 +1,54 @@
+module Doorkeeper
+ class ApplicationsController < Doorkeeper::ApplicationController
+ layout 'doorkeeper/admin'
+
+ before_action :authenticate_admin!
+ before_action :set_application, only: [:show, :edit, :update, :destroy]
+
+ def index
+ @applications = Application.all
+ end
+
+ def new
+ @application = Application.new
+ end
+
+ def create
+ @application = Application.new(application_params)
+ if @application.save
+ flash[:notice] = I18n.t(:notice, scope: [:doorkeeper, :flash, :applications, :create])
+ redirect_to oauth_application_url(@application)
+ else
+ render :new
+ end
+ end
+
+ def update
+ if @application.update_attributes(application_params)
+ flash[:notice] = I18n.t(:notice, scope: [:doorkeeper, :flash, :applications, :update])
+ redirect_to oauth_application_url(@application)
+ else
+ render :edit
+ end
+ end
+
+ def destroy
+ flash[:notice] = I18n.t(:notice, scope: [:doorkeeper, :flash, :applications, :destroy]) if @application.destroy
+ redirect_to oauth_applications_url
+ end
+
+ private
+
+ def set_application
+ @application = Application.find(params[:id])
+ end
+
+ def application_params
+ if params.respond_to?(:permit)
+ params.require(:doorkeeper_application).permit(:name, :redirect_uri, :scopes)
+ else
+ params[:doorkeeper_application].slice(:name, :redirect_uri, :scopes) rescue nil
+ end
+ end
+ end
+end
diff --git a/plugins/oauth_provider/controllers/oauth_provider_authorizations_controller.rb b/plugins/oauth_provider/controllers/oauth_provider_authorizations_controller.rb
index a48b70d..4945af1 100644
--- a/plugins/oauth_provider/controllers/oauth_provider_authorizations_controller.rb
+++ b/plugins/oauth_provider/controllers/oauth_provider_authorizations_controller.rb
@@ -6,4 +6,7 @@ class OauthProviderAuthorizationsController < Doorkeeper::AuthorizationsControll
def index
end
+ def show
+ end
+
end
diff --git a/plugins/oauth_provider/views/doorkeeper/applications/_delete_form.html.erb b/plugins/oauth_provider/views/doorkeeper/applications/_delete_form.html.erb
index 0a407db..8d8c93f 100644
--- a/plugins/oauth_provider/views/doorkeeper/applications/_delete_form.html.erb
+++ b/plugins/oauth_provider/views/doorkeeper/applications/_delete_form.html.erb
@@ -1,5 +1,5 @@
<%- submit_btn_css ||= 'btn btn-link' %>
-<%= form_tag [:oauth, application] do %>
+<%= form_tag oauth_application_path(application) do %>
- <%= submit_tag 'Destroy', onclick: "return confirm('Are you sure?')", class: submit_btn_css %>
+ <%= submit_tag t('doorkeeper.applications.buttons.destroy'), onclick: "return confirm('#{ t('doorkeeper.applications.confirmations.destroy') }')", class: submit_btn_css %>
<% end %>
diff --git a/plugins/oauth_provider/views/doorkeeper/applications/_form.html.erb b/plugins/oauth_provider/views/doorkeeper/applications/_form.html.erb
index 7ea09dc..0af5363 100644
--- a/plugins/oauth_provider/views/doorkeeper/applications/_form.html.erb
+++ b/plugins/oauth_provider/views/doorkeeper/applications/_form.html.erb
@@ -1,4 +1,4 @@
-<%= form_for [:oauth, application], html: {class: 'form-horizontal', role: 'form'} do |f| %>
+<%= form_for application, url: doorkeeper_submit_path(application), html: {class: 'form-horizontal', role: 'form'} do |f| %>
<% if application.errors.any? %>
<%= _('Whoops! Check your form for possible errors') %>
diff --git a/plugins/oauth_provider/views/doorkeeper/applications/index.html.erb b/plugins/oauth_provider/views/doorkeeper/applications/index.html.erb
index 2cc3631..a8fac25 100644
--- a/plugins/oauth_provider/views/doorkeeper/applications/index.html.erb
+++ b/plugins/oauth_provider/views/doorkeeper/applications/index.html.erb
@@ -17,15 +17,15 @@
<% @applications.each do |application| %>
- <%= link_to application.name, [:oauth, application] %>
+ <%= link_to application.name, oauth_application_path(application) %>
<%= application.redirect_uri %>
- <%= link_to _('Edit'), edit_oauth_application_path(application), class: 'btn btn-link' %>
+ <%= link_to t('doorkeeper.applications.buttons.edit'), edit_oauth_application_path(application), class: 'btn btn-link' %>
<%= render 'delete_form', application: application %>
<% end %>
-
+
<%= button(:back, _('Go back'), {:controller => 'oauth_provider_plugin_admin', :action => 'index'}) %>
diff --git a/plugins/oauth_provider/views/doorkeeper/applications/show.html.erb b/plugins/oauth_provider/views/doorkeeper/applications/show.html.erb
index 1a68133..6925aae 100644
--- a/plugins/oauth_provider/views/doorkeeper/applications/show.html.erb
+++ b/plugins/oauth_provider/views/doorkeeper/applications/show.html.erb
@@ -20,7 +20,8 @@
<%= uri %>
-
+
+ <%= link_to t('doorkeeper.applications.buttons.authorize'), oauth_authorization_path(client_id: @application.uid, redirect_uri: uri, response_type: 'code', scope: @application.scopes), class: 'btn btn-success', target: '_blank' %>
<% end %>
diff --git a/plugins/oauth_provider/views/doorkeeper/authorizations/new.html.erb b/plugins/oauth_provider/views/doorkeeper/authorizations/new.html.erb
index 2c6455c..e662346 100644
--- a/plugins/oauth_provider/views/doorkeeper/authorizations/new.html.erb
+++ b/plugins/oauth_provider/views/doorkeeper/authorizations/new.html.erb
@@ -6,16 +6,16 @@
- <%= _('Authorize %s to use your account?') % "#{@pre_auth.client.name} " %>
+ <%= raw _('Authorize %s to use your account?') % "#{@pre_auth.client.name} " %>
- <% if @pre_auth.scopes %>
+ <% if @pre_auth.scopes.count > 0 %>
<%= _('This application will be able to:') %>
<% @pre_auth.scopes.each do |scope| %>
- <%= OauthProviderPlugin::SCOPE_TRANSLATION[scope] %>
+ <%= t scope, scope: [:doorkeeper, :scopes] %>
<% end %>
diff --git a/plugins/oauth_provider/views/doorkeeper/authorized_applications/index.html.erb b/plugins/oauth_provider/views/doorkeeper/authorized_applications/index.html.erb
index 0b9a6c3..aaef12c 100644
--- a/plugins/oauth_provider/views/doorkeeper/authorized_applications/index.html.erb
+++ b/plugins/oauth_provider/views/doorkeeper/authorized_applications/index.html.erb
@@ -25,7 +25,7 @@
-
+
<%= button(:back, _('Go back'), :back) %>
--
libgit2 0.21.2