usman 0.1.6dev2 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/app/assets/images/android-icon-144x144.png +0 -0
- data/app/assets/images/android-icon-192x192.png +0 -0
- data/app/assets/images/android-icon-36x36.png +0 -0
- data/app/assets/images/android-icon-48x48.png +0 -0
- data/app/assets/images/android-icon-72x72.png +0 -0
- data/app/assets/images/android-icon-96x96.png +0 -0
- data/app/assets/images/apple-icon-114x114.png +0 -0
- data/app/assets/images/apple-icon-120x120.png +0 -0
- data/app/assets/images/apple-icon-144x144.png +0 -0
- data/app/assets/images/apple-icon-152x152.png +0 -0
- data/app/assets/images/apple-icon-180x180.png +0 -0
- data/app/assets/images/apple-icon-57x57.png +0 -0
- data/app/assets/images/apple-icon-60x60.png +0 -0
- data/app/assets/images/apple-icon-72x72.png +0 -0
- data/app/assets/images/apple-icon-76x76.png +0 -0
- data/app/assets/images/apple-icon-precomposed.png +0 -0
- data/app/assets/images/apple-icon.png +0 -0
- data/app/assets/images/browserconfig.xml +2 -0
- data/app/assets/images/favicon-16x16.png +0 -0
- data/app/assets/images/favicon-32x32.png +0 -0
- data/app/assets/images/favicon-96x96.png +0 -0
- data/app/assets/images/favicon.ico +0 -0
- data/app/assets/images/logo-on-white.png +0 -0
- data/app/assets/images/logo-small.png +0 -0
- data/app/assets/images/logo.png +0 -0
- data/app/assets/images/manifest.json +41 -0
- data/app/assets/images/ms-icon-144x144.png +0 -0
- data/app/assets/images/ms-icon-150x150.png +0 -0
- data/app/assets/images/ms-icon-310x310.png +0 -0
- data/app/assets/images/ms-icon-70x70.png +0 -0
- data/app/assets/sketches/logo.sketch +0 -0
- data/app/controllers/api/v1/base_controller.rb +13 -0
- data/app/controllers/api/v1/registrations_controller.rb +41 -0
- data/app/controllers/usman/admin_controller.rb +26 -0
- data/app/controllers/usman/application_controller.rb +16 -0
- data/app/controllers/usman/dashboard_controller.rb +26 -0
- data/app/controllers/usman/features_controller.rb +83 -0
- data/app/controllers/usman/my_account_controller.rb +25 -0
- data/app/controllers/usman/permissions_controller.rb +85 -0
- data/app/controllers/usman/resource_controller.rb +21 -0
- data/app/controllers/usman/roles_controller.rb +68 -0
- data/app/controllers/usman/sessions_controller.rb +4 -1
- data/app/controllers/usman/user_roles_controller.rb +141 -0
- data/app/controllers/usman/users_controller.rb +133 -0
- data/app/helpers/usman/api_helper.rb +79 -0
- data/app/helpers/usman/authentication_helper.rb +21 -7
- data/app/models/device.rb +149 -0
- data/app/models/feature.rb +11 -7
- data/app/models/permission.rb +17 -13
- data/app/models/registration.rb +108 -0
- data/app/models/role.rb +11 -7
- data/app/models/user.rb +19 -13
- data/app/services/usman/mobile_registration_service.rb +127 -0
- data/app/views/layouts/kuppayam/_sidebar.html.erb +39 -19
- data/app/views/layouts/kuppayam/profile.html.erb +120 -0
- data/app/views/usman/dashboard/index.html.erb +118 -0
- data/app/views/usman/{admin/features → features}/_form.html.erb +1 -1
- data/app/views/usman/{admin/features → features}/_index.html.erb +10 -10
- data/app/views/usman/{admin/features → features}/_row.html.erb +10 -10
- data/app/views/usman/{admin/features → features}/_show.html.erb +2 -2
- data/app/views/usman/{admin/features → features}/index.html.erb +4 -4
- data/app/views/usman/my_account/index.html.erb +1 -0
- data/app/views/usman/{admin/permissions → permissions}/_form.html.erb +1 -1
- data/app/views/usman/{admin/permissions → permissions}/_index.html.erb +2 -2
- data/app/views/usman/{admin/permissions → permissions}/_row.html.erb +2 -2
- data/app/views/usman/{admin/permissions → permissions}/_show.html.erb +2 -2
- data/app/views/usman/{admin/permissions → permissions}/index.html.erb +4 -4
- data/app/views/usman/{admin/roles → roles}/_form.html.erb +1 -1
- data/app/views/usman/{admin/roles → roles}/_index.html.erb +3 -3
- data/app/views/usman/{admin/roles → roles}/_row.html.erb +3 -3
- data/app/views/usman/{admin/roles → roles}/_show.html.erb +6 -6
- data/app/views/usman/{admin/roles → roles}/index.html.erb +5 -5
- data/app/views/usman/sessions/_form.html.erb +1 -1
- data/app/views/usman/{admin/user_roles → user_roles}/_form.html.erb +1 -1
- data/app/views/usman/{admin/user_roles → user_roles}/_index.html.erb +2 -2
- data/app/views/usman/{admin/user_roles → user_roles}/_row.html.erb +3 -3
- data/app/views/usman/{admin/users → users}/_form.html.erb +1 -1
- data/app/views/usman/{admin/users → users}/_index.html.erb +9 -9
- data/app/views/usman/{admin/users → users}/_row.html.erb +9 -9
- data/app/views/usman/{admin/users → users}/_show.html.erb +8 -8
- data/app/views/usman/{admin/users → users}/index.html.erb +8 -8
- data/config/locales/usman/mobile_registration.ar.yml +14 -0
- data/config/locales/usman/mobile_registration.en.yml +14 -0
- data/config/routes.rb +25 -21
- data/db/master_data/roles.csv +2 -0
- data/db/migrate/{20170728095744_create_otp_registrations.rb → 20170819113217_create_registrations.rb} +4 -4
- data/db/migrate/20170819113218_add_registration_id_to_users.rb +7 -0
- data/db/migrate/20170819113219_create_devices.rb +41 -0
- data/lib/tasks/usman/data.rake +85 -0
- data/lib/tasks/usman/master_data.rake +44 -0
- data/lib/usman/engine.rb +2 -1
- data/lib/usman/version.rb +1 -1
- metadata +111 -52
- data/app/controllers/usman/admin/base_controller.rb +0 -46
- data/app/controllers/usman/admin/dashboard_controller.rb +0 -26
- data/app/controllers/usman/admin/features_controller.rb +0 -83
- data/app/controllers/usman/admin/permissions_controller.rb +0 -85
- data/app/controllers/usman/admin/resource_controller.rb +0 -17
- data/app/controllers/usman/admin/roles_controller.rb +0 -68
- data/app/controllers/usman/admin/user_roles_controller.rb +0 -142
- data/app/controllers/usman/admin/users_controller.rb +0 -133
- data/app/views/usman/admin/dashboard/index.html.erb +0 -51
- data/config/initializers/overide_kuppayam_controllers.rb +0 -74
- data/lib/tasks/usman/all.rake +0 -73
- /data/app/views/usman/{admin/permissions → permissions}/_action_buttons.html.erb +0 -0
- /data/config/locales/{kuppayam → usman}/authentication.ar.yml +0 -0
- /data/config/locales/{kuppayam → usman}/authentication.en.yml +0 -0
- /data/db/{import_data → data}/dummy/features.csv +0 -0
- /data/db/{import_data → data}/dummy/permissions.csv +0 -0
- /data/db/{import_data → data}/dummy/roles.csv +0 -0
- /data/db/{import_data → data}/dummy/users.csv +0 -0
- /data/db/{import_data → data}/features.csv +0 -0
- /data/db/{import_data → data}/permissions.csv +0 -0
- /data/db/{import_data → data}/roles.csv +0 -0
- /data/db/{import_data → data}/users.csv +0 -0
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: dcf66615fd081189a376eedeb39266e06d8a2126
|
|
4
|
+
data.tar.gz: 311251208365a4a012a4c84ce59b776ef6d70a87
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 2d6df82e6a200bf4f973eda91c40888b828c1fe7ec9a4dfdb353e2b4c3665ae9debfd58e462a363530377e3797218f7d431578e5b50a4968cd97096d9e8cef86
|
|
7
|
+
data.tar.gz: d059b684edf4e98ff8936483186df1748b87d87e38a4c42a1f288522c516a0523efa8b1708a5d4751f0e53ff9e74fddc7f85aa899c78d089e22d045e3b643255
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
|
2
|
+
<browserconfig><msapplication><tile><square70x70logo src="/ms-icon-70x70.png"/><square150x150logo src="/ms-icon-150x150.png"/><square310x310logo src="/ms-icon-310x310.png"/><TileColor>#ffffff</TileColor></tile></msapplication></browserconfig>
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "App",
|
|
3
|
+
"icons": [
|
|
4
|
+
{
|
|
5
|
+
"src": "\/android-icon-36x36.png",
|
|
6
|
+
"sizes": "36x36",
|
|
7
|
+
"type": "image\/png",
|
|
8
|
+
"density": "0.75"
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"src": "\/android-icon-48x48.png",
|
|
12
|
+
"sizes": "48x48",
|
|
13
|
+
"type": "image\/png",
|
|
14
|
+
"density": "1.0"
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
"src": "\/android-icon-72x72.png",
|
|
18
|
+
"sizes": "72x72",
|
|
19
|
+
"type": "image\/png",
|
|
20
|
+
"density": "1.5"
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"src": "\/android-icon-96x96.png",
|
|
24
|
+
"sizes": "96x96",
|
|
25
|
+
"type": "image\/png",
|
|
26
|
+
"density": "2.0"
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
"src": "\/android-icon-144x144.png",
|
|
30
|
+
"sizes": "144x144",
|
|
31
|
+
"type": "image\/png",
|
|
32
|
+
"density": "3.0"
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"src": "\/android-icon-192x192.png",
|
|
36
|
+
"sizes": "192x192",
|
|
37
|
+
"type": "image\/png",
|
|
38
|
+
"density": "4.0"
|
|
39
|
+
}
|
|
40
|
+
]
|
|
41
|
+
}
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
module Api
|
|
2
|
+
module V1
|
|
3
|
+
class RegistrationsController < ActionController::API
|
|
4
|
+
|
|
5
|
+
include Usman::ApiHelper
|
|
6
|
+
|
|
7
|
+
def register
|
|
8
|
+
proc_code = Proc.new do
|
|
9
|
+
@reg_data = Usman::MobileRegistrationService.new(params)
|
|
10
|
+
@errors = @reg_data.errors
|
|
11
|
+
@success = false
|
|
12
|
+
if @errors[:heading].blank?
|
|
13
|
+
@success = true
|
|
14
|
+
@alert = {
|
|
15
|
+
heading: I18n.translate("mobile_registration.otp_sent.heading"),
|
|
16
|
+
message: I18n.translate("mobile_registration.otp_sent.message")
|
|
17
|
+
}
|
|
18
|
+
@data = {
|
|
19
|
+
registration: @reg_data.registration,
|
|
20
|
+
device: @reg_data.device
|
|
21
|
+
}
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
render_json_response(proc_code)
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
def resend_otp
|
|
28
|
+
proc_code = Proc.new do
|
|
29
|
+
end
|
|
30
|
+
render_json_response(proc_code)
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
def verify
|
|
34
|
+
proc_code = Proc.new do
|
|
35
|
+
end
|
|
36
|
+
render_json_response(proc_code)
|
|
37
|
+
end
|
|
38
|
+
end
|
|
39
|
+
end
|
|
40
|
+
end
|
|
41
|
+
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
module Usman
|
|
2
|
+
class AdminController < Kuppayam::BaseController
|
|
3
|
+
|
|
4
|
+
include Usman::AuthenticationHelper
|
|
5
|
+
|
|
6
|
+
layout 'kuppayam/admin'
|
|
7
|
+
|
|
8
|
+
before_action :current_user
|
|
9
|
+
before_action :require_user
|
|
10
|
+
before_action :require_site_admin
|
|
11
|
+
|
|
12
|
+
private
|
|
13
|
+
|
|
14
|
+
def set_default_title
|
|
15
|
+
set_title("Usman Admin | User Management Module")
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
def configure_filter_param_mapping
|
|
19
|
+
@filter_param_mapping = default_filter_param_mapping
|
|
20
|
+
@filter_param_mapping[:super_admin] = :sa
|
|
21
|
+
@filter_param_mapping[:user] = :us
|
|
22
|
+
@filter_param_mapping[:feature] = :ft
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
end
|
|
26
|
+
end
|
|
@@ -3,7 +3,23 @@ module Usman
|
|
|
3
3
|
|
|
4
4
|
include Usman::AuthenticationHelper
|
|
5
5
|
|
|
6
|
+
layout 'kuppayam/admin'
|
|
7
|
+
|
|
6
8
|
before_action :current_user
|
|
9
|
+
before_action :require_user
|
|
10
|
+
|
|
11
|
+
private
|
|
12
|
+
|
|
13
|
+
def set_default_title
|
|
14
|
+
set_title("Usman Admin | User Management Module")
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
def configure_filter_param_mapping
|
|
18
|
+
@filter_param_mapping = default_filter_param_mapping
|
|
19
|
+
@filter_param_mapping[:super_admin] = :sa
|
|
20
|
+
@filter_param_mapping[:user] = :us
|
|
21
|
+
@filter_param_mapping[:feature] = :ft
|
|
22
|
+
end
|
|
7
23
|
|
|
8
24
|
end
|
|
9
25
|
end
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
module Usman
|
|
2
|
+
class DashboardController < AdminController
|
|
3
|
+
|
|
4
|
+
before_action :require_site_admin
|
|
5
|
+
|
|
6
|
+
# GET /dashboard
|
|
7
|
+
def index
|
|
8
|
+
end
|
|
9
|
+
|
|
10
|
+
private
|
|
11
|
+
|
|
12
|
+
def breadcrumbs_configuration
|
|
13
|
+
{
|
|
14
|
+
heading: "User Dashboard",
|
|
15
|
+
description: "A Quick view of users and roles",
|
|
16
|
+
links: [{name: "Dashboard", link: dashboard_path, icon: 'fa-dashboard'}]
|
|
17
|
+
}
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
def set_navs
|
|
21
|
+
set_nav("usman/dashboard")
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
end
|
|
25
|
+
end
|
|
26
|
+
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
module Usman
|
|
2
|
+
class FeaturesController < ResourceController
|
|
3
|
+
|
|
4
|
+
before_action :require_site_admin
|
|
5
|
+
|
|
6
|
+
private
|
|
7
|
+
|
|
8
|
+
def get_collections
|
|
9
|
+
@relation = Feature.where("")
|
|
10
|
+
|
|
11
|
+
parse_filters
|
|
12
|
+
apply_filters
|
|
13
|
+
|
|
14
|
+
@features = @r_objects = @relation.includes(:feature_image).page(@current_page).per(@per_page)
|
|
15
|
+
|
|
16
|
+
return true
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
def apply_filters
|
|
20
|
+
@relation = @relation.search(@query) if @query
|
|
21
|
+
@relation = @relation.status(@status) if @status
|
|
22
|
+
|
|
23
|
+
@order_by = "created_at desc" unless @order_by
|
|
24
|
+
@relation = @relation.order(@order_by)
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
def configure_filter_settings
|
|
28
|
+
@filter_settings = {
|
|
29
|
+
string_filters: [
|
|
30
|
+
{ filter_name: :query },
|
|
31
|
+
{ filter_name: :status }
|
|
32
|
+
],
|
|
33
|
+
boolean_filters: [],
|
|
34
|
+
reference_filters: [],
|
|
35
|
+
variable_filters: [],
|
|
36
|
+
}
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
def configure_filter_ui_settings
|
|
40
|
+
@filter_ui_settings = {
|
|
41
|
+
status: {
|
|
42
|
+
object_filter: false,
|
|
43
|
+
select_label: "Select Status",
|
|
44
|
+
display_hash: Feature::STATUS,
|
|
45
|
+
current_value: @status,
|
|
46
|
+
values: Feature::STATUS_REVERSE,
|
|
47
|
+
current_filters: @filters,
|
|
48
|
+
filters_to_remove: [],
|
|
49
|
+
filters_to_add: {},
|
|
50
|
+
url_method_name: 'users_url',
|
|
51
|
+
show_all_filter_on_top: true
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
end
|
|
55
|
+
|
|
56
|
+
def resource_controller_configuration
|
|
57
|
+
{
|
|
58
|
+
page_title: "Features",
|
|
59
|
+
js_view_path: "/kuppayam/workflows/parrot",
|
|
60
|
+
view_path: "/usman/features"
|
|
61
|
+
}
|
|
62
|
+
end
|
|
63
|
+
|
|
64
|
+
def breadcrumbs_configuration
|
|
65
|
+
{
|
|
66
|
+
heading: "Manage Features",
|
|
67
|
+
icon: "lincons-diamond",
|
|
68
|
+
description: "Listing all Features",
|
|
69
|
+
links: [{name: "Home", link: dashboard_path, icon: 'fa-home'},
|
|
70
|
+
{name: "Manage Features", link: features_path, icon: 'fa-calendar', active: true}]
|
|
71
|
+
}
|
|
72
|
+
end
|
|
73
|
+
|
|
74
|
+
def permitted_params
|
|
75
|
+
params.require(:feature).permit(:name)
|
|
76
|
+
end
|
|
77
|
+
|
|
78
|
+
def set_navs
|
|
79
|
+
set_nav("usman/features")
|
|
80
|
+
end
|
|
81
|
+
|
|
82
|
+
end
|
|
83
|
+
end
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
module Usman
|
|
2
|
+
class MyAccountController < ApplicationController
|
|
3
|
+
|
|
4
|
+
# GET /dashboard
|
|
5
|
+
def index
|
|
6
|
+
end
|
|
7
|
+
|
|
8
|
+
private
|
|
9
|
+
|
|
10
|
+
def breadcrumbs_configuration
|
|
11
|
+
{
|
|
12
|
+
heading: "My Account",
|
|
13
|
+
description: "Manage Account, Profile & Settings",
|
|
14
|
+
links: [{name: "Dashboard", link: dashboard_path, icon: 'fa-dashboard'},
|
|
15
|
+
{name: "My Account", link: "#", icon: 'fa-user'}]
|
|
16
|
+
}
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
def set_navs
|
|
20
|
+
set_nav("usman/my_account")
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
end
|
|
24
|
+
end
|
|
25
|
+
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
module Usman
|
|
2
|
+
class PermissionsController < ResourceController
|
|
3
|
+
|
|
4
|
+
before_action :require_site_admin
|
|
5
|
+
|
|
6
|
+
def create
|
|
7
|
+
@permission = @r_object = Permission.where(" user_id = ? AND feature_id = ? ", permitted_params[:user_id], permitted_params[:feature_id]).first || Permission.new
|
|
8
|
+
@permission.assign_attributes(permitted_params)
|
|
9
|
+
save_resource
|
|
10
|
+
get_collections
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
def update
|
|
14
|
+
@permission = @r_object = Permission.find_by_id(params[:id])
|
|
15
|
+
# The form will not submit can_create 0 if it is not selected
|
|
16
|
+
# hence making it false by default and letting it update by itself.
|
|
17
|
+
@permission.assign_attributes({"can_create": "0", "can_read": "0", "can_update": "0", "can_delete": "0"})
|
|
18
|
+
@permission.assign_attributes(permitted_params)
|
|
19
|
+
save_resource
|
|
20
|
+
get_collections
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
private
|
|
24
|
+
|
|
25
|
+
def get_collections
|
|
26
|
+
@relation = Permission.where("")
|
|
27
|
+
|
|
28
|
+
parse_filters
|
|
29
|
+
apply_filters
|
|
30
|
+
|
|
31
|
+
@permissions = @r_objects = @relation.includes(:user, :feature).page(@current_page).per(@per_page)
|
|
32
|
+
|
|
33
|
+
return true
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
def apply_filters
|
|
37
|
+
@relation = @relation.search(@query) if @query
|
|
38
|
+
@order_by = "user_id DESC, created_at DESC" unless @order_by
|
|
39
|
+
@relation = @relation.order(@order_by)
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
def configure_filter_settings
|
|
43
|
+
@filter_settings = {
|
|
44
|
+
string_filters: [{ filter_name: :query }],
|
|
45
|
+
boolean_filters: [],
|
|
46
|
+
reference_filters: [
|
|
47
|
+
{ filter_name: :user, filter_class: User },
|
|
48
|
+
{ filter_name: :feature, filter_class: Feature },
|
|
49
|
+
],
|
|
50
|
+
variable_filters: [],
|
|
51
|
+
}
|
|
52
|
+
end
|
|
53
|
+
|
|
54
|
+
def configure_filter_ui_settings
|
|
55
|
+
@filter_ui_settings = {}
|
|
56
|
+
end
|
|
57
|
+
|
|
58
|
+
def resource_controller_configuration
|
|
59
|
+
{
|
|
60
|
+
page_title: "Permissions",
|
|
61
|
+
js_view_path: "/kuppayam/workflows/parrot",
|
|
62
|
+
view_path: "/usman/permissions"
|
|
63
|
+
}
|
|
64
|
+
end
|
|
65
|
+
|
|
66
|
+
def breadcrumbs_configuration
|
|
67
|
+
{
|
|
68
|
+
heading: "Manage Permissions",
|
|
69
|
+
icon: "fa-lock",
|
|
70
|
+
description: "Listing all Permissions",
|
|
71
|
+
links: [{name: "Home", link: dashboard_path, icon: 'fa-home'},
|
|
72
|
+
{name: "Manage Permissions", link: permissions_path, icon: 'fa-calendar', active: true}]
|
|
73
|
+
}
|
|
74
|
+
end
|
|
75
|
+
|
|
76
|
+
def permitted_params
|
|
77
|
+
params.require(:permission).permit(:user_id, :feature_id, :can_create, :can_read, :can_update, :can_delete)
|
|
78
|
+
end
|
|
79
|
+
|
|
80
|
+
def set_navs
|
|
81
|
+
set_nav("usman/permissions")
|
|
82
|
+
end
|
|
83
|
+
|
|
84
|
+
end
|
|
85
|
+
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
module Usman
|
|
2
|
+
class ResourceController < ApplicationController
|
|
3
|
+
|
|
4
|
+
include ResourceHelper
|
|
5
|
+
before_action :configure_resource_controller
|
|
6
|
+
|
|
7
|
+
private
|
|
8
|
+
|
|
9
|
+
def set_default_title
|
|
10
|
+
set_title("Usman Admin | User Management Module")
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
def configure_filter_param_mapping
|
|
14
|
+
@filter_param_mapping = default_filter_param_mapping
|
|
15
|
+
@filter_param_mapping[:super_admin] = :sa
|
|
16
|
+
@filter_param_mapping[:user] = :us
|
|
17
|
+
@filter_param_mapping[:feature] = :ft
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
module Usman
|
|
2
|
+
class RolesController < ResourceController
|
|
3
|
+
|
|
4
|
+
before_action :require_site_admin
|
|
5
|
+
|
|
6
|
+
private
|
|
7
|
+
|
|
8
|
+
def get_collections
|
|
9
|
+
@relation = Role.where("")
|
|
10
|
+
|
|
11
|
+
parse_filters
|
|
12
|
+
apply_filters
|
|
13
|
+
|
|
14
|
+
@roles = @r_objects = @relation.page(@current_page).per(@per_page)
|
|
15
|
+
|
|
16
|
+
return true
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
def apply_filters
|
|
20
|
+
@relation = @relation.search(@query) if @query
|
|
21
|
+
|
|
22
|
+
@order_by = "name ASC" unless @order_by
|
|
23
|
+
@relation = @relation.order(@order_by)
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
def configure_filter_settings
|
|
27
|
+
@filter_settings = {
|
|
28
|
+
string_filters: [
|
|
29
|
+
{ filter_name: :query }
|
|
30
|
+
],
|
|
31
|
+
boolean_filters: [],
|
|
32
|
+
reference_filters: [],
|
|
33
|
+
variable_filters: [],
|
|
34
|
+
}
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
def configure_filter_ui_settings
|
|
38
|
+
@filter_ui_settings = {}
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
def resource_controller_configuration
|
|
42
|
+
{
|
|
43
|
+
page_title: "Roles",
|
|
44
|
+
js_view_path: "/kuppayam/workflows/peacock",
|
|
45
|
+
view_path: "/usman/roles"
|
|
46
|
+
}
|
|
47
|
+
end
|
|
48
|
+
|
|
49
|
+
def breadcrumbs_configuration
|
|
50
|
+
{
|
|
51
|
+
heading: "Manage Roles",
|
|
52
|
+
icon: "fa-lock",
|
|
53
|
+
description: "Listing all Roles",
|
|
54
|
+
links: [{name: "Home", link: dashboard_path, icon: 'fa-home'},
|
|
55
|
+
{name: "Manage Roles", link: roles_path, icon: 'fa-calendar', active: true}]
|
|
56
|
+
}
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
def permitted_params
|
|
60
|
+
params.require(:role).permit(:name)
|
|
61
|
+
end
|
|
62
|
+
|
|
63
|
+
def set_navs
|
|
64
|
+
set_nav("admin/roles")
|
|
65
|
+
end
|
|
66
|
+
|
|
67
|
+
end
|
|
68
|
+
end
|
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
module Usman
|
|
2
|
-
class SessionsController <
|
|
2
|
+
class SessionsController < Kuppayam::BaseController
|
|
3
3
|
|
|
4
|
+
include Usman::AuthenticationHelper
|
|
5
|
+
|
|
4
6
|
layout 'kuppayam/blank'
|
|
5
7
|
|
|
6
8
|
rescue_from ActionController::InvalidAuthenticityToken, :with => :rescue_from_invalid_authenticity_token
|
|
7
9
|
|
|
10
|
+
before_action :current_user
|
|
8
11
|
before_action :require_user, :only => :sign_out
|
|
9
12
|
skip_before_action :set_navs
|
|
10
13
|
|