adeia 0.4.0 → 0.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (31) hide show
  1. checksums.yaml +4 -4
  2. data/app/models/adeia/action.rb +1 -1
  3. data/app/models/adeia/action_permission.rb +2 -2
  4. data/app/models/adeia/element.rb +1 -1
  5. data/app/models/adeia/group.rb +1 -1
  6. data/app/models/adeia/group_user.rb +1 -1
  7. data/app/models/adeia/permission.rb +2 -2
  8. data/app/models/adeia/token.rb +6 -6
  9. data/db/migrate/20151003144208_create_adeia_permissions.rb +1 -1
  10. data/db/migrate/20151003144706_create_adeia_group_users.rb +1 -1
  11. data/db/migrate/20151003150524_create_adeia_tokens.rb +1 -1
  12. data/db/migrate/20151003150806_create_adeia_action_permissions.rb +2 -2
  13. data/lib/adeia/database.rb +1 -1
  14. data/lib/adeia/version.rb +1 -1
  15. data/spec/factories.rb +0 -1
  16. data/spec/test_app/db/development.sqlite3 +0 -0
  17. data/spec/test_app/db/schema.rb +18 -18
  18. data/spec/test_app/db/test.sqlite3 +0 -0
  19. data/spec/test_app/log/development.log +416 -0
  20. data/spec/test_app/log/test.log +34592 -0
  21. data/spec/test_app/tmp/cache/assets/development/sprockets/v3.0/1q1WRq06_IVjFBR5biQsOPGMRTScobu45EMVwx4sEzA.cache +1 -0
  22. data/spec/test_app/tmp/cache/assets/development/sprockets/v3.0/6h6JbChfVPzy1cyavuZNNm6Xb3JB0IjEp2COPz0h8vU.cache +0 -0
  23. data/spec/test_app/tmp/cache/assets/development/sprockets/v3.0/LGoYADmWxSZ4cgEQovgw4jKWSD0yKt7pp_j4Xx7yPFU.cache +0 -0
  24. data/spec/test_app/tmp/cache/assets/development/sprockets/v3.0/SAQiBY_2vZDHAGU5noXXw8c2D_YjmZsK7uKeoAoQ9LY.cache +0 -0
  25. data/spec/test_app/tmp/cache/assets/development/sprockets/v3.0/bh0ouClxWTYX6ADci0-9q0OyWiVMqtbi5tS6tlvV4Yw.cache +1 -0
  26. data/spec/test_app/tmp/cache/assets/development/sprockets/v3.0/eiYZZ4ruGdo0kPz9zBSotTKadNOi1rL2kDzjOu9VlDg.cache +1 -0
  27. data/spec/test_app/tmp/cache/assets/development/sprockets/v3.0/jeHGfyS9ujS0BMOSZoDza_0tUTY2SCowfnu6XQE2Mas.cache +0 -0
  28. data/spec/test_app/tmp/cache/assets/development/sprockets/v3.0/nyIOt3nveDlzsgyiAmRX7J-Ma2b9pt4cIQGQPxs4XL4.cache +0 -0
  29. data/spec/test_app/tmp/cache/assets/development/sprockets/v3.0/qsCKsNea0YO9-W0o1JgIJhx55aT8mYGPm19PUAt_pUs.cache +1 -0
  30. data/spec/test_app/tmp/cache/assets/development/sprockets/v3.0/sZdqSSaT4oJf_VbVWiQCT_hbaaIfFZvsox0koYPROLw.cache +1 -0
  31. metadata +21 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: c8f3fd953fefe554dbfdfae35659ed458803b4e3
4
- data.tar.gz: bc0c7afa108aee25eba2416ef552b92440cbce94
3
+ metadata.gz: 2d828301de03cf12cd48ff7481bd4f3204837345
4
+ data.tar.gz: 672fe459da7978ff31551d3572cb583da8ed0d6b
5
5
  SHA512:
6
- metadata.gz: 6b613663e417d07764a2369e2479641bb59f524fc2f72d61adeb387bfeb66232c3bb76ec6c723ad33912e8c4c7810757dc711e5a84c446153f6891f55d907af5
7
- data.tar.gz: 3a14ae9b52370880ad7596e041cf235de72e11e929b5fbbbb07b6035cc4eba8a3f0ab2a7fe422a7cf0524ada1b1027d925076865af9c830962dcc9f2bdbb79b9
6
+ metadata.gz: de6a3fb607cc5aa648682a00b214e5e91735dd144f4047c5dde1dd9a84d3c7a1e9212640986949dedb29ec9789b732c33f173585e336201e29d36231b465c5ca
7
+ data.tar.gz: 00a3c0b57a03e08ba025eb3a265e0806df80dd5356b71e845e02da8751c4647696c45b8a7ee06d40ef37f1e2b7bc26bcece4b2822f76d6264cfa754fee49d318
@@ -1,6 +1,6 @@
1
1
  module Adeia
2
2
  class Action < ActiveRecord::Base
3
- has_many :action_permissions, dependent: :destroy
3
+ has_many :action_permissions, foreign_key: :adeia_action_id, dependent: :destroy
4
4
  has_many :permissions, through: :action_permissions
5
5
 
6
6
  validates :name, presence: true
@@ -1,6 +1,6 @@
1
1
  module Adeia
2
2
  class ActionPermission < ActiveRecord::Base
3
- belongs_to :action
4
- belongs_to :permission
3
+ belongs_to :action, foreign_key: :adeia_action_id
4
+ belongs_to :permission, foreign_key: :adeia_permission_id
5
5
  end
6
6
  end
@@ -1,5 +1,5 @@
1
1
  class Adeia::Element < ActiveRecord::Base
2
- has_many :permissions
2
+ has_many :permissions, foreign_key: :adeia_element_id
3
3
 
4
4
  validates :name, presence: true
5
5
  end
@@ -1,5 +1,5 @@
1
1
  class Adeia::Group < ActiveRecord::Base
2
- has_many :group_users, dependent: :destroy
2
+ has_many :group_users, foreign_key: :adeia_group_id, dependent: :destroy
3
3
  has_many :permissions, as: :owner
4
4
 
5
5
  validates :name, presence: true
@@ -1,4 +1,4 @@
1
1
  class Adeia::GroupUser < ActiveRecord::Base
2
- belongs_to :group
2
+ belongs_to :group, foreign_key: :adeia_group_id
3
3
  belongs_to :user
4
4
  end
@@ -1,8 +1,8 @@
1
1
  class Adeia::Permission < ActiveRecord::Base
2
2
  belongs_to :owner, polymorphic: true
3
- belongs_to :element
3
+ belongs_to :element, foreign_key: :adeia_element_id
4
4
 
5
- has_many :action_permissions, dependent: :destroy
5
+ has_many :action_permissions, foreign_key: :adeia_permission_id, dependent: :destroy
6
6
  has_many :actions, through: :action_permissions
7
7
 
8
8
  enum permission_type: [:all_entries, :on_ownerships, :on_entry]
@@ -1,21 +1,21 @@
1
1
  module Adeia
2
2
  class Token < ActiveRecord::Base
3
- belongs_to :permission
3
+ belongs_to :permission, foreign_key: :adeia_permission_id
4
4
 
5
- validates :permission_id, presence: true
5
+ validates :permission, presence: true
6
6
  validates :exp_at, presence: true
7
7
 
8
8
  before_create :generate_token
9
9
 
10
+ def is_valid?
11
+ exp_at > Time.now && is_valid
12
+ end
13
+
10
14
  private
11
15
 
12
16
  def generate_token
13
17
  self.token = SecureRandom.urlsafe_base64
14
18
  end
15
-
16
- def is_valid?
17
- exp_at > Time.now && is_valid
18
- end
19
19
 
20
20
  end
21
21
  end
@@ -2,7 +2,7 @@ class CreateAdeiaPermissions < ActiveRecord::Migration
2
2
  def change
3
3
  create_table :adeia_permissions do |t|
4
4
  t.references :owner, polymorphic: true, index: true
5
- t.references :element, index: true, foreign_key: true
5
+ t.references :adeia_element, index: true, foreign_key: true
6
6
  t.integer :permission_type
7
7
  t.boolean :read_right
8
8
  t.boolean :create_right
@@ -1,7 +1,7 @@
1
1
  class CreateAdeiaGroupUsers < ActiveRecord::Migration
2
2
  def change
3
3
  create_table :adeia_group_users do |t|
4
- t.references :group, index: true, foreign_key: true
4
+ t.references :adeia_group, index: true, foreign_key: true
5
5
  t.references :user, index: true, foreign_key: true
6
6
 
7
7
  t.timestamps null: false
@@ -3,7 +3,7 @@ class CreateAdeiaTokens < ActiveRecord::Migration
3
3
  create_table :adeia_tokens do |t|
4
4
  t.string :token
5
5
  t.boolean :is_valid
6
- t.references :permission, index: true, foreign_key: true
6
+ t.references :adeia_permission, index: true, foreign_key: true
7
7
  t.date :exp_at
8
8
 
9
9
  t.timestamps null: false
@@ -1,8 +1,8 @@
1
1
  class CreateAdeiaActionPermissions < ActiveRecord::Migration
2
2
  def change
3
3
  create_table :adeia_action_permissions do |t|
4
- t.references :action, index: true, foreign_key: true
5
- t.references :permission, index: true, foreign_key: true
4
+ t.references :adeia_action, index: true, foreign_key: true
5
+ t.references :adeia_permission, index: true, foreign_key: true
6
6
 
7
7
  t.timestamps null: false
8
8
  end
@@ -42,7 +42,7 @@ module Adeia
42
42
  def token_rights(right_name)
43
43
  @permission_token ||= Adeia::Token.find_by(token: @token)
44
44
  if @permission_token && @permission_token.is_valid?
45
- @token_rights ||= Adeia::Permission.joins(:element).where(id: @permission_token.permission_id, adeia_elements: { name: @controller }, "#{right_name}_right": true)
45
+ @token_rights ||= Adeia::Permission.joins(:element).where(id: @permission_token.adeia_permission_id, adeia_elements: { name: @controller }, "#{right_name}_right": true)
46
46
  @token_resource_ids ||= @token_rights.pluck(:resource_id).compact
47
47
  return { rights: @token_rights, resource_ids: @token_resource_ids }
48
48
  else
data/lib/adeia/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Adeia
2
- VERSION = "0.4.0"
2
+ VERSION = "0.5.0"
3
3
  end
data/spec/factories.rb CHANGED
@@ -3,7 +3,6 @@ FactoryGirl.define do
3
3
  factory :token, class: "Adeia::Token" do
4
4
  token { SecureRandom.urlsafe_base64 }
5
5
  is_valid true
6
- permission { create(:permission) }
7
6
  exp_at { 1.month.from_now }
8
7
  end
9
8
 
Binary file
@@ -14,14 +14,14 @@
14
14
  ActiveRecord::Schema.define(version: 20151012185726) do
15
15
 
16
16
  create_table "adeia_action_permissions", force: :cascade do |t|
17
- t.integer "action_id"
18
- t.integer "permission_id"
19
- t.datetime "created_at", null: false
20
- t.datetime "updated_at", null: false
17
+ t.integer "adeia_action_id"
18
+ t.integer "adeia_permission_id"
19
+ t.datetime "created_at", null: false
20
+ t.datetime "updated_at", null: false
21
21
  end
22
22
 
23
- add_index "adeia_action_permissions", ["action_id"], name: "index_adeia_action_permissions_on_action_id"
24
- add_index "adeia_action_permissions", ["permission_id"], name: "index_adeia_action_permissions_on_permission_id"
23
+ add_index "adeia_action_permissions", ["adeia_action_id"], name: "index_adeia_action_permissions_on_adeia_action_id"
24
+ add_index "adeia_action_permissions", ["adeia_permission_id"], name: "index_adeia_action_permissions_on_adeia_permission_id"
25
25
 
26
26
  create_table "adeia_actions", force: :cascade do |t|
27
27
  t.string "name"
@@ -36,13 +36,13 @@ ActiveRecord::Schema.define(version: 20151012185726) do
36
36
  end
37
37
 
38
38
  create_table "adeia_group_users", force: :cascade do |t|
39
- t.integer "group_id"
39
+ t.integer "adeia_group_id"
40
40
  t.integer "user_id"
41
- t.datetime "created_at", null: false
42
- t.datetime "updated_at", null: false
41
+ t.datetime "created_at", null: false
42
+ t.datetime "updated_at", null: false
43
43
  end
44
44
 
45
- add_index "adeia_group_users", ["group_id"], name: "index_adeia_group_users_on_group_id"
45
+ add_index "adeia_group_users", ["adeia_group_id"], name: "index_adeia_group_users_on_adeia_group_id"
46
46
  add_index "adeia_group_users", ["user_id"], name: "index_adeia_group_users_on_user_id"
47
47
 
48
48
  create_table "adeia_groups", force: :cascade do |t|
@@ -54,30 +54,30 @@ ActiveRecord::Schema.define(version: 20151012185726) do
54
54
  create_table "adeia_permissions", force: :cascade do |t|
55
55
  t.integer "owner_id"
56
56
  t.string "owner_type"
57
- t.integer "element_id"
57
+ t.integer "adeia_element_id"
58
58
  t.integer "permission_type"
59
59
  t.boolean "read_right"
60
60
  t.boolean "create_right"
61
61
  t.boolean "update_right"
62
62
  t.boolean "destroy_right"
63
63
  t.integer "resource_id"
64
- t.datetime "created_at", null: false
65
- t.datetime "updated_at", null: false
64
+ t.datetime "created_at", null: false
65
+ t.datetime "updated_at", null: false
66
66
  end
67
67
 
68
- add_index "adeia_permissions", ["element_id"], name: "index_adeia_permissions_on_element_id"
68
+ add_index "adeia_permissions", ["adeia_element_id"], name: "index_adeia_permissions_on_adeia_element_id"
69
69
  add_index "adeia_permissions", ["owner_type", "owner_id"], name: "index_adeia_permissions_on_owner_type_and_owner_id"
70
70
 
71
71
  create_table "adeia_tokens", force: :cascade do |t|
72
72
  t.string "token"
73
73
  t.boolean "is_valid"
74
- t.integer "permission_id"
74
+ t.integer "adeia_permission_id"
75
75
  t.date "exp_at"
76
- t.datetime "created_at", null: false
77
- t.datetime "updated_at", null: false
76
+ t.datetime "created_at", null: false
77
+ t.datetime "updated_at", null: false
78
78
  end
79
79
 
80
- add_index "adeia_tokens", ["permission_id"], name: "index_adeia_tokens_on_permission_id"
80
+ add_index "adeia_tokens", ["adeia_permission_id"], name: "index_adeia_tokens_on_adeia_permission_id"
81
81
 
82
82
  create_table "articles", force: :cascade do |t|
83
83
  t.string "title"
Binary file