gdrivestrg 0.0.11 → 0.0.12

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,14 @@
1
+ function google_login(login_url, test_url, redirect_url) {
2
+ var left = (screen.width/2)-(640/2);
3
+ var top = (screen.height/2)-(480/2);
4
+ var win = window.open(login_url, "googlelogin", 'width=700, height=480, left='+left+', top='+top);
5
+ var pollTimer = window.setInterval(function() {
6
+ if (win.document.URL.indexOf(test_url) != -1) {
7
+ window.clearInterval(pollTimer);
8
+ win.close();
9
+
10
+ window.location = redirect_url;
11
+ }
12
+ }, 500);
13
+ }
14
+
@@ -0,0 +1,6 @@
1
+ function google_login(login_url, test_url, redirect_url) {
2
+ var left = (screen.width/2)-(640/2);
3
+ var top = (screen.height/2)-(480/2);
4
+ var win = window.open(login_url, "googlelogin", 'width=700, height=480, left='+left+', top='+top);
5
+ }
6
+
@@ -0,0 +1 @@
1
+ //= require_tree .
File without changes
@@ -0,0 +1,29 @@
1
+ require 'cloudstrg/cloudstrg'
2
+
3
+ class Gdrivestrg::OmniauthCallbacksController < Devise::OmniauthCallbacksController
4
+ def google_oauth2
5
+ # You need to implement the method below in your model (e.g. app/models/user.rb)
6
+ @user = Kernel.const_get(Gdrivestrg.user_class).find_for_google_oauth2(request.env["omniauth.auth"], current_user)
7
+
8
+ if @user.persisted?
9
+
10
+ _params = {:user => @user,
11
+ :plugin_id => Cloudstrg::Cloudstrgplugin.find_by_plugin_name("gdrive"),
12
+ :redirect => "#{request.protocol}#{request.host_with_port}/users/auth/google_oauth2/callback",
13
+ :refresh_token => request.env["omniauth.auth"].credentials["refresh_token"],
14
+ :access_token => request.env["omniauth.auth"].credentials["token"],
15
+ :expires_in => request.env["omniauth.auth"].credentials["expires_at"],
16
+ :session => session}
17
+
18
+ driver = CloudStrg.new_driver _params
19
+ _session, url = driver.config _params
20
+ session.merge!(_session)
21
+
22
+ flash[:notice] = I18n.t "devise.omniauth_callbacks.success", :kind => "Google"
23
+ sign_in_and_redirect @user, :event => :authentication
24
+ else
25
+ session["devise.google_data"] = request.env["omniauth.auth"]
26
+ redirect_to new_user_registration_url
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,29 @@
1
+ require 'cloudstrg/cloudstrg'
2
+
3
+ class Gdrivestrg::OmniauthCallbacksController < Devise::OmniauthCallbacksController
4
+ def google_oauth2
5
+ # You need to implement the method below in your model (e.g. app/models/user.rb)
6
+ @user = Kernel.const_get(Gdrivestrg.user_class).find_for_google_oauth2(request.env["omniauth.auth"], current_user)
7
+
8
+ if @user.persisted?
9
+
10
+ _params = {:user => @user,
11
+ :plugin_id => Cloudstrg::Cloudstrgplugin.find_by_plugin_name("gdrive"),
12
+ :redirect => "#{request.protocol}#{request.host_with_port}/users/auth/google_oauth2/callback",
13
+ :refresh_token => request.env["omniauth.auth"].credentials["refresh_token"],
14
+ :access_token => request.env["omniauth.auth"].credentials["token"],
15
+ :expires_in => request.env["omniauth.auth"].credentials["expires_at"],
16
+ :session => session}
17
+
18
+ driver = CloudStrg.new_driver _params
19
+ _session, url = driver.config _params
20
+ session.merge!(_session)
21
+
22
+ flash[:notice] = I18n.t "devise.omniauth_callbacks.success", :kind => "Google"
23
+ sign_in_and_redirect @user, :event => :authentication
24
+ else
25
+ session["devise.google_data"] = request.env["omniauth.auth"]
26
+ redirect_to new_user_registration_url
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,3 @@
1
+ <%- if devise_mapping.omniauthable? %>
2
+ <a href='#' onclick="js:google_login('<%= omniauth_authorize_path(resource_name, :google_oauth2) %>', '<%= "#{request.protocol}#{request.host_with_port}" %>', '<%= "#{request.protocol}#{request.host_with_port}" %>');" class="btn-large btn-info" id="btn-sign_in"><%= "Sign in with Google" %></a>
3
+ <% end -%>
@@ -0,0 +1,3 @@
1
+ <%- if devise_mapping.omniauthable? %>
2
+ <a href='#' onclick="js:login('<%= omniauth_authorize_path(resource_name, :google_oauth2) %>', '<%= "#{request.protocol}#{request.host_with_port}" %>', '<%= "#{request.protocol}#{request.host_with_port}" %>');" class="btn-large btn-info" id="btn-sign_in"><%= "Sign in with Google" %></a>
3
+ <% end -%>
@@ -1,3 +1,3 @@
1
1
  module Gdrivestrg
2
- VERSION = "0.0.11"
2
+ VERSION = "0.0.12"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gdrivestrg
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.11
4
+ version: 0.0.12
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-03-15 00:00:00.000000000 Z
12
+ date: 2013-03-20 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rails
@@ -93,14 +93,22 @@ files:
93
93
  - app/assets/stylesheets/scaffold.css
94
94
  - app/assets/stylesheets/gdrivestrg/params.css
95
95
  - app/assets/stylesheets/gdrivestrg/application.css
96
+ - app/assets/javascripts/gdrivestrg.js~
97
+ - app/assets/javascripts/gdrivestrg.js
98
+ - app/assets/javascripts/gdrivestrg/google_login.js~
96
99
  - app/assets/javascripts/gdrivestrg/params.js
97
100
  - app/assets/javascripts/gdrivestrg/application.js
101
+ - app/assets/javascripts/gdrivestrg/google_login.js
102
+ - app/views/gdrivestrg/_login.html.erb
103
+ - app/views/gdrivestrg/_login.html.erb~
98
104
  - app/views/gdrivestrg/params/new.html.erb
99
105
  - app/views/gdrivestrg/params/show.html.erb
100
106
  - app/views/gdrivestrg/params/edit.html.erb
101
107
  - app/views/gdrivestrg/params/_form.html.erb
102
108
  - app/views/gdrivestrg/params/index.html.erb
103
109
  - app/views/layouts/gdrivestrg/application.html.erb
110
+ - app/controllers/gdrivestrg/omniauth_callbacks_controller.rb
111
+ - app/controllers/gdrivestrg/omniauth_callbacks_controller.rb~
104
112
  - app/controllers/gdrivestrg/application_controller.rb
105
113
  - app/controllers/gdrivestrg/params_controller.rb
106
114
  - config/routes.rb