alberich 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- data/Gemfile +18 -0
- data/MIT-LICENSE +20 -0
- data/README.rdoc +37 -0
- data/Rakefile +34 -0
- data/alberich.gemspec +34 -0
- data/app/assets/javascripts/alberich/application.js +15 -0
- data/app/assets/javascripts/alberich/permissions.js +2 -0
- data/app/assets/javascripts/alberich/privileges.js +2 -0
- data/app/assets/javascripts/alberich/roles.js +2 -0
- data/app/assets/stylesheets/alberich/application.css +13 -0
- data/app/assets/stylesheets/alberich/permissions.css +4 -0
- data/app/assets/stylesheets/alberich/privileges.css +4 -0
- data/app/assets/stylesheets/alberich/roles.css +4 -0
- data/app/assets/stylesheets/scaffold.css +56 -0
- data/app/controllers/alberich/application_controller.rb +4 -0
- data/app/controllers/alberich/application_controller_helper.rb +118 -0
- data/app/controllers/alberich/permissions_controller.rb +211 -0
- data/app/controllers/alberich/privileges_controller.rb +105 -0
- data/app/controllers/alberich/roles_controller.rb +97 -0
- data/app/helpers/alberich/application_helper.rb +4 -0
- data/app/helpers/alberich/permissions_helper.rb +4 -0
- data/app/helpers/alberich/privileges_helper.rb +4 -0
- data/app/helpers/alberich/roles_helper.rb +4 -0
- data/app/models/alberich/base_permission_object.rb +42 -0
- data/app/models/alberich/derived_permission.rb +25 -0
- data/app/models/alberich/entity.rb +27 -0
- data/app/models/alberich/entity_target_observer.rb +16 -0
- data/app/models/alberich/permission.rb +59 -0
- data/app/models/alberich/permission_session.rb +33 -0
- data/app/models/alberich/permissioned_object.rb +139 -0
- data/app/models/alberich/privilege.rb +29 -0
- data/app/models/alberich/role.rb +37 -0
- data/app/models/alberich/session_entity.rb +15 -0
- data/app/views/alberich/permissions/_form.html.haml +27 -0
- data/app/views/alberich/permissions/_list.html.haml +1 -0
- data/app/views/alberich/permissions/_objects.html.haml +38 -0
- data/app/views/alberich/permissions/_permissions.html.haml +45 -0
- data/app/views/alberich/permissions/index.html.haml +2 -0
- data/app/views/alberich/permissions/new.html.haml +5 -0
- data/app/views/alberich/permissions/show.html.haml +12 -0
- data/app/views/alberich/privileges/_form.html.haml +19 -0
- data/app/views/alberich/privileges/_list.html.haml +17 -0
- data/app/views/alberich/privileges/create.html.haml +2 -0
- data/app/views/alberich/privileges/destroy.html.haml +2 -0
- data/app/views/alberich/privileges/edit.html.haml +5 -0
- data/app/views/alberich/privileges/index.html.haml +5 -0
- data/app/views/alberich/privileges/new.html.haml +5 -0
- data/app/views/alberich/privileges/show.html.haml +12 -0
- data/app/views/alberich/privileges/update.html.haml +2 -0
- data/app/views/alberich/roles/_form.html.haml +24 -0
- data/app/views/alberich/roles/edit.html.haml +7 -0
- data/app/views/alberich/roles/index.html.haml +23 -0
- data/app/views/alberich/roles/new.html.haml +5 -0
- data/app/views/alberich/roles/show.html.haml +16 -0
- data/app/views/layouts/alberich/application.html.erb +14 -0
- data/config/initializers/haml.rb +1 -0
- data/config/routes.rb +17 -0
- data/db/migrate/20120925162242_create_alberich_roles.rb +12 -0
- data/db/migrate/20121022223626_create_alberich_privileges.rb +12 -0
- data/db/migrate/20121023051301_create_alberich_base_permission_objects.rb +9 -0
- data/db/migrate/20121023233648_create_alberich_permission_sessions.rb +11 -0
- data/db/migrate/20121027023136_create_alberich_entities.rb +34 -0
- data/db/migrate/20121204205213_create_alberich_session_entities.rb +12 -0
- data/db/migrate/20121205180518_create_alberich_permissions.rb +13 -0
- data/db/migrate/20130107043252_create_alberich_derived_permissions.rb +18 -0
- data/lib/alberich.rb +10 -0
- data/lib/alberich/#version.rb# +3 -0
- data/lib/alberich/engine.rb +10 -0
- data/lib/alberich/version.rb +3 -0
- data/lib/generators/alberich/install_generator.rb +15 -0
- data/lib/generators/alberich/templates/README +6 -0
- data/lib/generators/alberich/templates/alberich.rb +11 -0
- data/lib/tasks/alberich_tasks.rake +4 -0
- data/spec/controllers/alberich/permissions_controller_spec.rb +112 -0
- data/spec/controllers/alberich/privileges_controller_spec.rb +131 -0
- data/spec/controllers/alberich/roles_controller_spec.rb +130 -0
- data/spec/factories/alberich/permission.rb +51 -0
- data/spec/factories/alberich/permission_session.rb +7 -0
- data/spec/factories/alberich/privilege.rb +6 -0
- data/spec/factories/alberich/role.rb +103 -0
- data/spec/factories/child_resource.rb +14 -0
- data/spec/factories/child_resource.rb~ +7 -0
- data/spec/factories/global_resource.rb +11 -0
- data/spec/factories/global_resource.rb~ +25 -0
- data/spec/factories/parent_resource.rb +12 -0
- data/spec/factories/parent_resource.rb~ +7 -0
- data/spec/factories/standalone_resource.rb +7 -0
- data/spec/factories/standalone_resource.rb~ +11 -0
- data/spec/factories/user.rb +30 -0
- data/spec/factories/user_group.rb +8 -0
- data/spec/models/alberich/derived_permission_spec.rb +34 -0
- data/spec/models/alberich/entity_spec.rb +15 -0
- data/spec/models/alberich/permission_spec.rb +133 -0
- data/spec/models/alberich/privilege_spec.rb +39 -0
- data/spec/models/alberich/role_spec.rb +33 -0
- data/spec/models/alberich/session_entity_spec.rb +24 -0
- data/spec/spec_helper.rb +81 -0
- data/spec/support/routes.rb +41 -0
- data/test/dummy/README.rdoc +261 -0
- data/test/dummy/Rakefile +7 -0
- data/test/dummy/app/assets/javascripts/application.js +15 -0
- data/test/dummy/app/assets/javascripts/child_resources.js +2 -0
- data/test/dummy/app/assets/javascripts/global_resources.js +2 -0
- data/test/dummy/app/assets/javascripts/parent_resources.js +2 -0
- data/test/dummy/app/assets/javascripts/standalone_resources.js +2 -0
- data/test/dummy/app/assets/javascripts/user_groups.js +2 -0
- data/test/dummy/app/assets/javascripts/users.js +2 -0
- data/test/dummy/app/assets/stylesheets/application.css +13 -0
- data/test/dummy/app/assets/stylesheets/child_resources.css +4 -0
- data/test/dummy/app/assets/stylesheets/global_resources.css +4 -0
- data/test/dummy/app/assets/stylesheets/parent_resources.css +4 -0
- data/test/dummy/app/assets/stylesheets/scaffold.css +56 -0
- data/test/dummy/app/assets/stylesheets/standalone_resources.css +4 -0
- data/test/dummy/app/assets/stylesheets/user_groups.css +4 -0
- data/test/dummy/app/assets/stylesheets/users.css +4 -0
- data/test/dummy/app/controllers/application_controller.rb +73 -0
- data/test/dummy/app/controllers/child_resources_controller.rb +99 -0
- data/test/dummy/app/controllers/child_resources_controller.rb~ +83 -0
- data/test/dummy/app/controllers/global_resources_controller.rb +95 -0
- data/test/dummy/app/controllers/global_resources_controller.rb~ +83 -0
- data/test/dummy/app/controllers/parent_resources_controller.rb +101 -0
- data/test/dummy/app/controllers/parent_resources_controller.rb~ +83 -0
- data/test/dummy/app/controllers/standalone_resources_controller.rb +101 -0
- data/test/dummy/app/controllers/standalone_resources_controller.rb~ +83 -0
- data/test/dummy/app/controllers/user_groups_controller.rb +131 -0
- data/test/dummy/app/controllers/user_sessions_controller.rb +38 -0
- data/test/dummy/app/controllers/users_controller.rb +87 -0
- data/test/dummy/app/helpers/application_helper.rb +2 -0
- data/test/dummy/app/helpers/child_resources_helper.rb +2 -0
- data/test/dummy/app/helpers/global_resources_helper.rb +2 -0
- data/test/dummy/app/helpers/parent_resources_helper.rb +2 -0
- data/test/dummy/app/helpers/standalone_resources_helper.rb +2 -0
- data/test/dummy/app/helpers/user_groups_helper.rb +2 -0
- data/test/dummy/app/helpers/users_helper.rb +2 -0
- data/test/dummy/app/models/child_resource.rb +25 -0
- data/test/dummy/app/models/child_resource.rb~ +4 -0
- data/test/dummy/app/models/global_resource.rb +3 -0
- data/test/dummy/app/models/parent_resource.rb +32 -0
- data/test/dummy/app/models/parent_resource.rb~ +3 -0
- data/test/dummy/app/models/standalone_resource.rb +22 -0
- data/test/dummy/app/models/standalone_resource.rb~ +3 -0
- data/test/dummy/app/models/user.rb +80 -0
- data/test/dummy/app/models/user_group.rb +12 -0
- data/test/dummy/app/views/child_resources/_form.html.erb +30 -0
- data/test/dummy/app/views/child_resources/_form.html.erb~ +29 -0
- data/test/dummy/app/views/child_resources/edit.html.erb +6 -0
- data/test/dummy/app/views/child_resources/index.html.erb +25 -0
- data/test/dummy/app/views/child_resources/index.html.erb~ +27 -0
- data/test/dummy/app/views/child_resources/new.html.erb +5 -0
- data/test/dummy/app/views/child_resources/show.html.erb +20 -0
- data/test/dummy/app/views/child_resources/show.html.erb~ +20 -0
- data/test/dummy/app/views/global_resources/_form.html.erb +25 -0
- data/test/dummy/app/views/global_resources/edit.html.erb +6 -0
- data/test/dummy/app/views/global_resources/index.html.erb +25 -0
- data/test/dummy/app/views/global_resources/new.html.erb +5 -0
- data/test/dummy/app/views/global_resources/show.html.erb +15 -0
- data/test/dummy/app/views/layouts/application.html.erb +14 -0
- data/test/dummy/app/views/parent_resources/_form.html.erb +25 -0
- data/test/dummy/app/views/parent_resources/edit.html.erb +6 -0
- data/test/dummy/app/views/parent_resources/index.html.erb +25 -0
- data/test/dummy/app/views/parent_resources/index.html.erb~ +25 -0
- data/test/dummy/app/views/parent_resources/new.html.erb +5 -0
- data/test/dummy/app/views/parent_resources/show.html.erb +44 -0
- data/test/dummy/app/views/parent_resources/show.html.erb~ +15 -0
- data/test/dummy/app/views/standalone_resources/_form.html.erb +25 -0
- data/test/dummy/app/views/standalone_resources/edit.html.erb +6 -0
- data/test/dummy/app/views/standalone_resources/index.html.erb +25 -0
- data/test/dummy/app/views/standalone_resources/new.html.erb +5 -0
- data/test/dummy/app/views/standalone_resources/show.html.erb +15 -0
- data/test/dummy/app/views/user_groups/_form.html.haml +9 -0
- data/test/dummy/app/views/user_groups/add_members.html.haml +18 -0
- data/test/dummy/app/views/user_groups/edit.html.haml +13 -0
- data/test/dummy/app/views/user_groups/index.html.haml +20 -0
- data/test/dummy/app/views/user_groups/new.html.haml +11 -0
- data/test/dummy/app/views/user_groups/show.html.haml +42 -0
- data/test/dummy/app/views/user_sessions/new.html.haml +26 -0
- data/test/dummy/app/views/users/_form.html.haml +25 -0
- data/test/dummy/app/views/users/edit.html.haml +14 -0
- data/test/dummy/app/views/users/index.html.haml +26 -0
- data/test/dummy/app/views/users/new.html.haml +11 -0
- data/test/dummy/app/views/users/show.html.haml +56 -0
- data/test/dummy/config.ru +4 -0
- data/test/dummy/config/application.rb +59 -0
- data/test/dummy/config/boot.rb +10 -0
- data/test/dummy/config/database.yml +25 -0
- data/test/dummy/config/environment.rb +5 -0
- data/test/dummy/config/environments/development.rb +37 -0
- data/test/dummy/config/environments/production.rb +67 -0
- data/test/dummy/config/environments/test.rb +37 -0
- data/test/dummy/config/initializers/alberich.rb +13 -0
- data/test/dummy/config/initializers/backtrace_silencers.rb +7 -0
- data/test/dummy/config/initializers/inflections.rb +15 -0
- data/test/dummy/config/initializers/mime_types.rb +5 -0
- data/test/dummy/config/initializers/secret_token.rb +7 -0
- data/test/dummy/config/initializers/session_store.rb +8 -0
- data/test/dummy/config/initializers/warden.rb +79 -0
- data/test/dummy/config/initializers/wrap_parameters.rb +14 -0
- data/test/dummy/config/locales/en.yml +5 -0
- data/test/dummy/config/routes.rb +33 -0
- data/test/dummy/db/migrate/20120801010101_create_users.rb +20 -0
- data/test/dummy/db/migrate/20121121054319_create_user_groups.rb +16 -0
- data/test/dummy/db/migrate/20130220160811_create_global_resources.rb +10 -0
- data/test/dummy/db/migrate/20130220175258_create_standalone_resources.rb +10 -0
- data/test/dummy/db/migrate/20130226145412_create_parent_resources.rb +10 -0
- data/test/dummy/db/migrate/20130226151256_create_child_resources.rb +12 -0
- data/test/dummy/db/migrate/20130226151256_create_child_resources.rb~ +12 -0
- data/test/dummy/db/schema.rb +151 -0
- data/test/dummy/db/seeds.rb +65 -0
- data/test/dummy/lib/password.rb +58 -0
- data/test/dummy/public/404.html +26 -0
- data/test/dummy/public/422.html +26 -0
- data/test/dummy/public/500.html +25 -0
- data/test/dummy/public/favicon.ico +0 -0
- data/test/dummy/script/rails +6 -0
- data/test/dummy/test/fixtures/child_resources.yml +11 -0
- data/test/dummy/test/fixtures/global_resources.yml +9 -0
- data/test/dummy/test/fixtures/parent_resources.yml +9 -0
- data/test/dummy/test/fixtures/standalone_resources.yml +9 -0
- data/test/dummy/test/fixtures/user_groups.yml +9 -0
- data/test/dummy/test/fixtures/users.yml +37 -0
- data/test/dummy/test/functional/child_resources_controller_test.rb +49 -0
- data/test/dummy/test/functional/global_resources_controller_test.rb +49 -0
- data/test/dummy/test/functional/parent_resources_controller_test.rb +49 -0
- data/test/dummy/test/functional/standalone_resources_controller_test.rb +49 -0
- data/test/dummy/test/functional/user_groups_controller_test.rb +49 -0
- data/test/dummy/test/functional/users_controller_test.rb +39 -0
- data/test/dummy/test/unit/child_resource_test.rb +7 -0
- data/test/dummy/test/unit/global_resource_test.rb +7 -0
- data/test/dummy/test/unit/helpers/child_resources_helper_test.rb +4 -0
- data/test/dummy/test/unit/helpers/global_resources_helper_test.rb +4 -0
- data/test/dummy/test/unit/helpers/parent_resources_helper_test.rb +4 -0
- data/test/dummy/test/unit/helpers/standalone_resources_helper_test.rb +4 -0
- data/test/dummy/test/unit/helpers/user_groups_helper_test.rb +4 -0
- data/test/dummy/test/unit/helpers/users_helper_test.rb +4 -0
- data/test/dummy/test/unit/parent_resource_test.rb +7 -0
- data/test/dummy/test/unit/standalone_resource_test.rb +7 -0
- data/test/dummy/test/unit/user_group_test.rb +7 -0
- data/test/dummy/test/unit/user_test.rb +7 -0
- data/test/integration/alberich/permission_test.rb +7 -0
- data/test/integration/alberich/privilege_test.rb +7 -0
- data/test/integration/alberich/role_test.rb +7 -0
- metadata +639 -0
@@ -0,0 +1,25 @@
|
|
1
|
+
<%= form_for(@standalone_resource) do |f| %>
|
2
|
+
<% if @standalone_resource.errors.any? %>
|
3
|
+
<div id="error_explanation">
|
4
|
+
<h2><%= pluralize(@standalone_resource.errors.count, "error") %> prohibited this standalone_resource from being saved:</h2>
|
5
|
+
|
6
|
+
<ul>
|
7
|
+
<% @standalone_resource.errors.full_messages.each do |msg| %>
|
8
|
+
<li><%= msg %></li>
|
9
|
+
<% end %>
|
10
|
+
</ul>
|
11
|
+
</div>
|
12
|
+
<% end %>
|
13
|
+
|
14
|
+
<div class="field">
|
15
|
+
<%= f.label :name %><br />
|
16
|
+
<%= f.text_field :name %>
|
17
|
+
</div>
|
18
|
+
<div class="field">
|
19
|
+
<%= f.label :description %><br />
|
20
|
+
<%= f.text_field :description %>
|
21
|
+
</div>
|
22
|
+
<div class="actions">
|
23
|
+
<%= f.submit %>
|
24
|
+
</div>
|
25
|
+
<% end %>
|
@@ -0,0 +1,25 @@
|
|
1
|
+
<h1>Listing standalone_resources</h1>
|
2
|
+
|
3
|
+
<table>
|
4
|
+
<tr>
|
5
|
+
<th>Name</th>
|
6
|
+
<th>Description</th>
|
7
|
+
<th></th>
|
8
|
+
<th></th>
|
9
|
+
<th></th>
|
10
|
+
</tr>
|
11
|
+
|
12
|
+
<% @standalone_resources.each do |standalone_resource| %>
|
13
|
+
<tr>
|
14
|
+
<td><%= standalone_resource.name %></td>
|
15
|
+
<td><%= standalone_resource.description %></td>
|
16
|
+
<td><%= link_to 'Show', standalone_resource %></td>
|
17
|
+
<td><%= link_to 'Edit', edit_standalone_resource_path(standalone_resource) if check_privilege(Alberich::Privilege::MODIFY, standalone_resource)%></td>
|
18
|
+
<td><%= link_to 'Destroy', standalone_resource, method: :delete, data: { confirm: 'Are you sure?' } if check_privilege(Alberich::Privilege::MODIFY, standalone_resource)%></td>
|
19
|
+
</tr>
|
20
|
+
<% end %>
|
21
|
+
</table>
|
22
|
+
|
23
|
+
<br />
|
24
|
+
|
25
|
+
<%= link_to 'New Standalone resource', new_standalone_resource_path if check_privilege(Alberich::Privilege::CREATE, StandaloneResource)%>
|
@@ -0,0 +1,15 @@
|
|
1
|
+
<p id="notice"><%= notice %></p>
|
2
|
+
|
3
|
+
<p>
|
4
|
+
<b>Name:</b>
|
5
|
+
<%= @standalone_resource.name %>
|
6
|
+
</p>
|
7
|
+
|
8
|
+
<p>
|
9
|
+
<b>Description:</b>
|
10
|
+
<%= @standalone_resource.description %>
|
11
|
+
</p>
|
12
|
+
|
13
|
+
|
14
|
+
<%= link_to 'Edit', edit_standalone_resource_path(@standalone_resource) if check_privilege(Alberich::Privilege::MODIFY, @standalone_resource)%> |
|
15
|
+
<%= link_to 'Back', standalone_resources_path %>
|
@@ -0,0 +1,18 @@
|
|
1
|
+
%h1= "Add member to #{@user_group.name}"
|
2
|
+
%table
|
3
|
+
%tr
|
4
|
+
%th username
|
5
|
+
%th last name
|
6
|
+
%th first name
|
7
|
+
%th email
|
8
|
+
%th
|
9
|
+
|
10
|
+
- @users.each do |user|
|
11
|
+
%tr
|
12
|
+
%th= user.username
|
13
|
+
%th= user.last_name
|
14
|
+
%th= user.first_name
|
15
|
+
%th= user.email
|
16
|
+
%th= link_to 'Add', add_member_user_group_path(@user_group, :user_id=>user)
|
17
|
+
|
18
|
+
= link_to 'return to group', user_group_path(@user_group)
|
@@ -0,0 +1,13 @@
|
|
1
|
+
%header.page-header
|
2
|
+
.obj_actions
|
3
|
+
.return_to
|
4
|
+
Return to
|
5
|
+
= link_to "Show", @user_group
|
6
|
+
|
|
7
|
+
= link_to "user_groups", user_groups_path
|
8
|
+
%h1.users Editing user group
|
9
|
+
|
10
|
+
%section.content-section.user
|
11
|
+
.content
|
12
|
+
= form_for @user_group do |f|
|
13
|
+
= render :partial => "form", :locals => { :form => f }
|
@@ -0,0 +1,20 @@
|
|
1
|
+
%h1 User Groups
|
2
|
+
|
3
|
+
%table
|
4
|
+
%tr
|
5
|
+
%th Name
|
6
|
+
%th Description
|
7
|
+
%th
|
8
|
+
%th
|
9
|
+
%th
|
10
|
+
|
11
|
+
- @user_groups.each do |user_group|
|
12
|
+
%tr
|
13
|
+
%td= user_group.name
|
14
|
+
%td= user_group.description
|
15
|
+
%td= link_to 'Show', user_group
|
16
|
+
%td= link_to 'Edit', edit_user_group_path(user_group)
|
17
|
+
%td= link_to 'Destroy', user_group, method: :delete, data: { confirm: 'Are you sure?' }
|
18
|
+
%br
|
19
|
+
|
20
|
+
= link_to 'New User group', new_user_group_path
|
@@ -0,0 +1,11 @@
|
|
1
|
+
%header.page-header
|
2
|
+
.obj_actions
|
3
|
+
.return_to
|
4
|
+
Return to
|
5
|
+
= link_to "user_groups", user_groups_path
|
6
|
+
%h1.users New user group
|
7
|
+
|
8
|
+
%section.content-section.user
|
9
|
+
.content
|
10
|
+
= form_for @user_group do |f|
|
11
|
+
= render :partial => "form", :locals => { :form => f }
|
@@ -0,0 +1,42 @@
|
|
1
|
+
%p#notice= notice
|
2
|
+
|
3
|
+
%p
|
4
|
+
%b Name:
|
5
|
+
= @user_group.name
|
6
|
+
|
7
|
+
%p
|
8
|
+
%b Description:
|
9
|
+
= @user_group.description
|
10
|
+
|
11
|
+
%p Members
|
12
|
+
|
13
|
+
%table
|
14
|
+
%tr
|
15
|
+
%th username
|
16
|
+
%th last name
|
17
|
+
%th first name
|
18
|
+
%th email
|
19
|
+
%th
|
20
|
+
%th
|
21
|
+
|
22
|
+
- @user_group.members.each do |user|
|
23
|
+
%tr
|
24
|
+
%th= user.username
|
25
|
+
%th= user.last_name
|
26
|
+
%th= user.first_name
|
27
|
+
%th= user.email
|
28
|
+
%th= link_to 'Show', user
|
29
|
+
%th= link_to 'Remove', remove_member_user_group_path(@user_group, :user_id=>user), method: :delete, data: { confirm: 'Are you sure?' }
|
30
|
+
%br
|
31
|
+
|
32
|
+
= link_to 'Add Member', add_members_user_group_path
|
33
|
+
|
34
|
+
%section.content-section.permissions
|
35
|
+
%header
|
36
|
+
%h2.permissions Permissions
|
37
|
+
.content
|
38
|
+
= render :partial => 'alberich/permissions/objects'
|
39
|
+
|
40
|
+
= link_to 'Edit', edit_user_group_path(@user_group)
|
41
|
+
|
|
42
|
+
= link_to 'Back', user_groups_path
|
@@ -0,0 +1,26 @@
|
|
1
|
+
= content_for :title do
|
2
|
+
Alberich test application
|
3
|
+
|
4
|
+
= content_for :notifications do
|
5
|
+
-if flash[:warning]
|
6
|
+
%div.error
|
7
|
+
%p.text= flash[:warning]
|
8
|
+
|
9
|
+
= content_for(:content) do
|
10
|
+
%h1 Log in
|
11
|
+
.card
|
12
|
+
= form_tag user_session_path, :id => 'login_form', :method => "post" do
|
13
|
+
%fieldset.primary
|
14
|
+
= label_tag :username, "username"
|
15
|
+
= text_field_tag :username, params[:username], :class => 'username', :id => "username"
|
16
|
+
%fieldset.primary
|
17
|
+
= label_tag :password, "password"
|
18
|
+
= password_field_tag :password, params[:password], :class => 'password', :id => 'password-input'
|
19
|
+
= submit_tag "Log in", :class => "button fr", :id => 'login_btn'
|
20
|
+
.spinner
|
21
|
+
|
22
|
+
%div.container
|
23
|
+
#notifications
|
24
|
+
= yield :notifications
|
25
|
+
%section
|
26
|
+
= yield :content
|
@@ -0,0 +1,25 @@
|
|
1
|
+
.field
|
2
|
+
= form.label :first_name, :class => 'em'
|
3
|
+
.input
|
4
|
+
= form.text_field :first_name, :class => "em long"
|
5
|
+
.field
|
6
|
+
= form.label :last_name, :class => 'em'
|
7
|
+
.input
|
8
|
+
= form.text_field :last_name, :class => "em long"
|
9
|
+
.field
|
10
|
+
= form.label :email, :class => 'em'
|
11
|
+
.input
|
12
|
+
= form.text_field :email, :class => "em long"
|
13
|
+
.field
|
14
|
+
= form.label :username, :class => 'em'
|
15
|
+
.input
|
16
|
+
= form.text_field :username, :class => "em long"
|
17
|
+
.field
|
18
|
+
= form.label :password, :class => 'em'
|
19
|
+
.input
|
20
|
+
= form.password_field :password, :class => "em long"
|
21
|
+
.field
|
22
|
+
= form.label :password_confirmation, :class => 'em'
|
23
|
+
.input
|
24
|
+
= form.password_field :password_confirmation, :class => "em long"
|
25
|
+
= form.submit
|
@@ -0,0 +1,14 @@
|
|
1
|
+
%header.page-header
|
2
|
+
.obj_actions
|
3
|
+
.return_to
|
4
|
+
Return to
|
5
|
+
= link_to "users", users_path
|
6
|
+
/- if check_privilege(Privilege::MODIFY, User)
|
7
|
+
/ %h1.users= @title
|
8
|
+
/- else
|
9
|
+
%h1.users Edit account
|
10
|
+
|
11
|
+
%section.content-section.user
|
12
|
+
.content
|
13
|
+
= form_for @user do |f|
|
14
|
+
= render :partial => "form", :locals => { :form => f }
|
@@ -0,0 +1,26 @@
|
|
1
|
+
%h1 Users
|
2
|
+
|
3
|
+
%table
|
4
|
+
%tr
|
5
|
+
%th username
|
6
|
+
%th last name
|
7
|
+
%th first name
|
8
|
+
%th email
|
9
|
+
%th
|
10
|
+
%th
|
11
|
+
%th
|
12
|
+
|
13
|
+
- @users.each do |user|
|
14
|
+
%tr
|
15
|
+
%th= user.username
|
16
|
+
%th= user.last_name
|
17
|
+
%th= user.first_name
|
18
|
+
%th= user.email
|
19
|
+
%th= link_to 'Show', user
|
20
|
+
%th= link_to 'Edit', edit_user_path(user)
|
21
|
+
%th= link_to 'Destroy', user, method: :delete, data: { confirm: 'Are you sure?' }
|
22
|
+
|
23
|
+
%br
|
24
|
+
|
25
|
+
= link_to 'New User', new_user_path
|
26
|
+
|
@@ -0,0 +1,56 @@
|
|
1
|
+
%header.page-header
|
2
|
+
.obj_actions
|
3
|
+
/ - if check_privilege(Privilege::VIEW, User)
|
4
|
+
/ .return_to
|
5
|
+
/ =t'return_to'
|
6
|
+
/ = link_to "Users", users_path
|
7
|
+
|
8
|
+
%section.content-section.user
|
9
|
+
.content
|
10
|
+
#user_card.user_stats_card
|
11
|
+
%header.user-card-header
|
12
|
+
%h2= @user.username
|
13
|
+
%dl
|
14
|
+
%dt user Email
|
15
|
+
%dd= @user.email
|
16
|
+
%dt username
|
17
|
+
%dd= @user.username
|
18
|
+
.button-group
|
19
|
+
= link_to "Edit", edit_user_path(@user), :class => 'button'
|
20
|
+
- unless @user.id == current_user.id
|
21
|
+
= link_to "Delete", user_path(@user), :method => :delete, :confirm => "Are you sure you want to delete this user?", :class => "button danger"
|
22
|
+
%dl.user_stats
|
23
|
+
%ul
|
24
|
+
%div
|
25
|
+
%li
|
26
|
+
%dt Create time
|
27
|
+
%dd= l(@user.created_at.to_date, :format => :long) if @user.created_at
|
28
|
+
%li
|
29
|
+
%dt Number of logins
|
30
|
+
%dd= @user.login_count
|
31
|
+
%li
|
32
|
+
%dt Last login
|
33
|
+
%dd= l(@user.last_login_at, :format => :long) if @user.last_login_at
|
34
|
+
%div
|
35
|
+
%li
|
36
|
+
%dt Last updated
|
37
|
+
%dd= l(@user.updated_at, :format => :long) if @user.updated_at
|
38
|
+
%li
|
39
|
+
%dt Failed logins
|
40
|
+
%dd= @user.failed_login_count
|
41
|
+
%li
|
42
|
+
%dt Last Login IP
|
43
|
+
%dd= @user.last_login_ip
|
44
|
+
|
45
|
+
%section.content-section.groups
|
46
|
+
%header
|
47
|
+
%h2.groups=t'users.groups'
|
48
|
+
.content
|
49
|
+
- @user.user_groups.each do |user_group|
|
50
|
+
%tr{:class => cycle('nostripe','stripe')}
|
51
|
+
%td= link_to user_group.name, user_group_path(user_group)
|
52
|
+
%section.content-section.permissions
|
53
|
+
%header
|
54
|
+
%h2.permissions Permissions
|
55
|
+
.content
|
56
|
+
= render :partial => 'alberich/permissions/objects'
|
@@ -0,0 +1,59 @@
|
|
1
|
+
require File.expand_path('../boot', __FILE__)
|
2
|
+
|
3
|
+
require 'rails/all'
|
4
|
+
|
5
|
+
Bundler.require
|
6
|
+
require "alberich"
|
7
|
+
|
8
|
+
module Dummy
|
9
|
+
class Application < Rails::Application
|
10
|
+
# Settings in config/environments/* take precedence over those specified here.
|
11
|
+
# Application configuration should go into files in config/initializers
|
12
|
+
# -- all .rb files in that directory are automatically loaded.
|
13
|
+
|
14
|
+
# Custom directories with classes and modules you want to be autoloadable.
|
15
|
+
# config.autoload_paths += %W(#{config.root}/extras)
|
16
|
+
|
17
|
+
# Only load the plugins named here, in the order given (default is alphabetical).
|
18
|
+
# :all can be used as a placeholder for all plugins not explicitly named.
|
19
|
+
# config.plugins = [ :exception_notification, :ssl_requirement, :all ]
|
20
|
+
|
21
|
+
# Activate observers that should always be running.
|
22
|
+
# config.active_record.observers = :cacher, :garbage_collector, :forum_observer
|
23
|
+
|
24
|
+
# Set Time.zone default to the specified zone and make Active Record auto-convert to this zone.
|
25
|
+
# Run "rake -D time" for a list of tasks for finding time zone names. Default is UTC.
|
26
|
+
# config.time_zone = 'Central Time (US & Canada)'
|
27
|
+
|
28
|
+
# The default locale is :en and all translations from config/locales/*.rb,yml are auto loaded.
|
29
|
+
# config.i18n.load_path += Dir[Rails.root.join('my', 'locales', '*.{rb,yml}').to_s]
|
30
|
+
# config.i18n.default_locale = :de
|
31
|
+
|
32
|
+
# Configure the default encoding used in templates for Ruby 1.9.
|
33
|
+
config.encoding = "utf-8"
|
34
|
+
|
35
|
+
# Configure sensitive parameters which will be filtered from the log file.
|
36
|
+
config.filter_parameters += [:password]
|
37
|
+
|
38
|
+
# Enable escaping HTML in JSON.
|
39
|
+
config.active_support.escape_html_entities_in_json = true
|
40
|
+
|
41
|
+
# Use SQL instead of Active Record's schema dumper when creating the database.
|
42
|
+
# This is necessary if your schema can't be completely dumped by the schema dumper,
|
43
|
+
# like if you have constraints or database-specific column types
|
44
|
+
# config.active_record.schema_format = :sql
|
45
|
+
|
46
|
+
# Enforce whitelist mode for mass assignment.
|
47
|
+
# This will create an empty whitelist of attributes available for mass-assignment for all models
|
48
|
+
# in your app. As such, your models will need to explicitly whitelist or blacklist accessible
|
49
|
+
# parameters by using an attr_accessible or attr_protected declaration.
|
50
|
+
config.active_record.whitelist_attributes = true
|
51
|
+
|
52
|
+
# Enable the asset pipeline
|
53
|
+
config.assets.enabled = true
|
54
|
+
|
55
|
+
# Version of your assets, change this if you want to expire all your assets
|
56
|
+
config.assets.version = '1.0'
|
57
|
+
end
|
58
|
+
end
|
59
|
+
|