phcdevworks_accounts_auth0 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/MIT-LICENSE +20 -0
- data/README.md +1 -0
- data/Rakefile +8 -0
- data/app/assets/config/phcdevworks_accounts_auth0_manifest.js +2 -0
- data/app/controllers/concerns/secured.rb +13 -0
- data/app/controllers/phcdevworks_accounts_auth0/application_controller.rb +15 -0
- data/app/controllers/phcdevworks_accounts_auth0/auth/handler_controller.rb +30 -0
- data/app/controllers/phcdevworks_accounts_auth0/user/pages_controller.rb +4 -0
- data/app/helpers/phcdevworks_accounts_auth0/application_helper.rb +9 -0
- data/app/helpers/phcdevworks_accounts_auth0/user/pages_helper.rb +4 -0
- data/app/jobs/phcdevworks_accounts_auth0/application_job.rb +4 -0
- data/app/mailers/phcdevworks_accounts_auth0/application_mailer.rb +6 -0
- data/app/models/phcdevworks_accounts_auth0/application_record.rb +5 -0
- data/app/views/layouts/phcdevworks_accounts_auth0/application.html.erb +73 -0
- data/app/views/layouts/phcdevworks_accounts_auth0/components/backend/footer/_footer.html.erb +17 -0
- data/app/views/layouts/phcdevworks_accounts_auth0/components/backend/navigation/_top_menu.html.erb +39 -0
- data/app/views/layouts/phcdevworks_accounts_auth0/components/backend/sidebars/_side_menu.html.erb +921 -0
- data/app/views/phcdevworks_accounts_auth0/admin/pages/components/_profile_header.html.erb +27 -0
- data/app/views/phcdevworks_accounts_auth0/admin/pages/dashboard.html.erb +0 -0
- data/app/views/phcdevworks_accounts_auth0/admin/pages/user_profile.html.erb +22 -0
- data/app/views/phcdevworks_accounts_auth0/admin/pages/users_list.html.erb +64 -0
- data/app/views/phcdevworks_accounts_auth0/auth/handler/failure.html.erb +0 -0
- data/app/views/phcdevworks_accounts_auth0/user/pages/dashboard.html.erb +0 -0
- data/app/views/phcdevworks_accounts_auth0/user/pages/profile.html.erb +0 -0
- data/config/initializers/auth0.rb +14 -0
- data/config/routes.rb +12 -0
- data/lib/phcdevworks_accounts_auth0/engine.rb +45 -0
- data/lib/phcdevworks_accounts_auth0/version.rb +3 -0
- data/lib/phcdevworks_accounts_auth0.rb +6 -0
- data/lib/tasks/phcdevworks_accounts_auth0_tasks.rake +4 -0
- metadata +388 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 5616cea1463669786c01af9840a7da1e6f425e3021c18347fd4cc0a3a3871ccc
|
4
|
+
data.tar.gz: 9011492e6be557c30ecba34a62c12f2f7caf27386cf452dc46fdaa6367e80ce5
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 25b61e7f8ffebb7dc61f4e6fc3ef29a8fba29d0f340f409ae00baabfc95f7d70c7f6e347ab8913112bdbff58d82772dc77e46e5fe542cb31511299a2876b50a2
|
7
|
+
data.tar.gz: b49d4bb43d32597816fb3b30c309bc5bf93f9a245bae2b489cbc977f68db0d4d6afd6f9c2ebb0d926cc8f9a082f1397fad59267d014e49b6321c57661f86bef6
|
data/MIT-LICENSE
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
Copyright 2022 Brad Potts
|
2
|
+
|
3
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
4
|
+
a copy of this software and associated documentation files (the
|
5
|
+
"Software"), to deal in the Software without restriction, including
|
6
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
7
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
8
|
+
permit persons to whom the Software is furnished to do so, subject to
|
9
|
+
the following conditions:
|
10
|
+
|
11
|
+
The above copyright notice and this permission notice shall be
|
12
|
+
included in all copies or substantial portions of the Software.
|
13
|
+
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
15
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
16
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
17
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
18
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
19
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
20
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/README.md
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
# phcdevworks_accounts_auth0
|
data/Rakefile
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
module PhcdevworksAccountsAuth0
|
2
|
+
class ApplicationController < ActionController::Base
|
3
|
+
|
4
|
+
# Security Filters
|
5
|
+
protect_from_forgery with: :exception
|
6
|
+
|
7
|
+
# Load Requried Helper Files
|
8
|
+
helper PhcdevworksActiveMenus::Engine.helpers
|
9
|
+
helper PhcdevworksNotifications::Engine.helpers
|
10
|
+
helper PhcdevworksTitleseo::Engine.helpers
|
11
|
+
|
12
|
+
private
|
13
|
+
|
14
|
+
end
|
15
|
+
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
module PhcdevworksAccountsAuth0
|
2
|
+
class Auth::HandlerController < ApplicationController
|
3
|
+
|
4
|
+
def callback
|
5
|
+
auth_info = request.env['omniauth.auth']
|
6
|
+
session[:userinfo] = auth_info['extra']['raw_info']
|
7
|
+
redirect_to '/user/dashboard'
|
8
|
+
end
|
9
|
+
|
10
|
+
def failure
|
11
|
+
# Failed Authentication
|
12
|
+
@error_msg = request.params['message']
|
13
|
+
end
|
14
|
+
|
15
|
+
def logout
|
16
|
+
# Logout
|
17
|
+
reset_session
|
18
|
+
redirect_to logout_url
|
19
|
+
end
|
20
|
+
|
21
|
+
def logout_url
|
22
|
+
request_params = {
|
23
|
+
returnTo: root_url,
|
24
|
+
client_id: AUTH0_CONFIG['auth0_client_id']
|
25
|
+
}
|
26
|
+
URI::HTTPS.build(host: AUTH0_CONFIG['auth0_domain'], path: '/v2/logout', query: request_params.to_query).to_s
|
27
|
+
end
|
28
|
+
|
29
|
+
end
|
30
|
+
end
|
@@ -0,0 +1,73 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
|
5
|
+
<!-- SEO System -->
|
6
|
+
<% phc_seo_title "PHCDevworks Accounts" %>
|
7
|
+
<% phc_seo_description "Ruby on Rails 7 Authentication and User Management Engine." %>
|
8
|
+
<!-- SEO System -->
|
9
|
+
|
10
|
+
<!-- SEO and Site Description -->
|
11
|
+
<meta charset="utf-8">
|
12
|
+
<title><%= yield(:phc_seo_title) %></title>
|
13
|
+
<meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" name="viewport" />
|
14
|
+
<meta name="description" content="<%= yield(:phc_seo_description) %>">
|
15
|
+
<!-- SEO and Site Description -->
|
16
|
+
|
17
|
+
<!-- Rails Security Tags -->
|
18
|
+
<%= csrf_meta_tags %>
|
19
|
+
<%= csp_meta_tag %>
|
20
|
+
<!-- Rails Security Tags -->
|
21
|
+
|
22
|
+
<!-- CSS Styles -->
|
23
|
+
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet" />
|
24
|
+
<%= stylesheet_link_tag "coloradmin/default/phcthemes_admin_panel_pack_coloradmin", media: "all" %>
|
25
|
+
<!-- CSS Styles -->
|
26
|
+
|
27
|
+
</head>
|
28
|
+
<body>
|
29
|
+
|
30
|
+
<!-- -PHCDEV- Page Container -->
|
31
|
+
<div id="app" class="app app-header-fixed app-sidebar-fixed app-with-wide-sidebar">
|
32
|
+
|
33
|
+
<!-- -PHCDEV- Page Container - Header -->
|
34
|
+
<div id="header" class="app-header">
|
35
|
+
<%= render "layouts/phcdevworks_accounts_auth0/components/backend/navigation/top_menu" %>
|
36
|
+
</div>
|
37
|
+
<!-- -PHCDEV- Page Container - Header -->
|
38
|
+
|
39
|
+
<!-- -PHCDEV- Page Container - Sidebar -->
|
40
|
+
<div id="sidebar" class="app-sidebar" data-disable-slide-animation="true">
|
41
|
+
<%= render "layouts/phcdevworks_accounts_auth0/components/backend/sidebars/side_menu" %>
|
42
|
+
</div>
|
43
|
+
<div class="app-sidebar-bg"></div>
|
44
|
+
<div class="app-sidebar-mobile-backdrop"><a href="#" data-dismiss="app-sidebar-mobile" class="stretched-link"></a></div>
|
45
|
+
<!-- -PHCDEV- Page Container - Sidebar -->
|
46
|
+
|
47
|
+
<!-- -PHCDEV- Page Container - Content -->
|
48
|
+
<div id="app" class="app app-content-full-height">
|
49
|
+
<div id="content" class="app-content d-flex flex-column p-0">
|
50
|
+
<!-- -PHCDEV- Page Container - Main -->
|
51
|
+
<div class="app-content-padding flex-grow-1 overflow-hidden" data-scrollbar="true" data-height="100%">
|
52
|
+
<%= render "phcdevworks_notifications/bootstrap/notifications" %>
|
53
|
+
<%= yield %>
|
54
|
+
</div>
|
55
|
+
<!-- -PHCDEV- Page Container - Main -->
|
56
|
+
<!-- -PHCDEV- Page Container - Footer -->
|
57
|
+
<div id="footer" class="app-footer m-0">
|
58
|
+
<%= render "layouts/phcdevworks_accounts_auth0/components/backend/footer/footer" %>
|
59
|
+
</div>
|
60
|
+
<!-- -PHCDEV- Page Container - Footer -->
|
61
|
+
</div>
|
62
|
+
</div>
|
63
|
+
<!-- -PHCDEV- Page Container - Content -->
|
64
|
+
|
65
|
+
</div>
|
66
|
+
<!-- -PHCDEV- Page Container -->
|
67
|
+
|
68
|
+
<!-- JavaScript -->
|
69
|
+
<%= javascript_include_tag "coloradmin/phcthemes_admin_panel_pack_coloradmin" %>
|
70
|
+
<!-- JavaScript -->
|
71
|
+
|
72
|
+
</body>
|
73
|
+
</html>
|
@@ -0,0 +1,17 @@
|
|
1
|
+
<!-- -PHCDEV- Page Container - Footer - Left -->
|
2
|
+
<span>
|
3
|
+
<!-- -PHCDEV- Page Container - Footer - Left - Copyright -->
|
4
|
+
<i class="fab fa-osi font-weight-bolder"></i> 2012-<%= Time.now.year %> -
|
5
|
+
<span class="phc_dev_strong_plugin">PHC</span><span class="phc_dev_light_plugin">Devworks</span> Accounts (Auth0) - Engine v<%= Gem.loaded_specs["phcdevworks_accounts_auth0"].version.to_s %>
|
6
|
+
<!-- -PHCDEV- Page Container - Footer - Left - Copyright -->
|
7
|
+
</span>
|
8
|
+
<!-- -PHCDEV- Page Container - Footer - Left -->
|
9
|
+
|
10
|
+
<!-- -PHCDEV- Page Container - Footer - Right -->
|
11
|
+
<span class="float-right">
|
12
|
+
<!-- -PHCDEV- Page Container - Footer - Right - Developed -->
|
13
|
+
Developed with <i class="fas fa-heart hanna_hearts"></i> by
|
14
|
+
<a class="phcnet_copyright text-dark" href="https://phcdevworks.com/"><u><span class="phc_dev_strong_plugin">PHC</span><span class="phc_dev_light_plugin">Devworks</span></u></a>
|
15
|
+
<!-- -PHCDEV- Page Container - Footer - Right - Developed -->
|
16
|
+
</span>
|
17
|
+
<!-- -PHCDEV- Page Container - Footer - Right -->
|
data/app/views/layouts/phcdevworks_accounts_auth0/components/backend/navigation/_top_menu.html.erb
ADDED
@@ -0,0 +1,39 @@
|
|
1
|
+
<!-- -PHCDEV- Topbar - Navigation Header -->
|
2
|
+
<div class="navbar-header">
|
3
|
+
|
4
|
+
<button type="button" class="navbar-mobile-toggler" data-toggle="app-sidebar-mobile">
|
5
|
+
<span class="icon-bar"></span>
|
6
|
+
<span class="icon-bar"></span>
|
7
|
+
<span class="icon-bar"></span>
|
8
|
+
</button>
|
9
|
+
|
10
|
+
<%= link_to phcdevworks_accounts_auth0.user_profile_path, class: "navbar-brand" do %>
|
11
|
+
<span class="phc_dev_strong_plugin_logo">PHC</span><span class="phc_dev_light_plugin_logo">Devworks</span>
|
12
|
+
<% end %>
|
13
|
+
|
14
|
+
</div>
|
15
|
+
<!-- -PHCDEV- Topbar - Navigation Header -->
|
16
|
+
|
17
|
+
<!-- -PHCDEV- Topbar - Navigation Main -->
|
18
|
+
<% if current_user %>
|
19
|
+
<div class="navbar-nav">
|
20
|
+
<div class="navbar-item navbar-user dropdown">
|
21
|
+
<a href="#" class="navbar-link dropdown-toggle d-flex align-items-center" data-bs-toggle="dropdown">
|
22
|
+
<%= image_tag current_user.gravatar_url %>
|
23
|
+
<span>
|
24
|
+
<span class="d-none d-md-inline"><%= current_user.firstname + " " + current_user.lastname %></span>
|
25
|
+
<b class="caret"></b>
|
26
|
+
</span>
|
27
|
+
</a>
|
28
|
+
<div class="dropdown-menu dropdown-menu-end me-1">
|
29
|
+
<%= link_to phcdevworks_accounts_auth0.user_profile_path, class: "dropdown-item" do %>
|
30
|
+
<i class="fad fa-cogs"></i> Account Settings
|
31
|
+
<% end %>
|
32
|
+
<%= link_to phcdevworks_accounts_auth0.auth_logout_path, class: "dropdown-item" do %>
|
33
|
+
<i class="fad fa-sign-out-alt"></i> Logout
|
34
|
+
<% end %>
|
35
|
+
</div>
|
36
|
+
</div>
|
37
|
+
</div>
|
38
|
+
<% end %>
|
39
|
+
<!-- -PHCDEV- Topbar - Navigation Main -->
|