qalam_merit 4.5.11 → 4.5.12

Sign up to get free protection for your applications and to get access to all the features.
Files changed (137) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +0 -0
  3. data/CODE_OF_CONDUCT.md +0 -0
  4. data/Gemfile +0 -0
  5. data/LICENSE.txt +0 -0
  6. data/README.md +0 -0
  7. data/RELEASING.md +0 -0
  8. data/Rakefile +0 -0
  9. data/TESTING.txt +0 -0
  10. data/config/locales/en.yml +0 -0
  11. data/lib/merit/badge_rules_methods.rb +0 -0
  12. data/lib/merit/base_target_finder.rb +0 -0
  13. data/lib/merit/class_methods.rb +0 -0
  14. data/lib/merit/controller_extensions.rb +0 -0
  15. data/lib/merit/generators/active_record/install_generator.rb +0 -0
  16. data/lib/merit/generators/active_record/merit_generator.rb +0 -0
  17. data/lib/merit/generators/active_record/remove_generator.rb +0 -0
  18. data/lib/merit/generators/active_record/templates/add_merit_fields_to_model.erb +0 -0
  19. data/lib/merit/generators/active_record/templates/create_badges_sashes.erb +4 -1
  20. data/lib/merit/generators/active_record/templates/create_merit_actions.erb +0 -0
  21. data/lib/merit/generators/active_record/templates/create_merit_activity_logs.erb +0 -0
  22. data/lib/merit/generators/active_record/templates/create_merit_badges.erb +2 -0
  23. data/lib/merit/generators/active_record/templates/create_sashes.erb +0 -0
  24. data/lib/merit/generators/active_record/templates/create_scores_and_points.erb +6 -3
  25. data/lib/merit/generators/active_record/templates/remove_merit_fields_from_model.erb +0 -0
  26. data/lib/merit/generators/active_record/templates/remove_merit_tables.erb +0 -0
  27. data/lib/merit/generators/install_generator.rb +0 -0
  28. data/lib/merit/generators/merit_generator.rb +2 -2
  29. data/lib/merit/generators/remove_generator.rb +0 -0
  30. data/lib/merit/generators/templates/badge.erb +0 -0
  31. data/lib/merit/generators/templates/merit.erb +0 -0
  32. data/lib/merit/generators/templates/merit_badge_rules.erb +0 -0
  33. data/lib/merit/generators/templates/merit_point_rules.erb +0 -0
  34. data/lib/merit/generators/templates/merit_rank_rules.erb +0 -0
  35. data/lib/merit/generators/templates/qalam_badge_sash.erb +0 -0
  36. data/lib/merit/generators/templates/qalam_sash.erb +0 -0
  37. data/lib/merit/judge.rb +0 -0
  38. data/lib/merit/models/action_concern.rb +0 -0
  39. data/lib/merit/models/active_record/action.rb +0 -0
  40. data/lib/merit/models/active_record/activity_log.rb +0 -0
  41. data/lib/merit/models/active_record/badges_sash.rb +3 -1
  42. data/lib/merit/models/active_record/qalam_score.rb +1 -3
  43. data/lib/merit/models/active_record/sash.rb +0 -0
  44. data/lib/merit/models/badges_sash_concern.rb +0 -0
  45. data/lib/merit/models/base/badges_sash.rb +0 -0
  46. data/lib/merit/models/base/sash.rb +0 -0
  47. data/lib/merit/models/sash_concern.rb +5 -5
  48. data/lib/merit/point_rules_methods.rb +0 -0
  49. data/lib/merit/rank_rules_methods.rb +0 -0
  50. data/lib/merit/reputation_change_observer.rb +0 -0
  51. data/lib/merit/rule.rb +0 -0
  52. data/lib/merit/rules_matcher.rb +0 -0
  53. data/lib/merit/sash_finder.rb +0 -0
  54. data/lib/merit/target_finder.rb +0 -0
  55. data/lib/merit.rb +0 -0
  56. data/qalam_merit.gemspec +1 -1
  57. data/test/dummy/Rakefile +0 -0
  58. data/test/dummy/app/controllers/admin/users_controller.rb +0 -0
  59. data/test/dummy/app/controllers/api/comments_controller.rb +0 -0
  60. data/test/dummy/app/controllers/api/users_controller.rb +0 -0
  61. data/test/dummy/app/controllers/application_controller.rb +0 -0
  62. data/test/dummy/app/controllers/comments_controller.rb +0 -0
  63. data/test/dummy/app/controllers/registrations_controller.rb +0 -0
  64. data/test/dummy/app/controllers/users_controller.rb +0 -0
  65. data/test/dummy/app/helpers/application_helper.rb +0 -0
  66. data/test/dummy/app/models/address.rb +0 -0
  67. data/test/dummy/app/models/comment.rb +0 -0
  68. data/test/dummy/app/models/dummy_observer.rb +0 -0
  69. data/test/dummy/app/models/merit/badge_rules.rb +0 -0
  70. data/test/dummy/app/models/merit/point_rules.rb +0 -0
  71. data/test/dummy/app/models/merit/rank_rules.rb +0 -0
  72. data/test/dummy/app/models/user.rb +0 -0
  73. data/test/dummy/app/views/admin/users/index.html.erb +0 -0
  74. data/test/dummy/app/views/comments/_form.html.erb +0 -0
  75. data/test/dummy/app/views/comments/edit.html.erb +0 -0
  76. data/test/dummy/app/views/comments/index.html.erb +0 -0
  77. data/test/dummy/app/views/comments/new.html.erb +0 -0
  78. data/test/dummy/app/views/comments/show.html.erb +0 -0
  79. data/test/dummy/app/views/layouts/application.html.erb +0 -0
  80. data/test/dummy/app/views/users/_form.html.erb +0 -0
  81. data/test/dummy/app/views/users/edit.html.erb +0 -0
  82. data/test/dummy/app/views/users/index.html.erb +0 -0
  83. data/test/dummy/app/views/users/new.html.erb +0 -0
  84. data/test/dummy/app/views/users/show.html.erb +0 -0
  85. data/test/dummy/config/application.rb +0 -0
  86. data/test/dummy/config/application_api_only.rb +0 -0
  87. data/test/dummy/config/boot.rb +0 -0
  88. data/test/dummy/config/database.yml +0 -0
  89. data/test/dummy/config/environment.rb +0 -0
  90. data/test/dummy/config/environment_api_only.rb +0 -0
  91. data/test/dummy/config/environments/development.rb +0 -0
  92. data/test/dummy/config/environments/production.rb +0 -0
  93. data/test/dummy/config/environments/test.rb +0 -0
  94. data/test/dummy/config/initializers/backtrace_silencers.rb +0 -0
  95. data/test/dummy/config/initializers/inflections.rb +0 -0
  96. data/test/dummy/config/initializers/merit.rb +0 -0
  97. data/test/dummy/config/initializers/mime_types.rb +0 -0
  98. data/test/dummy/config/initializers/new_framework_defaults.rb +0 -0
  99. data/test/dummy/config/initializers/secret_token.rb +0 -0
  100. data/test/dummy/config/initializers/session_store.rb +0 -0
  101. data/test/dummy/config/locales/en.yml +0 -0
  102. data/test/dummy/config/mongoid.yml +0 -0
  103. data/test/dummy/config/routes.rb +0 -0
  104. data/test/dummy/config.ru +0 -0
  105. data/test/dummy/db/migrate/20110421191249_create_users.rb +0 -0
  106. data/test/dummy/db/migrate/20110421191250_create_comments.rb +0 -0
  107. data/test/dummy/db/migrate/20120318022220_add_fields_to_users.rb +0 -0
  108. data/test/dummy/db/migrate/20130321082817_add_fields_to_comments.rb +0 -0
  109. data/test/dummy/db/migrate/20130329224406_create_merit_actions.rb +0 -0
  110. data/test/dummy/db/migrate/20130329224407_create_merit_activity_logs.rb +0 -0
  111. data/test/dummy/db/migrate/20130329224408_create_sashes.rb +0 -0
  112. data/test/dummy/db/migrate/20130329224409_create_badges_sashes.rb +0 -0
  113. data/test/dummy/db/migrate/20130329224410_create_scores_and_points.rb +0 -0
  114. data/test/dummy/db/migrate/20140211144001_create_addresses.rb +0 -0
  115. data/test/dummy/db/migrate/20140819133931_add_target_data_to_merit_actions.rb +0 -0
  116. data/test/dummy/db/schema.rb +0 -0
  117. data/test/dummy/db/seeds.rb +0 -0
  118. data/test/dummy/public/404.html +0 -0
  119. data/test/dummy/public/422.html +0 -0
  120. data/test/dummy/public/500.html +0 -0
  121. data/test/dummy/public/favicon.ico +0 -0
  122. data/test/dummy/public/rails.js +0 -0
  123. data/test/dummy/public/stylesheets/.gitkeep +0 -0
  124. data/test/dummy/public/stylesheets/scaffold.css +0 -0
  125. data/test/integration/navigation_test.rb +0 -0
  126. data/test/support/integration_case.rb +0 -0
  127. data/test/test_helper.rb +0 -0
  128. data/test/unit/action_test.rb +0 -0
  129. data/test/unit/base_target_finder_test.rb +0 -0
  130. data/test/unit/merit_unit_test.rb +0 -0
  131. data/test/unit/qalam_score_test.rb +0 -0
  132. data/test/unit/rule_unit_test.rb +0 -0
  133. data/test/unit/rules_matcher_test.rb +0 -0
  134. data/test/unit/sash_finder_test.rb +0 -0
  135. data/test/unit/sash_test.rb +0 -0
  136. data/test/unit/target_finder_test.rb +0 -0
  137. metadata +3 -3
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: deec567df823559e660d23204391e9552705a649f57201eb79d30e21d5be727f
4
- data.tar.gz: 7e1bb67952c7ec3cc5f00e8649b59b1526a5099590b22d51240af7af54f21652
3
+ metadata.gz: bebc2893139c8f3842d8c2f48de029fb2fef9c4323725e237c3ef31eb7452d9b
4
+ data.tar.gz: aab590590e4ac73b91dd1abc8f6b6bfa3284cc92515001128fcb73d4f3a1b98b
5
5
  SHA512:
6
- metadata.gz: f6a50d73f6e1cad5dbfd5658874fa1412f41abf2543aec1659ea0aaf5a67627935601abd5a9726544545402222d074d857f9b162c19a8efc333dce60079442de
7
- data.tar.gz: 3758d8266ea7dea46c9a7282e314569f4cdbb7421486255ad26a0f245be880a4acef9eb66d04c4f6b311c3e60a353b0af70e5198005683c8cc41bf78b895e83a
6
+ metadata.gz: 31b5e8af9870057622b6f84feaf3816a34971e8af03b0f15b8307a9d68716def3168971400c535030a4eb95c8a84c134362a255508df7c2d091ed1d11700e82c
7
+ data.tar.gz: 3aef2ce1fe1a809077daedf6341672b353542f5dce166d714bf6abf6882c30278f5d982da75f52fc6d636db45446d13399752f539aa65c0b0b542ffdf5736431
data/CHANGELOG.md CHANGED
File without changes
data/CODE_OF_CONDUCT.md CHANGED
File without changes
data/Gemfile CHANGED
File without changes
data/LICENSE.txt CHANGED
File without changes
data/README.md CHANGED
File without changes
data/RELEASING.md CHANGED
File without changes
data/Rakefile CHANGED
File without changes
data/TESTING.txt CHANGED
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -2,9 +2,12 @@
2
2
  class CreateBadgesSashes < ActiveRecord::Migration<%= migration_version %>
3
3
  def self.up
4
4
  create_table :badges_sashes do |t|
5
+ t.boolean :active, default: true
5
6
  t.references :badge, limit: 8, foreign_key: { to_table: 'merit_badges'}, index: true, null: true
6
7
  t.references :sash, limit: 8, foreign_key: true, index: true, null: true
7
- t.datetime :created_at
8
+ t.integer :badge_type, default: 0
9
+ t.references :context, polymorphic: true
10
+ t.timestamps
8
11
  end
9
12
  end
10
13
 
@@ -8,7 +8,9 @@ class CreateMeritBadges < ActiveRecord::Migration<%= migration_version %>
8
8
  t.text :description
9
9
  t.string :difficulty
10
10
  t.boolean :active, default: true
11
+ t.datetime :deleted_at
11
12
  t.references :user, limit: 8, foreign_key: true, index: true, null: true
13
+ # t.references :root_account, foreign_key: { to_table: 'accounts'}, limit: 8, null: false, index: true
12
14
 
13
15
  t.timestamps
14
16
  end
@@ -2,15 +2,18 @@
2
2
  class CreateScoresAndPoints < ActiveRecord::Migration<%= migration_version %>
3
3
  def change
4
4
  create_table :merit_scores do |t|
5
- t.references :sash
6
5
  t.string :category, default: 'default'
6
+ t.boolean :active, default: true
7
+ t.references :sash
7
8
  end
8
9
 
9
10
  create_table :merit_score_points do |t|
10
- t.references :score
11
11
  t.bigint :num_points, default: 0
12
12
  t.string :log
13
- t.datetime :created_at
13
+ t.boolean :active, default: true
14
+ t.references :score
15
+ t.references :context, polymorphic: true
16
+ t.timestamps
14
17
  end
15
18
  end
16
19
  end
File without changes
@@ -15,8 +15,8 @@ module Merit
15
15
  inject_into_class(model_path, class_name, " ### QALAM_MERIT ###\n")
16
16
 
17
17
  inject_into_class(course_path, "Course", " ### END ###\n\n")
18
- inject_into_class(course_path, "Course", " has_many :badges_sashes, class_name: 'Merit::BadgesSash', dependent: :destroy\n")
19
- inject_into_class(course_path, "Course", " has_many :score_points, class_name: 'Merit::QalamScore::Point', dependent: :destroy\n")
18
+ inject_into_class(course_path, "Course", " has_many :badges_sashes, class_name: 'Merit::BadgesSash', :as => :context, :inverse_of => :context, :dependent => :destroy\n")
19
+ inject_into_class(course_path, "Course", " has_many :score_points, class_name: 'Merit::QalamScore::Point', :as => :context, :inverse_of => :context, :dependent => :destroy\n")
20
20
  inject_into_class(course_path, "Course", " ### QALAM_MERIT ###\n")
21
21
  end
22
22
  end
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
data/lib/merit/judge.rb CHANGED
File without changes
File without changes
File without changes
File without changes
@@ -6,7 +6,9 @@ module Merit::Models::ActiveRecord
6
6
  has_many :activity_logs,
7
7
  class_name: 'Merit::ActivityLog',
8
8
  as: :related_change
9
- belongs_to :course, foreign_key: "course_id", class_name: 'Course'
9
+ # belongs_to :course, foreign_key: "course_id", class_name: 'Course'
10
+ belongs_to :context, :polymorphic => true
11
+ enum badge_type: [:other, :start, :achieve, :pass, :active, :finish]
10
12
 
11
13
  validates_presence_of :badge_id, :sash
12
14
  end
@@ -23,9 +23,7 @@ module Merit::Models::ActiveRecord
23
23
  class_name: 'Merit::ActivityLog',
24
24
  as: :related_change
25
25
  delegate :sash_id, to: :score
26
- belongs_to :course,
27
- foreign_key: "course_id",
28
- class_name: 'Course'
26
+ belongs_to :context, :polymorphic => true
29
27
  end
30
28
  end
31
29
  end
File without changes
File without changes
File without changes
File without changes
@@ -9,8 +9,8 @@ module Merit::Models
9
9
  end
10
10
 
11
11
  def add_badge(badge_id, options = {})
12
- if (course_id = options[:course_id])
13
- bs = Merit::BadgesSash.new(badge_id: badge_id.to_i, course_id: course_id.to_i)
12
+ if (context = options[:context])
13
+ bs = Merit::BadgesSash.new(badge_id: badge_id.to_i, context: context, badge_type: options[:badge_type])
14
14
  else
15
15
  bs = Merit::BadgesSash.new(badge_id: badge_id.to_i)
16
16
  end
@@ -19,8 +19,8 @@ module Merit::Models
19
19
  end
20
20
 
21
21
  def rm_badge(badge_id, options = {})
22
- if (course_id = options[:course_id])
23
- badges_sashes.where(badge_id: badge_id.to_i, course_id: course_id.to_i).first.try(:destroy)
22
+ if (context = options[:context])
23
+ badges_sashes.where(badge_id: badge_id.to_i, context: context, badge_type: options[:badge_type]).first.try(:destroy)
24
24
  else
25
25
  badges_sashes.where(badge_id: badge_id.to_i).first.try(:destroy)
26
26
  end
@@ -41,7 +41,7 @@ module Merit::Models
41
41
  def add_points(num_points, options = {})
42
42
  point = Merit::QalamScore::Point.new
43
43
  point.num_points = num_points
44
- point.course_id = options[:course_id].to_i
44
+ point.context = options[:context]
45
45
  scores
46
46
  .where(category: options[:category] || 'default')
47
47
  .first_or_create
File without changes
File without changes
File without changes
data/lib/merit/rule.rb CHANGED
File without changes
File without changes
File without changes
File without changes
data/lib/merit.rb CHANGED
File without changes
data/qalam_merit.gemspec CHANGED
@@ -6,7 +6,7 @@ Gem::Specification.new do |s|
6
6
  s.files = `git ls-files`.split("\n").reject{|f| f =~ /^\./ }
7
7
  s.test_files = `git ls-files -- test/*`.split("\n")
8
8
  s.license = 'MIT'
9
- s.version = '4.5.11'
9
+ s.version = '4.5.12'
10
10
  s.authors = ["Ahmed Abdelhamid", "Zeyad Saleh"]
11
11
  s.email = ['a.hamid@nezam.io', 'zeyad.saleh@nezam.io']
12
12
 
data/test/dummy/Rakefile CHANGED
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
data/test/dummy/config.ru CHANGED
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
data/test/test_helper.rb CHANGED
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: qalam_merit
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.5.11
4
+ version: 4.5.12
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ahmed Abdelhamid
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2021-03-13 00:00:00.000000000 Z
12
+ date: 2021-09-28 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: zeitwerk
@@ -272,7 +272,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
272
272
  - !ruby/object:Gem::Version
273
273
  version: '0'
274
274
  requirements: []
275
- rubygems_version: 3.2.3
275
+ rubygems_version: 3.2.22
276
276
  signing_key:
277
277
  specification_version: 4
278
278
  summary: Reputation engine for Rails apps