fat_free_crm 0.17.3 → 0.18.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/.dockerignore +11 -0
- data/.rubocop.yml +1 -1
- data/.rubocop_todo.yml +30 -8
- data/.travis.yml +14 -9
- data/CHANGELOG.md +43 -7
- data/CONTRIBUTORS.md +95 -53
- data/Gemfile +11 -7
- data/Gemfile.lock +83 -83
- data/README.md +7 -4
- data/app/assets/javascripts/crm.js.coffee +3 -3
- data/app/assets/javascripts/crm_select2.js.coffee +15 -14
- data/app/controllers/admin/field_groups_controller.rb +8 -1
- data/app/controllers/admin/fields_controller.rb +4 -4
- data/app/controllers/admin/groups_controller.rb +1 -1
- data/app/controllers/admin/tags_controller.rb +1 -1
- data/app/controllers/application_controller.rb +11 -0
- data/app/controllers/authentications_controller.rb +1 -1
- data/app/controllers/comments_controller.rb +15 -7
- data/app/controllers/entities/campaigns_controller.rb +7 -2
- data/app/controllers/entities/leads_controller.rb +9 -2
- data/app/controllers/entities/opportunities_controller.rb +13 -2
- data/app/controllers/entities_controller.rb +10 -5
- data/app/controllers/lists_controller.rb +5 -1
- data/app/controllers/tasks_controller.rb +15 -1
- data/app/helpers/accounts_helper.rb +1 -1
- data/app/helpers/application_helper.rb +2 -2
- data/app/helpers/leads_helper.rb +1 -1
- data/app/helpers/opportunities_helper.rb +56 -3
- data/app/helpers/tags_helper.rb +1 -1
- data/app/models/entities/lead.rb +0 -7
- data/app/models/entities/opportunity.rb +3 -2
- data/app/models/observers/opportunity_observer.rb +4 -4
- data/app/models/users/ability.rb +3 -4
- data/app/views/campaigns/_metrics.html.haml +3 -3
- data/app/views/home/_opportunity.html.haml +4 -19
- data/app/views/opportunities/_index_long.html.haml +1 -24
- data/app/views/opportunities/_sidebar_show.html.haml +3 -3
- data/app/views/opportunities/_top_section.html.haml +1 -1
- data/db/schema.rb +0 -3
- data/fat_free_crm.gemspec +1 -1
- data/lib/fat_free_crm/core_ext/string.rb +1 -1
- data/lib/fat_free_crm/engine.rb +2 -2
- data/lib/fat_free_crm/fields.rb +1 -1
- data/lib/fat_free_crm/permissions.rb +0 -14
- data/lib/fat_free_crm/version.rb +2 -2
- data/lib/tasks/ffcrm/setup.rake +4 -4
- data/spec/controllers/admin/users_controller_spec.rb +27 -27
- data/spec/controllers/authentications_controller_spec.rb +7 -7
- data/spec/controllers/comments_controller_spec.rb +13 -13
- data/spec/controllers/emails_controller_spec.rb +2 -2
- data/spec/controllers/entities/accounts_controller_spec.rb +56 -56
- data/spec/controllers/entities/campaigns_controller_spec.rb +66 -66
- data/spec/controllers/entities/contacts_controller_spec.rb +67 -67
- data/spec/controllers/entities/leads_controller_spec.rb +125 -125
- data/spec/controllers/entities/opportunities_controller_spec.rb +100 -100
- data/spec/controllers/home_controller_spec.rb +26 -26
- data/spec/controllers/passwords_controller_spec.rb +1 -1
- data/spec/controllers/tasks_controller_spec.rb +37 -37
- data/spec/controllers/users_controller_spec.rb +18 -18
- data/spec/factories/account_factories.rb +8 -8
- data/spec/factories/campaign_factories.rb +5 -5
- data/spec/factories/contact_factories.rb +10 -10
- data/spec/factories/field_factories.rb +7 -7
- data/spec/factories/lead_factories.rb +8 -8
- data/spec/factories/list_factories.rb +1 -1
- data/spec/factories/opportunity_factories.rb +6 -6
- data/spec/factories/sequences.rb +1 -1
- data/spec/factories/setting_factories.rb +3 -3
- data/spec/factories/shared_factories.rb +14 -14
- data/spec/factories/subscription_factories.rb +1 -1
- data/spec/factories/tag_factories.rb +1 -1
- data/spec/factories/task_factories.rb +4 -4
- data/spec/factories/user_factories.rb +13 -13
- data/spec/features/accounts_spec.rb +17 -4
- data/spec/features/admin/groups_spec.rb +1 -1
- data/spec/features/admin/users_spec.rb +1 -1
- data/spec/features/campaigns_spec.rb +4 -4
- data/spec/features/contacts_spec.rb +10 -4
- data/spec/features/dashboard_spec.rb +7 -7
- data/spec/features/leads_spec.rb +4 -4
- data/spec/features/opportunities_overview_spec.rb +15 -15
- data/spec/features/opportunities_spec.rb +34 -8
- data/spec/features/support/autocomlete_helper.rb +17 -0
- data/spec/features/support/browser.rb +3 -8
- data/spec/features/support/helpers.rb +1 -1
- data/spec/features/tasks_spec.rb +4 -4
- data/spec/helpers/admin/field_groups_helper_spec.rb +1 -1
- data/spec/helpers/application_helper_spec.rb +1 -1
- data/spec/helpers/tasks_helper_spec.rb +1 -1
- data/spec/helpers/users_helper_spec.rb +3 -3
- data/spec/lib/comment_extensions_spec.rb +1 -1
- data/spec/lib/mail_processor/base_spec.rb +3 -3
- data/spec/lib/mail_processor/comment_replies_spec.rb +3 -3
- data/spec/lib/mail_processor/dropbox_spec.rb +16 -16
- data/spec/lib/permissions_spec.rb +7 -25
- data/spec/mailers/user_mailer_spec.rb +7 -7
- data/spec/models/entities/account_spec.rb +31 -32
- data/spec/models/entities/campaign_spec.rb +18 -25
- data/spec/models/entities/contact_spec.rb +18 -21
- data/spec/models/entities/lead_spec.rb +9 -11
- data/spec/models/entities/opportunity_spec.rb +45 -45
- data/spec/models/fields/custom_field_spec.rb +17 -17
- data/spec/models/list_spec.rb +2 -2
- data/spec/models/observers/entity_observer_spec.rb +6 -6
- data/spec/models/polymorphic/address_spec.rb +1 -1
- data/spec/models/polymorphic/avatar_spec.rb +5 -5
- data/spec/models/polymorphic/comment_spec.rb +5 -5
- data/spec/models/polymorphic/task_spec.rb +65 -58
- data/spec/models/polymorphic/version_spec.rb +26 -26
- data/spec/models/setting_spec.rb +2 -2
- data/spec/models/users/preference_spec.rb +6 -6
- data/spec/models/users/user_spec.rb +26 -26
- data/spec/shared/models.rb +22 -22
- data/spec/spec_helper.rb +2 -2
- data/spec/support/auth_macros.rb +1 -1
- data/spec/support/macros.rb +3 -3
- data/spec/views/accounts/_edit.haml_spec.rb +1 -1
- data/spec/views/accounts/create.js.haml_spec.rb +2 -2
- data/spec/views/accounts/destroy.js.haml_spec.rb +1 -1
- data/spec/views/accounts/edit.js.haml_spec.rb +2 -2
- data/spec/views/accounts/index.haml_spec.rb +2 -2
- data/spec/views/accounts/index.js.haml_spec.rb +1 -1
- data/spec/views/accounts/show.haml_spec.rb +4 -4
- data/spec/views/accounts/update.js.haml_spec.rb +1 -1
- data/spec/views/admin/field_groups/create.js.haml_spec.rb +1 -1
- data/spec/views/admin/field_groups/destroy.js.haml_spec.rb +1 -1
- data/spec/views/admin/field_groups/edit.js.haml_spec.rb +1 -1
- data/spec/views/admin/field_groups/new.js.haml_spec.rb +1 -1
- data/spec/views/admin/field_groups/update.js.haml_spec.rb +1 -1
- data/spec/views/admin/users/create.js.haml_spec.rb +2 -2
- data/spec/views/admin/users/destroy.js.haml_spec.rb +2 -2
- data/spec/views/admin/users/edit.js.haml_spec.rb +2 -2
- data/spec/views/admin/users/index.haml_spec.rb +1 -1
- data/spec/views/admin/users/index.js.haml_spec.rb +2 -2
- data/spec/views/admin/users/reactivate.js.haml_spec.rb +1 -1
- data/spec/views/admin/users/suspend.js.haml_spec.rb +1 -1
- data/spec/views/admin/users/update.js.haml_spec.rb +1 -1
- data/spec/views/application/auto_complete.haml_spec.rb +3 -3
- data/spec/views/campaigns/_edit.haml_spec.rb +1 -1
- data/spec/views/campaigns/create.js.haml_spec.rb +3 -3
- data/spec/views/campaigns/destroy.js.haml_spec.rb +1 -1
- data/spec/views/campaigns/edit.js.haml_spec.rb +2 -2
- data/spec/views/campaigns/index.haml_spec.rb +1 -1
- data/spec/views/campaigns/index.js.haml_spec.rb +1 -1
- data/spec/views/campaigns/show.haml_spec.rb +4 -4
- data/spec/views/campaigns/update.js.haml_spec.rb +1 -1
- data/spec/views/contacts/_edit.haml_spec.rb +7 -7
- data/spec/views/contacts/_new.haml_spec.rb +1 -1
- data/spec/views/contacts/create.js.haml_spec.rb +4 -4
- data/spec/views/contacts/destroy.js.haml_spec.rb +1 -1
- data/spec/views/contacts/edit.js.haml_spec.rb +3 -3
- data/spec/views/contacts/index.haml_spec.rb +1 -1
- data/spec/views/contacts/index.js.html_spec.rb +1 -1
- data/spec/views/contacts/new.js.haml_spec.rb +1 -1
- data/spec/views/contacts/show.haml_spec.rb +3 -3
- data/spec/views/contacts/update.js.haml_spec.rb +2 -2
- data/spec/views/home/index.haml_spec.rb +1 -1
- data/spec/views/home/index.js.haml_spec.rb +1 -1
- data/spec/views/home/options.js.haml_spec.rb +2 -2
- data/spec/views/leads/_convert.haml_spec.rb +3 -3
- data/spec/views/leads/_edit.haml_spec.rb +2 -2
- data/spec/views/leads/_new.haml_spec.rb +2 -2
- data/spec/views/leads/_sidebar_show.haml_spec.rb +5 -5
- data/spec/views/leads/convert.js.haml_spec.rb +4 -4
- data/spec/views/leads/create.js.haml_spec.rb +5 -5
- data/spec/views/leads/destroy.js.haml_spec.rb +2 -2
- data/spec/views/leads/edit.js.haml_spec.rb +4 -4
- data/spec/views/leads/index.haml_spec.rb +1 -1
- data/spec/views/leads/index.js.haml_spec.rb +1 -1
- data/spec/views/leads/new.js.haml_spec.rb +1 -1
- data/spec/views/leads/promote.js.haml_spec.rb +7 -7
- data/spec/views/leads/reject.js.haml_spec.rb +2 -2
- data/spec/views/leads/show.haml_spec.rb +2 -2
- data/spec/views/leads/update.js.haml_spec.rb +4 -4
- data/spec/views/opportunities/_edit.haml_spec.rb +7 -7
- data/spec/views/opportunities/_new.haml_spec.rb +2 -2
- data/spec/views/opportunities/create.js.haml_spec.rb +6 -6
- data/spec/views/opportunities/destroy.js.haml_spec.rb +3 -3
- data/spec/views/opportunities/edit.js.haml_spec.rb +3 -3
- data/spec/views/opportunities/index.haml_spec.rb +1 -1
- data/spec/views/opportunities/index.js.haml_spec.rb +1 -1
- data/spec/views/opportunities/new.js.haml_spec.rb +1 -1
- data/spec/views/opportunities/show.haml_spec.rb +3 -3
- data/spec/views/opportunities/update.js.haml_spec.rb +4 -4
- data/spec/views/tasks/_edit.haml_spec.rb +1 -1
- data/spec/views/tasks/complete.js.haml_spec.rb +4 -4
- data/spec/views/tasks/create.js.haml_spec.rb +6 -6
- data/spec/views/tasks/destroy.js.haml_spec.rb +2 -2
- data/spec/views/tasks/index.haml_spec.rb +4 -4
- data/spec/views/tasks/new.js.haml_spec.rb +1 -1
- data/spec/views/tasks/uncomplete.js.haml_spec.rb +2 -2
- data/spec/views/tasks/update.js.haml_spec.rb +18 -18
- data/spec/views/users/upload_avatar.js.haml_spec.rb +2 -2
- metadata +5 -3
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 0e742d170861eae5ac601236d6f2d0ddd25d42186a66651a4adb24f5f65859fa
|
|
4
|
+
data.tar.gz: 25bea2bb3db3844aac5084caab8c6dd18a6ba857ed3cf3ea997ef7c604435f83
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: fea727f3837d27e618797ef91da85a2b628965fede5b84ec579c7362dc1ff7ee9180a5a39b67c705e8be528ff7431bc4077dee9a7985fb61e3c3a0f852b95c03
|
|
7
|
+
data.tar.gz: e63e10fc312f93a2b5e4f8be302202ebd4221ca400debf663e6a0b5acd66779fee4d03cbe9aafcdd99ece4acdb8db2d68311ec803e64e498664cc944d57491b4
|
data/.dockerignore
ADDED
data/.rubocop.yml
CHANGED
data/.rubocop_todo.yml
CHANGED
|
@@ -1,11 +1,18 @@
|
|
|
1
1
|
# This configuration was generated by
|
|
2
2
|
# `rubocop --auto-gen-config`
|
|
3
|
-
# on 2018-
|
|
3
|
+
# on 2018-02-02 11:21:41 +0300 using RuboCop version 0.52.1.
|
|
4
4
|
# The point is for the user to remove these configuration records
|
|
5
5
|
# one by one as the offenses are removed from the code base.
|
|
6
6
|
# Note that changes in the inspected code, or installation of new
|
|
7
7
|
# versions of RuboCop, may require this file to be generated again.
|
|
8
8
|
|
|
9
|
+
# Offense count: 1
|
|
10
|
+
# Configuration parameters: Include.
|
|
11
|
+
# Include: **/Gemfile, **/gems.rb
|
|
12
|
+
Bundler/DuplicatedGem:
|
|
13
|
+
Exclude:
|
|
14
|
+
- 'Gemfile'
|
|
15
|
+
|
|
9
16
|
# Offense count: 1
|
|
10
17
|
# Cop supports --auto-correct.
|
|
11
18
|
Layout/EmptyLinesAroundArguments:
|
|
@@ -31,6 +38,11 @@ Lint/BooleanSymbol:
|
|
|
31
38
|
Exclude:
|
|
32
39
|
- 'config/initializers/ransack.rb'
|
|
33
40
|
|
|
41
|
+
# Offense count: 1
|
|
42
|
+
Lint/Debugger:
|
|
43
|
+
Exclude:
|
|
44
|
+
- 'app/controllers/entities/opportunities_controller.rb'
|
|
45
|
+
|
|
34
46
|
# Offense count: 1
|
|
35
47
|
Lint/DuplicateMethods:
|
|
36
48
|
Exclude:
|
|
@@ -93,7 +105,7 @@ Lint/UselessAssignment:
|
|
|
93
105
|
- 'app/helpers/application_helper.rb'
|
|
94
106
|
- 'app/views/home/index.atom.builder'
|
|
95
107
|
|
|
96
|
-
# Offense count:
|
|
108
|
+
# Offense count: 131
|
|
97
109
|
Metrics/AbcSize:
|
|
98
110
|
Max: 57
|
|
99
111
|
|
|
@@ -105,13 +117,13 @@ Metrics/BlockNesting:
|
|
|
105
117
|
# Offense count: 14
|
|
106
118
|
# Configuration parameters: CountComments.
|
|
107
119
|
Metrics/ClassLength:
|
|
108
|
-
Max:
|
|
120
|
+
Max: 209
|
|
109
121
|
|
|
110
122
|
# Offense count: 29
|
|
111
123
|
Metrics/CyclomaticComplexity:
|
|
112
124
|
Max: 14
|
|
113
125
|
|
|
114
|
-
# Offense count:
|
|
126
|
+
# Offense count: 102
|
|
115
127
|
# Configuration parameters: CountComments.
|
|
116
128
|
Metrics/MethodLength:
|
|
117
129
|
Max: 38
|
|
@@ -148,7 +160,7 @@ Naming/HeredocDelimiterNaming:
|
|
|
148
160
|
Exclude:
|
|
149
161
|
- 'app/controllers/passwords_controller.rb'
|
|
150
162
|
|
|
151
|
-
# Offense count:
|
|
163
|
+
# Offense count: 5
|
|
152
164
|
# Configuration parameters: NamePrefix, NamePrefixBlacklist, NameWhitelist, MethodDefinitionMacros.
|
|
153
165
|
# NamePrefix: is_, has_, have_
|
|
154
166
|
# NamePrefixBlacklist: is_, has_, have_
|
|
@@ -158,6 +170,7 @@ Naming/PredicateName:
|
|
|
158
170
|
Exclude:
|
|
159
171
|
- 'spec/**/*'
|
|
160
172
|
- 'app/inputs/date_time_input.rb'
|
|
173
|
+
- 'app/models/entities/opportunity.rb'
|
|
161
174
|
- 'app/models/users/user.rb'
|
|
162
175
|
- 'lib/fat_free_crm/fields.rb'
|
|
163
176
|
- 'lib/fat_free_crm/mail_processor/base.rb'
|
|
@@ -227,10 +240,11 @@ Style/CommentedKeyword:
|
|
|
227
240
|
- 'app/models/users/authentication.rb'
|
|
228
241
|
- 'db/migrate/20100928030617_drop_openid_tables.rb'
|
|
229
242
|
|
|
230
|
-
# Offense count:
|
|
243
|
+
# Offense count: 4
|
|
231
244
|
Style/DoubleNegation:
|
|
232
245
|
Exclude:
|
|
233
246
|
- 'app/helpers/application_helper.rb'
|
|
247
|
+
- 'app/models/entities/opportunity.rb'
|
|
234
248
|
- 'app/models/polymorphic/task.rb'
|
|
235
249
|
- 'lib/gravatar_image_tag.rb'
|
|
236
250
|
|
|
@@ -239,6 +253,14 @@ Style/EvalWithLocation:
|
|
|
239
253
|
Exclude:
|
|
240
254
|
- 'lib/fat_free_crm/permissions.rb'
|
|
241
255
|
|
|
256
|
+
# Offense count: 1
|
|
257
|
+
# Cop supports --auto-correct.
|
|
258
|
+
# Configuration parameters: EnforcedStyle.
|
|
259
|
+
# SupportedStyles: when_needed, always, never
|
|
260
|
+
Style/FrozenStringLiteralComment:
|
|
261
|
+
Exclude:
|
|
262
|
+
- 'db/schema.rb'
|
|
263
|
+
|
|
242
264
|
# Offense count: 3
|
|
243
265
|
# Configuration parameters: AllowedVariables.
|
|
244
266
|
Style/GlobalVars:
|
|
@@ -246,7 +268,7 @@ Style/GlobalVars:
|
|
|
246
268
|
- 'db/migrate/20100928030598_create_sessions.rb'
|
|
247
269
|
- 'db/migrate/20120510025219_add_not_null_constraints_for_timestamp_columns.rb'
|
|
248
270
|
|
|
249
|
-
# Offense count:
|
|
271
|
+
# Offense count: 46
|
|
250
272
|
# Configuration parameters: MinBodyLength.
|
|
251
273
|
Style/GuardClause:
|
|
252
274
|
Enabled: false
|
|
@@ -350,7 +372,7 @@ Style/TrivialAccessors:
|
|
|
350
372
|
Exclude:
|
|
351
373
|
- 'spec/support/auth_macros.rb'
|
|
352
374
|
|
|
353
|
-
# Offense count:
|
|
375
|
+
# Offense count: 1924
|
|
354
376
|
# Configuration parameters: AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, IgnoredPatterns.
|
|
355
377
|
# URISchemes: http, https
|
|
356
378
|
Metrics/LineLength:
|
data/.travis.yml
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
sudo: false
|
|
2
2
|
language: ruby
|
|
3
3
|
rvm:
|
|
4
|
-
- 2.3.6
|
|
5
4
|
- 2.4.2
|
|
5
|
+
- 2.5.0
|
|
6
6
|
|
|
7
7
|
env:
|
|
8
8
|
global:
|
|
@@ -11,21 +11,24 @@ env:
|
|
|
11
11
|
- DB=postgres TEST_SUITE=rubocop
|
|
12
12
|
- DB=postgres TEST_SUITE="rake spec:features"
|
|
13
13
|
- DB=postgres TEST_SUITE="rake spec:models"
|
|
14
|
-
- DB=postgres TEST_SUITE="rake spec:mailers"
|
|
15
|
-
- DB=postgres TEST_SUITE="rake spec:
|
|
16
|
-
- DB=postgres TEST_SUITE="rake spec:helpers"
|
|
17
|
-
- DB=postgres TEST_SUITE="rake spec:lib"
|
|
18
|
-
- DB=postgres TEST_SUITE="rake spec:routing"
|
|
19
|
-
- DB=postgres TEST_SUITE="rake spec:views"
|
|
14
|
+
- DB=postgres TEST_SUITE="rake spec:controllers spec:lib spec:routing spec:mailers"
|
|
15
|
+
- DB=postgres TEST_SUITE="rake spec:views spec:helpers"
|
|
20
16
|
- DB=mysql TEST_SUITE="rake spec:models"
|
|
21
17
|
- DB=sqlite TEST_SUITE="rake spec:models"
|
|
22
18
|
|
|
23
19
|
matrix:
|
|
24
20
|
fast_finish: true
|
|
21
|
+
exclude:
|
|
22
|
+
- rvm: 2.5.0
|
|
23
|
+
env: DB=postgres TEST_SUITE=rubocop
|
|
25
24
|
allow_failures:
|
|
26
|
-
- rvm: 2.3.6
|
|
27
|
-
env: DB=sqlite TEST_SUITE="rake spec:models"
|
|
28
25
|
- rvm: 2.4.2
|
|
26
|
+
env: DB=mysql TEST_SUITE="rake spec:models"
|
|
27
|
+
- rvm: 2.4.2
|
|
28
|
+
env: DB=sqlite TEST_SUITE="rake spec:models"
|
|
29
|
+
- rvm: 2.5.0
|
|
30
|
+
env: DB=mysql TEST_SUITE="rake spec:models"
|
|
31
|
+
- rvm: 2.5.0
|
|
29
32
|
env: DB=sqlite TEST_SUITE="rake spec:models"
|
|
30
33
|
|
|
31
34
|
addons:
|
|
@@ -40,6 +43,8 @@ before_install:
|
|
|
40
43
|
- "sh -e /etc/init.d/xvfb start"
|
|
41
44
|
|
|
42
45
|
before_script:
|
|
46
|
+
# gem update --system is a workaround for travis-ci/travis-ci#8978
|
|
47
|
+
- "gem update --system"
|
|
43
48
|
- sh -c "cp config/database.$DB.yml config/database.yml"
|
|
44
49
|
- sh -c "if [ \"$DB\" = 'postgres' ]; then psql -c 'create database fat_free_crm_test;' -U postgres; fi"
|
|
45
50
|
- sh -c "if [ \"$DB\" = 'mysql' ]; then mysql -e 'create database fat_free_crm_test;'; fi"
|
data/CHANGELOG.md
CHANGED
|
@@ -4,24 +4,60 @@ It does not matter how slowly you go as long as you do not stop.
|
|
|
4
4
|
First they ignore you, then they laugh at you, then they fight you,
|
|
5
5
|
then you win. –- Mahatma Gandhi
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
Unreleased (0.19.0)
|
|
8
|
+
=======
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
Sat Apr 21, 2018 (0.18.0)
|
|
8
12
|
---------------------------------------------------------------------
|
|
9
13
|
|
|
10
|
-
|
|
11
|
-
|
|
14
|
+
### Important changes
|
|
15
|
+
#### Mininium ruby version
|
|
16
|
+
#665 Support for Ruby 2.3 has been dropped, with test coverage for 2.4 and 2.5 enabled.
|
|
17
|
+
|
|
18
|
+
#### Swap to FactoryBot
|
|
19
|
+
If you consume fat free crm as an engine and re-use any factories, you'll need to [upgrade to FactoryBot](https://github.com/thoughtbot/factory_bot/blob/4-9-0-stable/UPGRADE_FROM_FACTORY_GIRL.md).
|
|
20
|
+
|
|
21
|
+
#### Removed methods
|
|
22
|
+
`Lead.update_with_permissions` is removed, use user_ids and group_ids inside attributes instead and call lead.update_with_account_and_lead_counters
|
|
23
|
+
`FatFreeCRM::Permissions.save_with_permissions` is removed, use user_ids and group_ids inside attributes and call save
|
|
24
|
+
`FatFreeCRM::Permissions.update_with_permissions` is removed, use user_ids and group_ids inside attributes and call update_attributes
|
|
25
|
+
|
|
26
|
+
#### Other changes
|
|
27
|
+
- CVE-2018-8048 (loofah gem)
|
|
28
|
+
- CVE-2018-3741 (rails-html-sanitizer gem)
|
|
29
|
+
- #768 Fix comment creation on entities
|
|
30
|
+
- #762 #764 Fix bug in select menu
|
|
31
|
+
- #759 Improve zero revenue display
|
|
32
|
+
- #753 Opportunities sort by weighted amount
|
|
33
|
+
- #749 Fix unsafe reflection and mass assignment
|
|
12
34
|
|
|
13
35
|
Wed Jan 24, 2018 (0.17.2)
|
|
14
36
|
---------------------------------------------------------------------
|
|
15
|
-
-
|
|
16
|
-
-
|
|
37
|
+
- CVE-2017-0889
|
|
38
|
+
- #724 Fixes #589 Autocomplete regression
|
|
39
|
+
- #723 Fixes #687 Passing string to define a callback is not supported.
|
|
17
40
|
|
|
18
|
-
|
|
41
|
+
Wed Jan 24, 2018 (0.16.3)
|
|
19
42
|
---------------------------------------------------------------------
|
|
20
|
-
|
|
43
|
+
CVE-2017-0889
|
|
44
|
+
|
|
45
|
+
Wed Jan 24, 2018 (0.15.1)
|
|
46
|
+
---------------------------------------------------------------------
|
|
47
|
+
CVE-2017-0889
|
|
48
|
+
|
|
49
|
+
Wed Jan 24, 2018 (0.14.1)
|
|
50
|
+
---------------------------------------------------------------------
|
|
51
|
+
CVE-2017-0889
|
|
21
52
|
|
|
22
53
|
Sat Jan 20, 2018 (0.17.1)
|
|
23
54
|
---------------------------------------------------------------------
|
|
24
55
|
- #709 Revert accidental minimum ruby version 2.4 changes (#665)
|
|
56
|
+
- Fix #687 Passing string to define a callback is not supported.
|
|
57
|
+
|
|
58
|
+
Mon Jan 22, 2018 (0.16.2)
|
|
59
|
+
---------------------------------------------------------------------
|
|
60
|
+
Fix #687
|
|
25
61
|
|
|
26
62
|
Sat Jan 20, 2018 (0.17.0)
|
|
27
63
|
---------------------------------------------------------------------
|
data/CONTRIBUTORS.md
CHANGED
|
@@ -2,91 +2,133 @@ The following people have contributed code, patches, bug fixes, and language
|
|
|
2
2
|
translations to the Fat Free CRM:
|
|
3
3
|
|
|
4
4
|
* Aaron Brethorst
|
|
5
|
+
* Adis Osmonov ªº
|
|
5
6
|
* Adrian Klingel
|
|
6
|
-
*
|
|
7
|
+
* Ain Tohvri
|
|
8
|
+
* Alejandro
|
|
9
|
+
* Aleksander Madland Stapnes
|
|
10
|
+
* Alexander Kabanov
|
|
7
11
|
* Alex Tomlins
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
12
|
+
* AndrewsHerrera
|
|
13
|
+
* Anton Oslyak
|
|
14
|
+
* Apirak
|
|
15
|
+
* Apirak Panatkool
|
|
16
|
+
* Ashwin Phatak
|
|
17
|
+
* Avery Pennarun
|
|
18
|
+
* Ben Tillman
|
|
13
19
|
* Brook
|
|
14
|
-
*
|
|
20
|
+
* Bryan Helmkamp
|
|
15
21
|
* Chris Carter
|
|
16
22
|
* Codemis
|
|
17
|
-
*
|
|
18
|
-
* Daniel Jabbour
|
|
19
|
-
* Daniel O'Connor
|
|
23
|
+
* Cody Swann
|
|
24
|
+
* Daniel Jabbour
|
|
25
|
+
* Daniel O'Connor
|
|
26
|
+
* Danilo Lacoste
|
|
27
|
+
* David Chua
|
|
20
28
|
* David Cornu
|
|
21
29
|
* David Keita
|
|
22
|
-
*
|
|
23
|
-
*
|
|
24
|
-
*
|
|
30
|
+
* David Westerink
|
|
31
|
+
* deppbot
|
|
32
|
+
* Dirk Kelly
|
|
33
|
+
* DmitriySalko
|
|
34
|
+
* Dmitry
|
|
35
|
+
* Dmitry Avramets
|
|
36
|
+
* Dmitry Dudin
|
|
37
|
+
* Douglas Campos
|
|
25
38
|
* Drew Neil
|
|
26
|
-
* Dr. Nic Williams (Australia)
|
|
27
39
|
* dup2
|
|
28
|
-
* Elad Meidar (Israel)
|
|
29
40
|
* Electron-libre
|
|
30
|
-
* Enderson Maia
|
|
31
|
-
* Eric
|
|
32
|
-
*
|
|
33
|
-
* Fritz Thielemann
|
|
34
|
-
*
|
|
41
|
+
* Enderson Maia
|
|
42
|
+
* Eric Shelley
|
|
43
|
+
* François Koessler
|
|
44
|
+
* Fritz Thielemann
|
|
45
|
+
* Gaston Arbeletche -VAIRIX-
|
|
46
|
+
* Gavin Baker
|
|
47
|
+
* Grzegorz Unijewski
|
|
35
48
|
* guesxy
|
|
36
|
-
*
|
|
37
|
-
*
|
|
38
|
-
* James Zhang (China)
|
|
49
|
+
* James Cook
|
|
50
|
+
* James Zhang
|
|
39
51
|
* Jan Schulz-Hofen
|
|
40
|
-
* Jim Gay
|
|
41
|
-
*
|
|
52
|
+
* Jim Gay
|
|
53
|
+
* johnnyshields
|
|
54
|
+
* Johnny Shields
|
|
55
|
+
* John W. M. Carneiro
|
|
42
56
|
* Josef Chmel
|
|
43
|
-
*
|
|
57
|
+
* jose-gordo
|
|
58
|
+
* jose.gordo
|
|
59
|
+
* Jose Luis Gordo
|
|
60
|
+
* Jose Luis Gordo Romero
|
|
44
61
|
* Joseph Near
|
|
45
|
-
*
|
|
62
|
+
* Josh Adams
|
|
63
|
+
* Kamil Politowicz
|
|
64
|
+
* ken-wong
|
|
46
65
|
* Kevin Fullerton
|
|
47
66
|
* Kiran Jonnalagadda
|
|
48
67
|
* Kouichi Kishikami
|
|
49
|
-
*
|
|
50
|
-
*
|
|
51
|
-
*
|
|
52
|
-
*
|
|
68
|
+
* Koustubh Sinkar
|
|
69
|
+
* Lana Dvorkin
|
|
70
|
+
* Lincoln Lee
|
|
71
|
+
* Louis Nyffenegger
|
|
72
|
+
* Lukasz Kosewski
|
|
73
|
+
* m
|
|
74
|
+
* Malachai
|
|
75
|
+
* Marcelo M. Leal
|
|
53
76
|
* Marian Mrózek
|
|
54
77
|
* Mark Friedgan
|
|
55
|
-
* Martin Gajdos
|
|
56
|
-
* Martin Trejo
|
|
78
|
+
* Martin Gajdos
|
|
79
|
+
* Martin Trejo
|
|
80
|
+
* Martin Villero
|
|
57
81
|
* Masaki Muranaka
|
|
58
|
-
*
|
|
82
|
+
* Matthew Lehner
|
|
59
83
|
* Mauro Alloro
|
|
60
|
-
* Michael Dvorkin
|
|
61
|
-
*
|
|
62
|
-
*
|
|
84
|
+
* Michael Dvorkin
|
|
85
|
+
* Mike Dvorkin
|
|
86
|
+
* Murray Steele
|
|
87
|
+
* Nathan B
|
|
88
|
+
* Nathan Broadbent
|
|
63
89
|
* Nicholas Fine
|
|
64
|
-
* Nicholas Rowe
|
|
65
|
-
*
|
|
66
|
-
*
|
|
67
|
-
*
|
|
90
|
+
* Nicholas Rowe
|
|
91
|
+
* Nicolas Leger
|
|
92
|
+
* nigh7m4r3
|
|
93
|
+
* Nobuhito OKADA
|
|
94
|
+
* Olle Jonsson
|
|
95
|
+
* Olmo Maldonado
|
|
96
|
+
* orthographic-pedant
|
|
97
|
+
* papilip
|
|
98
|
+
* Patrick Mulder
|
|
68
99
|
* Paul
|
|
69
|
-
* Peter McCurdy
|
|
100
|
+
* Peter McCurdy
|
|
70
101
|
* Philipp Ullmann
|
|
71
|
-
* Ralf Ebert
|
|
102
|
+
* Ralf Ebert
|
|
103
|
+
* Reuben Salagaras
|
|
72
104
|
* rickerbh
|
|
73
|
-
* Rit Li
|
|
105
|
+
* Rit Li
|
|
106
|
+
* Road Tang
|
|
74
107
|
* Robert Fletcher
|
|
75
108
|
* Rob Esposito
|
|
76
|
-
* Roman Smirnov
|
|
77
|
-
*
|
|
78
|
-
*
|
|
79
|
-
* Scott
|
|
109
|
+
* Roman Smirnov
|
|
110
|
+
* Ryan Stenhouse
|
|
111
|
+
* Satoru Ishikawa
|
|
112
|
+
* Scott
|
|
113
|
+
* Scott Dudley
|
|
114
|
+
* Scott Miller
|
|
80
115
|
* Sebastian Castro
|
|
81
116
|
* Seb Jacobs
|
|
82
117
|
* Serafim Junior Dos Santos Fagundes
|
|
83
|
-
*
|
|
118
|
+
* Stanley Hansen
|
|
119
|
+
* Steve Kenworthy
|
|
120
|
+
* steveyken
|
|
121
|
+
* Szeto Bo
|
|
84
122
|
* tarbalazs
|
|
85
|
-
*
|
|
86
|
-
*
|
|
87
|
-
*
|
|
123
|
+
* Thomas Pike
|
|
124
|
+
* Tim Adler
|
|
125
|
+
* Todd Makinster
|
|
126
|
+
* Tom Meier
|
|
127
|
+
* Trevor Oke
|
|
88
128
|
* William Lawson
|
|
89
129
|
* Xughaa
|
|
90
|
-
*
|
|
130
|
+
* Yann Hourdel
|
|
131
|
+
* Yury Kotlyarov
|
|
132
|
+
* Zlatko Zahariev
|
|
91
133
|
|
|
92
134
|
Generated using "git shortlog -s -n | cut -f 2 | sort"
|