permissify 0.0.10 → 0.0.11

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.
@@ -1,9 +1,10 @@
1
1
  module Permissify
2
2
  module Generators
3
3
  class ControllerGenerator < Rails::Generators::Base
4
- source_root File.expand_path('../template/interface', __FILE__)
4
+ source_root File.expand_path('../template', __FILE__)
5
5
 
6
6
  def generate_controller
7
+ copy_file "permissions_controller.rb", "app/controllers/permissions_controller.rb"
7
8
  copy_file "permissified_controller.rb", "app/controllers/permissified_controller.rb"
8
9
  end
9
10
  end
@@ -0,0 +1,78 @@
1
+ class PermissionsController < ApplicationController
2
+ before_filter :require_user
3
+ before_filter :set_permissions_class
4
+ before_filter :find_permissions_object, :only => [:edit, :update, :destroy]
5
+ before_filter :set_nav
6
+
7
+ def index
8
+ render :template => 'permissions/index'
9
+ end
10
+
11
+ def edit
12
+ js_response
13
+ end
14
+
15
+ def destroy
16
+ if @permissions_object.respond_to?(:deleted_at)
17
+ @permissions_object.update_attribute(:deleted_at, Time.now)
18
+ else
19
+ @permissions_object.destroy
20
+ end
21
+ js_response
22
+ end
23
+
24
+ def create
25
+ @permissions_object = @permissions_class.new
26
+ @permissions_object.name = params[:role][:name]
27
+ @permissions_object.from = params[:role][:from]
28
+ @permissions_object.save
29
+ set_permissions_object
30
+ @response_message = @permissions_object.errors.full_messages.join(', ')
31
+ js_response
32
+ end
33
+
34
+ def update
35
+ permission_attributes = params[@permissions_name]
36
+ permission_attributes ||= {}
37
+ class_attributes = params[@corresponding_class_params_key]
38
+ class_attributes ||= {}
39
+ # @saved = @permissions_object.update_attributes class_attributes.merge(permission_attributes)
40
+ attrs = class_attributes.merge(permission_attributes)
41
+ @permissions_object.domain_type = attrs[:domain_type]
42
+ @permissions_object.managed_by = attrs[:managed_by]
43
+ @permissions_object.can_manage_roles = attrs[:can_manage_roles]
44
+ @permissions_object.permissions = attrs[:permissions]
45
+ # @permissions_object.attributes = class_attributes.merge(permission_attributes)
46
+ @saved = @permissions_object.save
47
+ js_response
48
+ end
49
+
50
+ def set_the_permissions_class(the_class, corresponding_class_params_key, prefix, applicability, permissions_header, sort_field = :name)
51
+ @permissions_prefix = prefix
52
+ @permissions_class = the_class
53
+ @corresponding_class_params_key = corresponding_class_params_key
54
+ @applicability = applicability
55
+ # relative pathing isn't working in devint (ok in dev): working around with post-deploy symlinks
56
+ @view_directory = Rails.env == 'development' ? '../permissions/' : ''
57
+ @permissions_name = @permissions_prefix.chop
58
+ @permissions_category = @permissions_name+'s'
59
+ @sort_field = sort_field
60
+ @index_columns = corresponding_class_params_key == :role ? 6 : 4
61
+ @permissions_header = permissions_header
62
+ end
63
+
64
+ def find_permissions_object
65
+ @permissions_object = @permissions_class.find(params[:id])
66
+ set_permissions_object
67
+ end
68
+
69
+ def js_response
70
+ render :action => "#{@view_directory}#{params[:action]}_response"
71
+ end
72
+
73
+ def set_nav
74
+ @active_tab = 'admin'
75
+ @active_section = 'Admin'
76
+ @active_nav = 'Roles'
77
+ end
78
+ end
@@ -2,7 +2,7 @@
2
2
  <h1 class="pageName">Edit <%= @permissions_header %></h1>
3
3
  <%= form_tag form_path, :method => :put, :remote => true do |f| %>
4
4
  <!-- %= error_messages_for :product_tier % -->
5
- <table>
5
+ <table style="border-spacing:8px;">
6
6
  <tbody>
7
7
  <%= render :partial => 'permissions_fields' %>
8
8
  <tr>
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: permissify
3
3
  version: !ruby/object:Gem::Version
4
- hash: 11
4
+ hash: 9
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 0
9
- - 10
10
- version: 0.0.10
9
+ - 11
10
+ version: 0.0.11
11
11
  platform: ruby
12
12
  authors:
13
13
  - Frederick Fix
@@ -62,7 +62,8 @@ files:
62
62
  - lib/generators/permissify/ability/template/ability.rb
63
63
  - lib/generators/permissify/ability/USAGE
64
64
  - lib/generators/permissify/controller/controller_generator.rb
65
- - lib/generators/permissify/controller/template/interface/permissified_controller.rb
65
+ - lib/generators/permissify/controller/template/permissified_controller.rb
66
+ - lib/generators/permissify/controller/template/permissions_controller.rb
66
67
  - lib/generators/permissify/controller/USAGE
67
68
  - lib/generators/permissify/product/product_generator.rb
68
69
  - lib/generators/permissify/product/template/interface/permissified_brand.rb