decidim-core 0.3.2 → 0.4.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/assets/stylesheets/decidim/extras/_add_comments.scss +9 -0
- data/app/assets/stylesheets/decidim/extras/_label-required.scss +3 -0
- data/app/assets/stylesheets/decidim/extras/_reference.scss +3 -0
- data/app/assets/stylesheets/decidim/extras/_social_icons_mini.scss +10 -0
- data/app/commands/decidim/invite_user.rb +1 -1
- data/app/commands/decidim/update_account.rb +2 -6
- data/app/constraints/decidim/current_feature.rb +11 -18
- data/app/constraints/decidim/current_participatory_process.rb +35 -0
- data/app/controllers/concerns/decidim/devise_controllers.rb +1 -0
- data/app/controllers/concerns/decidim/locale_switcher.rb +2 -2
- data/app/controllers/concerns/decidim/needs_authorization.rb +1 -2
- data/app/controllers/concerns/decidim/needs_organization.rb +1 -2
- data/app/controllers/concerns/decidim/needs_participatory_process.rb +19 -10
- data/app/controllers/decidim/account_controller.rb +13 -9
- data/app/controllers/decidim/application_controller.rb +3 -8
- data/app/controllers/decidim/devise/registrations_controller.rb +0 -1
- data/app/controllers/decidim/devise/sessions_controller.rb +0 -1
- data/app/controllers/decidim/errors_controller.rb +15 -0
- data/app/controllers/decidim/features/base_controller.rb +1 -0
- data/app/controllers/decidim/participatory_process_groups_controller.rb +6 -2
- data/app/controllers/decidim/participatory_process_steps_controller.rb +1 -0
- data/app/controllers/decidim/participatory_processes_controller.rb +3 -3
- data/app/helpers/decidim/application_helper.rb +3 -0
- data/app/helpers/decidim/feature_path_helper.rb +35 -0
- data/app/helpers/decidim/feature_reference_helper.rb +4 -2
- data/app/helpers/decidim/icon_helper.rb +20 -0
- data/app/helpers/decidim/menu_helper.rb +1 -1
- data/app/helpers/decidim/participatory_process_helper.rb +0 -14
- data/app/models/decidim/feature.rb +9 -1
- data/app/models/decidim/static_page.rb +1 -0
- data/app/models/decidim/user.rb +2 -0
- data/app/queries/decidim/highlighted_participatory_processes.rb +1 -1
- data/app/views/decidim/account/show.html.erb +1 -3
- data/app/views/decidim/devise/shared/_omniauth_buttons.html.erb +1 -1
- data/app/views/decidim/devise/shared/_omniauth_buttons_mini.html.erb +20 -0
- data/app/views/{pages/500.html.erb → decidim/errors/internal_server_error.html.erb} +0 -0
- data/app/views/{pages/404.html.erb → decidim/errors/not_found.html.erb} +1 -1
- data/app/views/decidim/shared/_login_modal.html.erb +4 -0
- data/app/views/decidim/shared/_share_modal.html.erb +1 -1
- data/app/views/layouts/decidim/_process_header.html.erb +2 -2
- data/config/i18n-tasks.yml +2 -0
- data/config/initializers/invisible_captcha.rb +2 -2
- data/config/locales/ca.yml +14 -8
- data/config/locales/en.yml +13 -7
- data/config/locales/es.yml +13 -7
- data/config/locales/eu.yml +0 -7
- data/config/locales/fi.yml +0 -7
- data/config/locales/fr.yml +4 -11
- data/config/locales/it.yml +0 -7
- data/config/locales/nl.yml +0 -7
- data/config/routes.rb +2 -8
- data/db/migrate/20160817115213_devise_create_decidim_users.rb +6 -6
- data/db/migrate/20160920140207_devise_invitable_add_to_decidim_users.rb +9 -9
- data/db/seeds.rb +2 -2
- data/lib/decidim/core.rb +25 -1
- data/lib/decidim/core/engine.rb +0 -1
- data/lib/decidim/core/test.rb +1 -0
- data/lib/decidim/core/test/factories.rb +11 -6
- data/lib/decidim/core/test/shared_examples/comments_examples.rb +69 -66
- data/lib/decidim/core/test/shared_examples/errors.rb +21 -0
- data/lib/decidim/core/test/shared_examples/has_reference.rb +18 -2
- data/lib/decidim/core/test/shared_examples/manage_moderations_examples.rb +2 -2
- data/lib/decidim/core/version.rb +1 -1
- data/lib/decidim/devise_failure_app.rb +1 -1
- data/lib/decidim/form_builder.rb +89 -5
- data/lib/decidim/has_reference.rb +3 -15
- data/lib/decidim/notifiable.rb +22 -0
- data/lib/devise/models/decidim_validatable.rb +4 -4
- metadata +41 -16
@@ -0,0 +1,21 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
RSpec.shared_examples_for "a 404 page" do
|
4
|
+
before do
|
5
|
+
allow(Rails.application).to \
|
6
|
+
receive(:env_config).with(no_args).and_wrap_original do |m, *|
|
7
|
+
m.call.merge(
|
8
|
+
"action_dispatch.show_exceptions" => true,
|
9
|
+
"action_dispatch.show_detailed_exceptions" => false
|
10
|
+
)
|
11
|
+
end
|
12
|
+
|
13
|
+
visit target_path
|
14
|
+
end
|
15
|
+
|
16
|
+
it "leads to a 404" do
|
17
|
+
expect(page).to have_content("The page you're looking for can't be found")
|
18
|
+
|
19
|
+
expect(page).to have_http_status(:not_found)
|
20
|
+
end
|
21
|
+
end
|
@@ -1,13 +1,29 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
shared_examples_for "has reference" do
|
4
|
+
before do
|
5
|
+
allow(Decidim).to receive(:calculate_reference_method).and_return(nil)
|
6
|
+
end
|
7
|
+
|
4
8
|
context "when the reference is nil" do
|
5
9
|
before do
|
6
10
|
subject[:reference] = nil
|
7
11
|
end
|
8
12
|
|
9
|
-
|
10
|
-
|
13
|
+
context "when there is not a custom resource reference generator present" do
|
14
|
+
it "generates a valid reference" do
|
15
|
+
expect(subject.reference).to match(/[A-z]+/)
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
context "when there is a custom resource reference generator present" do
|
20
|
+
before do
|
21
|
+
allow(Decidim).to receive(:resource_reference_generator).and_return(->(resource, _feature) { "1234-#{resource.id}" })
|
22
|
+
end
|
23
|
+
|
24
|
+
it "generates a valid reference" do
|
25
|
+
expect(subject.reference).to eq("1234-#{subject.id}")
|
26
|
+
end
|
11
27
|
end
|
12
28
|
end
|
13
29
|
|
@@ -13,7 +13,7 @@ RSpec.shared_examples "manage moderations" do
|
|
13
13
|
let!(:hidden_moderations) do
|
14
14
|
reportables.last(1).map do |reportable|
|
15
15
|
moderation = create(:moderation, reportable: reportable, report_count: 3, hidden_at: Time.current)
|
16
|
-
create_list(:report, 3, moderation: moderation)
|
16
|
+
create_list(:report, 3, moderation: moderation, reason: :spam)
|
17
17
|
moderation
|
18
18
|
end
|
19
19
|
end
|
@@ -30,7 +30,7 @@ RSpec.shared_examples "manage moderations" do
|
|
30
30
|
moderations.each do |moderation|
|
31
31
|
within "tr[data-id=\"#{moderation.id}\"]" do
|
32
32
|
expect(page).to have_content moderation.reportable.reported_content_url
|
33
|
-
expect(page).to have_content
|
33
|
+
expect(page).to have_content "Spam"
|
34
34
|
end
|
35
35
|
end
|
36
36
|
end
|
data/lib/decidim/core/version.rb
CHANGED
data/lib/decidim/form_builder.rb
CHANGED
@@ -89,7 +89,7 @@ module Decidim
|
|
89
89
|
|
90
90
|
content_tag(:div, class: "editor") do
|
91
91
|
template = ""
|
92
|
-
template += label(name) if options[:label] != false
|
92
|
+
template += label(name, options[:label].to_s || name) if options[:label] != false
|
93
93
|
template += hidden_field(name, options)
|
94
94
|
template += content_tag(:div, nil, class: "editor-container", data: {
|
95
95
|
toolbar: options[:toolbar]
|
@@ -144,7 +144,7 @@ module Decidim
|
|
144
144
|
iso_value = value.present? ? value.strftime("%Y-%m-%d") : ""
|
145
145
|
|
146
146
|
template = ""
|
147
|
-
template += label(attribute, label_for(attribute))
|
147
|
+
template += label(attribute, label_for(attribute) + required_for_attribute(attribute))
|
148
148
|
template += @template.text_field(
|
149
149
|
@object_name,
|
150
150
|
attribute,
|
@@ -166,7 +166,7 @@ module Decidim
|
|
166
166
|
formatted_value = I18n.localize(value, format: :timepicker)
|
167
167
|
end
|
168
168
|
template = ""
|
169
|
-
template += label(attribute, label_for(attribute))
|
169
|
+
template += label(attribute, label_for(attribute) + required_for_attribute(attribute))
|
170
170
|
template += @template.text_field(
|
171
171
|
@object_name,
|
172
172
|
attribute,
|
@@ -180,6 +180,49 @@ module Decidim
|
|
180
180
|
template.html_safe
|
181
181
|
end
|
182
182
|
|
183
|
+
# Public: Generates a file upload field and sets the form as multipart.
|
184
|
+
# If the file is an image it displays the default image if present or the current one.
|
185
|
+
# By default it also generates a checkbox to delete the file. This checkbox can
|
186
|
+
# be hidden if `options[:optional]` is passed as `false`.
|
187
|
+
#
|
188
|
+
# attribute - The String name of the attribute to buidl the field.
|
189
|
+
# options - A Hash with options to build the field.
|
190
|
+
# * optional: Whether the file can be optional or not.
|
191
|
+
def upload(attribute, options = {})
|
192
|
+
self.multipart = true
|
193
|
+
options[:optional] = options[:optional].nil? ? true : options[:optional]
|
194
|
+
|
195
|
+
file = object.send attribute
|
196
|
+
template = ""
|
197
|
+
template += label(attribute, label_for(attribute) + required_for_attribute(attribute))
|
198
|
+
template += @template.file_field @object_name, attribute
|
199
|
+
|
200
|
+
if file_is_image?(file)
|
201
|
+
template += if file.present?
|
202
|
+
@template.label_tag I18n.t("current_image", scope: "decidim.forms")
|
203
|
+
else
|
204
|
+
@template.label_tag I18n.t("default_image", scope: "decidim.forms")
|
205
|
+
end
|
206
|
+
template += @template.link_to @template.image_tag(file.url), file.url, target: "_blank"
|
207
|
+
elsif file_is_present?(file)
|
208
|
+
template += @template.label_tag I18n.t("current_file", scope: "decidim.forms")
|
209
|
+
template += @template.link_to file.file.filename, file.url, target: "_blank"
|
210
|
+
end
|
211
|
+
|
212
|
+
if file_is_present?(file)
|
213
|
+
if options[:optional]
|
214
|
+
template += content_tag :div, class: "field" do
|
215
|
+
safe_join([
|
216
|
+
@template.check_box(@object_name, "remove_#{attribute}"),
|
217
|
+
label("remove_#{attribute}", label_for("remove_#{attribute}"))
|
218
|
+
])
|
219
|
+
end
|
220
|
+
end
|
221
|
+
end
|
222
|
+
|
223
|
+
template.html_safe
|
224
|
+
end
|
225
|
+
|
183
226
|
private
|
184
227
|
|
185
228
|
# Private: Override from FoundationRailsHelper in order to render
|
@@ -251,9 +294,26 @@ module Decidim
|
|
251
294
|
#
|
252
295
|
# Returns Boolean.
|
253
296
|
def attribute_required?(attribute)
|
254
|
-
validator = find_validator(attribute, ActiveModel::Validations::PresenceValidator)
|
297
|
+
validator = find_validator(attribute, ActiveModel::Validations::PresenceValidator) ||
|
298
|
+
find_validator(attribute, TranslatablePresenceValidator)
|
299
|
+
|
300
|
+
return unless validator
|
301
|
+
|
302
|
+
# Check if the if condition is present and it evaluates to true
|
303
|
+
if_condition = validator.options[:if]
|
304
|
+
validator_if_condition = if_condition.nil? ||
|
305
|
+
(string_or_symbol?(if_condition) ? object.send(if_condition) : if_condition.call(object))
|
306
|
+
|
307
|
+
# Check if the unless condition is present and it evaluates to false
|
308
|
+
unless_condition = validator.options[:unless]
|
309
|
+
validator_unless_condition = unless_condition.nil? ||
|
310
|
+
(string_or_symbol?(unless_condition) ? !object.send(unless_condition) : !unless_condition.call(object))
|
255
311
|
|
256
|
-
|
312
|
+
validator_if_condition && validator_unless_condition
|
313
|
+
end
|
314
|
+
|
315
|
+
def string_or_symbol?(obj)
|
316
|
+
obj.is_a?(String) || obj.is_a?(Symbol)
|
257
317
|
end
|
258
318
|
|
259
319
|
# Private: Tries to find a length validator in the form object.
|
@@ -293,6 +353,7 @@ module Decidim
|
|
293
353
|
|
294
354
|
text = default_label_text(object, attribute) if text.nil? || text == true
|
295
355
|
|
356
|
+
text += required_for_attribute(attribute)
|
296
357
|
text = if field_before_label && block_given?
|
297
358
|
safe_join([yield, text.html_safe])
|
298
359
|
elsif block_given?
|
@@ -379,8 +440,31 @@ module Decidim
|
|
379
440
|
options[:class] ||= ""
|
380
441
|
options[:class] += " is-invalid-label"
|
381
442
|
end
|
443
|
+
text += required_for_attribute(attribute)
|
382
444
|
|
383
445
|
label(attribute, (text || "").html_safe, options)
|
384
446
|
end
|
447
|
+
|
448
|
+
# Private: Returns whether the file is an image or not.
|
449
|
+
def file_is_image?(file)
|
450
|
+
return unless file && file.respond_to?(:url)
|
451
|
+
return file.content_type.start_with? "image" if file.content_type.present?
|
452
|
+
Mime::Type.lookup_by_extension(File.extname(file.url)[1..-1]).to_s.start_with? "image" if file.url.present?
|
453
|
+
end
|
454
|
+
|
455
|
+
# Private: Returns whether the file exists or not.
|
456
|
+
def file_is_present?(file)
|
457
|
+
return unless file && file.respond_to?(:url)
|
458
|
+
file.present?
|
459
|
+
end
|
460
|
+
|
461
|
+
def required_for_attribute(attribute)
|
462
|
+
if attribute_required?(attribute)
|
463
|
+
return content_tag(:abbr, "*", title: I18n.t("required", scope: "forms"),
|
464
|
+
data: { tooltip: true, disable_hover: false }, 'aria-haspopup': true,
|
465
|
+
class: "label-required").html_safe
|
466
|
+
end
|
467
|
+
"".html_safe
|
468
|
+
end
|
385
469
|
end
|
386
470
|
end
|
@@ -19,25 +19,13 @@ module Decidim
|
|
19
19
|
|
20
20
|
private
|
21
21
|
|
22
|
-
# Public: Calculates a unique reference for the model
|
23
|
-
#
|
24
|
-
#
|
25
|
-
# "BCN-DPP-2017-02-6589" which in this example translates to:
|
26
|
-
#
|
27
|
-
# BCN: A setting configured at the organization to be prepended to each reference.
|
28
|
-
# PROP: Unique name identifier for a resource: Decidim::Proposals::Proposal (MEET for meetings or PROJ for projects).
|
29
|
-
# 2017-02: Year-Month of the resource creation date
|
30
|
-
# 6589: ID of the resource
|
22
|
+
# Public: Calculates a unique reference for the model using the function
|
23
|
+
# provided by configuration
|
31
24
|
#
|
32
25
|
# Returns a String.
|
33
26
|
def calculate_reference
|
34
27
|
return unless feature
|
35
|
-
|
36
|
-
ref = feature.participatory_process.organization.reference_prefix
|
37
|
-
class_identifier = self.class.name.demodulize[0..3].upcase
|
38
|
-
year_month = (created_at || Time.current).strftime("%Y-%m")
|
39
|
-
|
40
|
-
[ref, class_identifier, year_month, id].join("-")
|
28
|
+
Decidim.resource_reference_generator.call(self, feature)
|
41
29
|
end
|
42
30
|
|
43
31
|
# Internal: Sets the unique reference to the model.
|
@@ -0,0 +1,22 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "active_support/concern"
|
4
|
+
|
5
|
+
module Decidim
|
6
|
+
# Shared behaviour for notifiable models.
|
7
|
+
module Notifiable
|
8
|
+
extend ActiveSupport::Concern
|
9
|
+
|
10
|
+
included do
|
11
|
+
# Public: Whether the object is notifiable or not.
|
12
|
+
def notifiable?(_context)
|
13
|
+
true
|
14
|
+
end
|
15
|
+
|
16
|
+
# Public: A collection of users to send the notifications.
|
17
|
+
def users_to_notify
|
18
|
+
[]
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
@@ -27,13 +27,13 @@ module Devise
|
|
27
27
|
assert_validations_api!(base)
|
28
28
|
|
29
29
|
base.class_eval do
|
30
|
-
validates_presence_of
|
30
|
+
validates_presence_of :email, if: :email_required?
|
31
31
|
validates_uniqueness_of :email, allow_blank: true, if: :email_changed?, scope: :organization
|
32
|
-
validates_format_of
|
32
|
+
validates_format_of :email, with: email_regexp, allow_blank: true, if: :email_changed?
|
33
33
|
|
34
|
-
validates_presence_of
|
34
|
+
validates_presence_of :password, if: :password_required?
|
35
35
|
validates_confirmation_of :password, if: :password_required?
|
36
|
-
validates_length_of
|
36
|
+
validates_length_of :password, within: password_length, allow_blank: true
|
37
37
|
end
|
38
38
|
end
|
39
39
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: decidim-core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Josep Jaume Rey Peroy
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2017-
|
13
|
+
date: 2017-07-12 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: rails
|
@@ -96,6 +96,20 @@ dependencies:
|
|
96
96
|
- - "~>"
|
97
97
|
- !ruby/object:Gem::Version
|
98
98
|
version: 0.9.1
|
99
|
+
- !ruby/object:Gem::Dependency
|
100
|
+
name: sass
|
101
|
+
requirement: !ruby/object:Gem::Requirement
|
102
|
+
requirements:
|
103
|
+
- - '='
|
104
|
+
- !ruby/object:Gem::Version
|
105
|
+
version: 3.4.24
|
106
|
+
type: :runtime
|
107
|
+
prerelease: false
|
108
|
+
version_requirements: !ruby/object:Gem::Requirement
|
109
|
+
requirements:
|
110
|
+
- - '='
|
111
|
+
- !ruby/object:Gem::Version
|
112
|
+
version: 3.4.24
|
99
113
|
- !ruby/object:Gem::Dependency
|
100
114
|
name: sassc-rails
|
101
115
|
requirement: !ruby/object:Gem::Requirement
|
@@ -200,14 +214,14 @@ dependencies:
|
|
200
214
|
requirements:
|
201
215
|
- - "~>"
|
202
216
|
- !ruby/object:Gem::Version
|
203
|
-
version: 0.
|
217
|
+
version: 0.21.0
|
204
218
|
type: :runtime
|
205
219
|
prerelease: false
|
206
220
|
version_requirements: !ruby/object:Gem::Requirement
|
207
221
|
requirements:
|
208
222
|
- - "~>"
|
209
223
|
- !ruby/object:Gem::Version
|
210
|
-
version: 0.
|
224
|
+
version: 0.21.0
|
211
225
|
- !ruby/object:Gem::Dependency
|
212
226
|
name: redis
|
213
227
|
requirement: !ruby/object:Gem::Requirement
|
@@ -452,70 +466,70 @@ dependencies:
|
|
452
466
|
requirements:
|
453
467
|
- - '='
|
454
468
|
- !ruby/object:Gem::Version
|
455
|
-
version: 0.
|
469
|
+
version: 0.4.0
|
456
470
|
type: :runtime
|
457
471
|
prerelease: false
|
458
472
|
version_requirements: !ruby/object:Gem::Requirement
|
459
473
|
requirements:
|
460
474
|
- - '='
|
461
475
|
- !ruby/object:Gem::Version
|
462
|
-
version: 0.
|
476
|
+
version: 0.4.0
|
463
477
|
- !ruby/object:Gem::Dependency
|
464
478
|
name: decidim-dev
|
465
479
|
requirement: !ruby/object:Gem::Requirement
|
466
480
|
requirements:
|
467
481
|
- - '='
|
468
482
|
- !ruby/object:Gem::Version
|
469
|
-
version: 0.
|
483
|
+
version: 0.4.0
|
470
484
|
type: :development
|
471
485
|
prerelease: false
|
472
486
|
version_requirements: !ruby/object:Gem::Requirement
|
473
487
|
requirements:
|
474
488
|
- - '='
|
475
489
|
- !ruby/object:Gem::Version
|
476
|
-
version: 0.
|
490
|
+
version: 0.4.0
|
477
491
|
- !ruby/object:Gem::Dependency
|
478
492
|
name: decidim-proposals
|
479
493
|
requirement: !ruby/object:Gem::Requirement
|
480
494
|
requirements:
|
481
495
|
- - '='
|
482
496
|
- !ruby/object:Gem::Version
|
483
|
-
version: 0.
|
497
|
+
version: 0.4.0
|
484
498
|
type: :development
|
485
499
|
prerelease: false
|
486
500
|
version_requirements: !ruby/object:Gem::Requirement
|
487
501
|
requirements:
|
488
502
|
- - '='
|
489
503
|
- !ruby/object:Gem::Version
|
490
|
-
version: 0.
|
504
|
+
version: 0.4.0
|
491
505
|
- !ruby/object:Gem::Dependency
|
492
506
|
name: decidim-meetings
|
493
507
|
requirement: !ruby/object:Gem::Requirement
|
494
508
|
requirements:
|
495
509
|
- - '='
|
496
510
|
- !ruby/object:Gem::Version
|
497
|
-
version: 0.
|
511
|
+
version: 0.4.0
|
498
512
|
type: :development
|
499
513
|
prerelease: false
|
500
514
|
version_requirements: !ruby/object:Gem::Requirement
|
501
515
|
requirements:
|
502
516
|
- - '='
|
503
517
|
- !ruby/object:Gem::Version
|
504
|
-
version: 0.
|
518
|
+
version: 0.4.0
|
505
519
|
- !ruby/object:Gem::Dependency
|
506
520
|
name: decidim-results
|
507
521
|
requirement: !ruby/object:Gem::Requirement
|
508
522
|
requirements:
|
509
523
|
- - '='
|
510
524
|
- !ruby/object:Gem::Version
|
511
|
-
version: 0.
|
525
|
+
version: 0.4.0
|
512
526
|
type: :development
|
513
527
|
prerelease: false
|
514
528
|
version_requirements: !ruby/object:Gem::Requirement
|
515
529
|
requirements:
|
516
530
|
- - '='
|
517
531
|
- !ruby/object:Gem::Version
|
518
|
-
version: 0.
|
532
|
+
version: 0.4.0
|
519
533
|
description: Adds core features so other engines can hook into the framework.
|
520
534
|
email:
|
521
535
|
- josepjaume@gmail.com
|
@@ -565,10 +579,14 @@ files:
|
|
565
579
|
- app/assets/stylesheets/decidim/application.scss.erb
|
566
580
|
- app/assets/stylesheets/decidim/editor.sass
|
567
581
|
- app/assets/stylesheets/decidim/email.css
|
582
|
+
- app/assets/stylesheets/decidim/extras/_add_comments.scss
|
568
583
|
- app/assets/stylesheets/decidim/extras/_embed.scss
|
584
|
+
- app/assets/stylesheets/decidim/extras/_label-required.scss
|
569
585
|
- app/assets/stylesheets/decidim/extras/_leaflet.scss
|
570
586
|
- app/assets/stylesheets/decidim/extras/_quill.scss
|
587
|
+
- app/assets/stylesheets/decidim/extras/_reference.scss
|
571
588
|
- app/assets/stylesheets/decidim/extras/_register_form.scss
|
589
|
+
- app/assets/stylesheets/decidim/extras/_social_icons_mini.scss
|
572
590
|
- app/assets/stylesheets/decidim/layouts/_home.scss
|
573
591
|
- app/assets/stylesheets/decidim/layouts/_user.scss
|
574
592
|
- app/assets/stylesheets/decidim/layouts/_view.scss
|
@@ -634,6 +652,7 @@ files:
|
|
634
652
|
- app/commands/decidim/update_account.rb
|
635
653
|
- app/commands/decidim/update_notifications_settings.rb
|
636
654
|
- app/constraints/decidim/current_feature.rb
|
655
|
+
- app/constraints/decidim/current_participatory_process.rb
|
637
656
|
- app/controllers/concerns/decidim/action_authorization.rb
|
638
657
|
- app/controllers/concerns/decidim/devise_controllers.rb
|
639
658
|
- app/controllers/concerns/decidim/feature_settings.rb
|
@@ -655,6 +674,7 @@ files:
|
|
655
674
|
- app/controllers/decidim/devise/passwords_controller.rb
|
656
675
|
- app/controllers/decidim/devise/registrations_controller.rb
|
657
676
|
- app/controllers/decidim/devise/sessions_controller.rb
|
677
|
+
- app/controllers/decidim/errors_controller.rb
|
658
678
|
- app/controllers/decidim/features/base_controller.rb
|
659
679
|
- app/controllers/decidim/locales_controller.rb
|
660
680
|
- app/controllers/decidim/notifications_settings_controller.rb
|
@@ -683,9 +703,11 @@ files:
|
|
683
703
|
- app/helpers/decidim/authorization_form_helper.rb
|
684
704
|
- app/helpers/decidim/cookies_helper.rb
|
685
705
|
- app/helpers/decidim/decidim_form_helper.rb
|
706
|
+
- app/helpers/decidim/feature_path_helper.rb
|
686
707
|
- app/helpers/decidim/feature_reference_helper.rb
|
687
708
|
- app/helpers/decidim/filters_helper.rb
|
688
709
|
- app/helpers/decidim/humanize_booleans_helper.rb
|
710
|
+
- app/helpers/decidim/icon_helper.rb
|
689
711
|
- app/helpers/decidim/language_chooser_helper.rb
|
690
712
|
- app/helpers/decidim/layout_helper.rb
|
691
713
|
- app/helpers/decidim/localized_locales_helper.rb
|
@@ -782,6 +804,9 @@ files:
|
|
782
804
|
- app/views/decidim/devise/sessions/new.html.erb
|
783
805
|
- app/views/decidim/devise/shared/_links.html.erb
|
784
806
|
- app/views/decidim/devise/shared/_omniauth_buttons.html.erb
|
807
|
+
- app/views/decidim/devise/shared/_omniauth_buttons_mini.html.erb
|
808
|
+
- app/views/decidim/errors/internal_server_error.html.erb
|
809
|
+
- app/views/decidim/errors/not_found.html.erb
|
785
810
|
- app/views/decidim/export_mailer/export.html.erb
|
786
811
|
- app/views/decidim/newsletter_mailer/newsletter.html.erb
|
787
812
|
- app/views/decidim/notifications_settings/show.html.erb
|
@@ -844,8 +869,6 @@ files:
|
|
844
869
|
- app/views/layouts/decidim/participatory_process.html.erb
|
845
870
|
- app/views/layouts/decidim/user_profile.html.erb
|
846
871
|
- app/views/layouts/decidim/widget.html.erb
|
847
|
-
- app/views/pages/404.html.erb
|
848
|
-
- app/views/pages/500.html.erb
|
849
872
|
- app/views/pages/decidim_page.html.erb
|
850
873
|
- app/views/pages/home.html.erb
|
851
874
|
- app/views/pages/home/_extended.html.erb
|
@@ -967,6 +990,7 @@ files:
|
|
967
990
|
- lib/decidim/core/test/factories.rb
|
968
991
|
- lib/decidim/core/test/shared_examples/authorable.rb
|
969
992
|
- lib/decidim/core/test/shared_examples/comments_examples.rb
|
993
|
+
- lib/decidim/core/test/shared_examples/errors.rb
|
970
994
|
- lib/decidim/core/test/shared_examples/has_attachments.rb
|
971
995
|
- lib/decidim/core/test/shared_examples/has_category.rb
|
972
996
|
- lib/decidim/core/test/shared_examples/has_feature.rb
|
@@ -1003,6 +1027,7 @@ files:
|
|
1003
1027
|
- lib/decidim/menu.rb
|
1004
1028
|
- lib/decidim/menu_item.rb
|
1005
1029
|
- lib/decidim/menu_registry.rb
|
1030
|
+
- lib/decidim/notifiable.rb
|
1006
1031
|
- lib/decidim/page_finder.rb
|
1007
1032
|
- lib/decidim/query_extensions.rb
|
1008
1033
|
- lib/decidim/reportable.rb
|