decidim-core 0.0.1 → 0.0.2

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.
Files changed (118) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +1 -1
  3. data/app/assets/config/decidim_core_manifest.js +1 -0
  4. data/app/assets/javascripts/decidim.js.es6 +3 -2
  5. data/app/assets/javascripts/decidim/append_elements.js.es6 +8 -0
  6. data/app/assets/javascripts/decidim/filters.js.es6 +22 -0
  7. data/app/assets/javascripts/decidim/form_filter.component.js.es6 +176 -0
  8. data/app/assets/javascripts/decidim/form_filter.component.test.js +151 -0
  9. data/app/assets/javascripts/decidim/inline_svg.js.es6 +12 -0
  10. data/app/assets/javascripts/decidim/user_registrations.js.es6 +22 -0
  11. data/app/assets/stylesheets/decidim/_variables.scss +1 -1
  12. data/app/assets/stylesheets/decidim/modules/_comments.scss +3 -6
  13. data/app/assets/stylesheets/decidim/modules/_cookie-bar.scss +22 -0
  14. data/app/assets/stylesheets/decidim/modules/_layout.scss +9 -1
  15. data/app/assets/stylesheets/decidim/modules/_navbar.scss +8 -5
  16. data/app/assets/stylesheets/decidim/modules/_order-by.scss +0 -1
  17. data/app/assets/stylesheets/decidim/modules/_process-phase.scss +4 -0
  18. data/app/assets/stylesheets/decidim/modules/_timeline.scss +62 -80
  19. data/app/assets/stylesheets/decidim/modules/_typography.scss +20 -31
  20. data/app/assets/stylesheets/decidim/utils/_fontface.scss +4 -16
  21. data/app/assets/stylesheets/decidim/utils/_settings.scss +29 -26
  22. data/app/assets/stylesheets/decidim/utils/_variables.scss +22 -0
  23. data/app/commands/decidim/authorize_user.rb +17 -1
  24. data/app/commands/decidim/create_omniauth_registration.rb +92 -0
  25. data/app/commands/decidim/create_registration.rb +50 -0
  26. data/app/commands/decidim/invite_user.rb +50 -0
  27. data/app/commands/decidim/invite_user_again.rb +25 -0
  28. data/app/commands/decidim/remove_user_role.rb +26 -0
  29. data/app/controllers/concerns/decidim/feature_settings.rb +27 -0
  30. data/app/controllers/concerns/decidim/filter_resource.rb +71 -0
  31. data/app/controllers/concerns/decidim/form_factory.rb +21 -18
  32. data/app/controllers/concerns/decidim/needs_participatory_process.rb +2 -3
  33. data/app/controllers/decidim/devise/confirmations_controller.rb +2 -0
  34. data/app/controllers/decidim/devise/invitations_controller.rb +4 -0
  35. data/app/controllers/decidim/devise/omniauth_registrations_controller.rb +96 -0
  36. data/app/controllers/decidim/devise/passwords_controller.rb +2 -0
  37. data/app/controllers/decidim/devise/registrations_controller.rb +34 -0
  38. data/app/controllers/decidim/devise/sessions_controller.rb +1 -0
  39. data/app/controllers/decidim/pages_controller.rb +10 -2
  40. data/app/controllers/decidim/participatory_process_steps_controller.rb +16 -0
  41. data/app/controllers/decidim/participatory_processes_controller.rb +6 -11
  42. data/app/forms/decidim/form.rb +6 -6
  43. data/app/forms/decidim/invite_admin_form.rb +37 -0
  44. data/app/forms/decidim/omniauth_registration_form.rb +24 -0
  45. data/app/forms/decidim/registration_form.rb +41 -0
  46. data/app/helpers/decidim/filters_helper.rb +21 -0
  47. data/app/helpers/decidim/layout_helper.rb +17 -1
  48. data/app/helpers/decidim/omniauth_helper.rb +23 -0
  49. data/app/helpers/decidim/paginate_helper.rb +21 -0
  50. data/app/helpers/decidim/participatory_process_helper.rb +14 -0
  51. data/app/helpers/decidim/participatory_process_steps_helper.rb +17 -0
  52. data/app/mailers/decidim/decidim_devise_mailer.rb +2 -2
  53. data/app/models/decidim/feature.rb +40 -0
  54. data/app/models/decidim/identity.rb +12 -0
  55. data/app/models/decidim/organization.rb +3 -10
  56. data/app/models/decidim/user.rb +3 -1
  57. data/app/models/decidim/user_group.rb +18 -0
  58. data/app/models/decidim/user_group_membership.rb +9 -0
  59. data/app/services/decidim/authorization_handler.rb +13 -13
  60. data/app/services/decidim/resource_search.rb +52 -0
  61. data/app/uploaders/decidim/organization_logo_uploader.rb +1 -1
  62. data/app/views/decidim/authorizations/new.html.erb +3 -1
  63. data/app/views/decidim/devise/omniauth_registrations/new.html.erb +40 -0
  64. data/app/views/decidim/devise/registrations/new.html.erb +21 -1
  65. data/app/views/decidim/devise/sessions/new.html.erb +1 -0
  66. data/app/views/decidim/devise/shared/_links.html.erb +0 -8
  67. data/app/views/decidim/devise/shared/_omniauth_buttons.html.erb +21 -0
  68. data/app/views/decidim/participatory_process_steps/_participatory_process_step.html.erb +16 -0
  69. data/app/views/decidim/participatory_process_steps/_timeline.html.erb +7 -0
  70. data/app/views/decidim/participatory_process_steps/index.html.erb +12 -0
  71. data/app/views/decidim/participatory_processes/show.html.erb +5 -5
  72. data/app/views/decidim/shared/_login_modal.html.erb +30 -0
  73. data/app/views/devise/mailer/invite_admin.html.erb +17 -0
  74. data/app/views/devise/mailer/invite_admin.text.erb +15 -0
  75. data/app/views/devise/mailer/organization_admin_invitation_instructions.html.erb +1 -1
  76. data/app/views/devise/mailer/organization_admin_invitation_instructions.text.erb +1 -1
  77. data/app/views/layouts/decidim/_application.html.erb +1 -0
  78. data/app/views/layouts/decidim/_header.html.erb +1 -1
  79. data/app/views/layouts/decidim/_meta.html.erb +1 -0
  80. data/app/views/layouts/decidim/_process_header.html.erb +12 -1
  81. data/app/views/layouts/decidim/_process_header_steps.html.erb +1 -0
  82. data/app/views/layouts/decidim/_social_meta.html.erb +11 -0
  83. data/app/views/layouts/decidim/participatory_process.html.erb +4 -0
  84. data/app/views/pages/home.html.erb +29 -2
  85. data/config/i18n-tasks.yml +1 -0
  86. data/config/initializers/devise.rb +10 -1
  87. data/config/locales/ca.yml +45 -3
  88. data/config/locales/en.yml +45 -3
  89. data/config/locales/es.yml +45 -3
  90. data/config/routes.rb +9 -2
  91. data/config/secrets.yml +36 -0
  92. data/db/migrate/20170110133113_add_configuration_to_features.rb +7 -0
  93. data/db/migrate/20170110153807_add_handler_to_organization.rb +5 -0
  94. data/db/migrate/20170116110851_create_identities.rb +11 -0
  95. data/db/migrate/20170116135237_loosen_step_requirements.rb +6 -0
  96. data/db/migrate/20170117142904_add_uniqueness_field_to_authorizations.rb +7 -0
  97. data/db/migrate/20170119145359_create_user_groups.rb +11 -0
  98. data/db/migrate/20170119150255_create_user_group_memberships.rb +12 -0
  99. data/db/migrate/20170119150649_add_show_statistics_to_organization.rb +5 -0
  100. data/db/migrate/20170120120733_add_user_groups_verified.rb +5 -0
  101. data/db/seeds.rb +45 -79
  102. data/lib/decidim/core.rb +8 -0
  103. data/lib/decidim/core/engine.rb +8 -0
  104. data/lib/decidim/core/test/factories.rb +188 -0
  105. data/lib/decidim/core/version.rb +1 -1
  106. data/lib/decidim/devise_failure_app.rb +1 -0
  107. data/lib/decidim/feature_manifest.rb +27 -0
  108. data/lib/decidim/features/base_controller.rb +8 -3
  109. data/lib/decidim/features/settings_manifest.rb +94 -0
  110. data/lib/decidim/filter_form_builder.rb +56 -0
  111. data/lib/decidim/form_builder.rb +4 -7
  112. data/vendor/assets/javascripts/svg-injector.js +464 -0
  113. metadata +142 -26
  114. data/app/assets/stylesheets/decidim/modules/_owl-carousel.scss +0 -72
  115. data/app/assets/stylesheets/decidim/modules/_phase-nav.scss +0 -177
  116. data/app/assets/stylesheets/decidim/utils/_helpers.sass +0 -21
  117. data/app/assets/stylesheets/decidim/utils/_keyframes.sass +0 -13
  118. data/app/assets/stylesheets/decidim/utils/_mixins.sass +0 -33
@@ -1,5 +1,11 @@
1
1
  ---
2
2
  en:
3
+ activemodel:
4
+ attributes:
5
+ user:
6
+ user_group_document_number: Organization document number
7
+ user_group_name: Organization name
8
+ user_group_phone: Organization phone
3
9
  activerecord:
4
10
  attributes:
5
11
  decidim/user:
@@ -27,6 +33,8 @@ en:
27
33
  title: My account
28
34
  authorization_handlers:
29
35
  decidim/dummy_authorization_handler: Example authorization
36
+ errors:
37
+ duplicate_authorization: A user is already authorized with the same data.
30
38
  authorizations:
31
39
  create:
32
40
  error: There was an error creating the authorization.
@@ -47,11 +55,22 @@ en:
47
55
  actions:
48
56
  unauthorized: You are not authorized to perform this action
49
57
  devise:
58
+ omniauth_registrations:
59
+ create:
60
+ email_already_exists: Another account is using the same email address
61
+ new:
62
+ complete_profile: Complete profile
63
+ sign_up: Complete your profile
64
+ subtitle: Please fill in the following form in order to complete the sign up
50
65
  registrations:
51
66
  new:
52
67
  already_have_an_account?: Already have an account?
53
68
  sign_in: Log in
54
69
  sign_up: Sign up
70
+ sign_up_as:
71
+ legend: Sign up as
72
+ user: Individual
73
+ user_group: Organization/Collective
55
74
  subtitle: Sign up to participate in discussions and support proposals.
56
75
  terms: the terms and conditions of use
57
76
  tos_agreement: By signing up you agree to %{link}.
@@ -60,30 +79,45 @@ en:
60
79
  new:
61
80
  are_you_new?: New to the platform?
62
81
  register: Create an account
82
+ shared:
83
+ omniauth_buttons:
84
+ or: Or
63
85
  menu:
64
86
  home: Home
65
87
  processes: Processes
88
+ participatory_process_steps:
89
+ index:
90
+ process_steps: Process steps
91
+ participatory_process_step:
92
+ info: Information
66
93
  participatory_processes:
67
94
  documents:
68
95
  related_documents: Related documents
69
96
  photos:
70
97
  related_photos: Related photos
98
+ shared:
99
+ login_modal:
100
+ please_sign_in: Please sign in
101
+ sign_up: Sign up
71
102
  devise:
72
103
  mailer:
73
104
  invitation_instructions:
74
105
  accept: Accept invitation
75
106
  accept_until: This invitation will be due in %{due_date}.
76
- hello: Hello %{email}
107
+ hello: Hello %{email},
77
108
  ignore: |-
78
109
  If you don't want to accept the invitation, please ignore this email.<br />
79
110
  Your account won't be created until you access the link above and set your password.
111
+ invited_you_as_admin: "%{invited_by} has invited you as an admin of %{application}, you can accept it through the link below."
80
112
  someone_invited_you: Someone has invited you to %{application}, you can accept it through the link below.
113
+ invite_admin:
114
+ subject: You've been invited to manage %{organization}
81
115
  organization_admin_invitation_instructions:
82
- subject: You've been invited to admin %{organization}
116
+ subject: You've been invited to manage %{organization}
83
117
  password_change:
84
118
  greeting: Hello %{recipient}!
85
119
  message: We're contacting you to notify you that your password has been changed.
86
- subject: Password Changed
120
+ subject: Password changed
87
121
  errors:
88
122
  messages:
89
123
  file_size_is_less_than_or_equal_to: file size must be less than or equal to %{count}
@@ -115,6 +149,10 @@ en:
115
149
  active_step: 'Current step:'
116
150
  more_info: More info
117
151
  take_part: Take part
152
+ process_header:
153
+ process_menu_item: The process
154
+ process_header_steps:
155
+ view_steps: View steps
118
156
  user_menu:
119
157
  profile: My account
120
158
  sign_out: Sign out
@@ -143,6 +181,10 @@ en:
143
181
  proposals_explanation: Open space for citizen proposals about what kind of city we want to live in.
144
182
  register: Register
145
183
  see_all_processes: See all processes
184
+ stats:
185
+ headline: Current state of %{organization}
186
+ processes: Processes
187
+ users: Users
146
188
  welcome: Welcome to %{organization}!
147
189
  views:
148
190
  pagination:
@@ -1,4 +1,10 @@
1
1
  es:
2
+ activemodel:
3
+ attributes:
4
+ user:
5
+ user_group_document_number: Número de documento acreditativo
6
+ user_group_name: Nombre de la Organización
7
+ user_group_phone: Teléfono de la organización
2
8
  activerecord:
3
9
  attributes:
4
10
  decidim/user:
@@ -26,6 +32,8 @@ es:
26
32
  title: Mi cuenta
27
33
  authorization_handlers:
28
34
  decidim/dummy_authorization_handler: Autorización de ejemplo
35
+ errors:
36
+ duplicate_authorization: Un usuario ya está autorizado con los mismos datos.
29
37
  authorizations:
30
38
  create:
31
39
  error: Se ha producido un error al crear la autorización.
@@ -46,11 +54,22 @@ es:
46
54
  actions:
47
55
  unauthorized: No tienes permiso para realizar esta acción.
48
56
  devise:
57
+ omniauth_registrations:
58
+ create:
59
+ email_already_exists: Otra cuenta utiliza la misma dirección de correo electrónico
60
+ new:
61
+ complete_profile: Completar perfil
62
+ sign_up: Complete su perfil
63
+ subtitle: Por favor, rellene el siguiente formulario con el fin de completar la inscripción
49
64
  registrations:
50
65
  new:
51
66
  already_have_an_account?: '¿Ya tienes una cuenta?'
52
67
  sign_in: Entra
53
68
  sign_up: Regístrate
69
+ sign_up_as:
70
+ legend: Inscribirse como
71
+ user: Individual
72
+ user_group: Organización/Colectivo
54
73
  subtitle: Crea una cuenta para poder participar en los debates y apoyar las propuestas.
55
74
  terms: los términos y condiciones de uso
56
75
  tos_agreement: Al registrarte aceptas %{link}.
@@ -59,30 +78,45 @@ es:
59
78
  new:
60
79
  are_you_new?: '¿Eres nuevo en la plataforma?'
61
80
  register: Créate una cuenta
81
+ shared:
82
+ omniauth_buttons:
83
+ or: O
62
84
  menu:
63
85
  home: Inicio
64
86
  processes: Procesos
87
+ participatory_process_steps:
88
+ index:
89
+ process_steps: Las fases de proceso
90
+ participatory_process_step:
91
+ info: Información
65
92
  participatory_processes:
66
93
  documents:
67
94
  related_documents: Documentos relacionados
68
95
  photos:
69
96
  related_photos: Fotos relacionadas
97
+ shared:
98
+ login_modal:
99
+ please_sign_in: Por favor, regístrese
100
+ sign_up: Regístrese
70
101
  devise:
71
102
  mailer:
72
103
  invitation_instructions:
73
104
  accept: Aceptar invitación
74
105
  accept_until: Esta invitación caducará el día %{due_date}.
75
- hello: Hola %{email}
106
+ hello: Hola %{email},
76
107
  ignore: |-
77
108
  Si no quieres aceptar la invitación ignora este correo.<br />
78
109
  Tu cuenta no se creará hasta que accedas al enlance de abajo y escojas tu contraseña.
110
+ invited_you_as_admin: "%{invited_by} te ha invitado como administrador de %{application}, puedes aceptar a través del siguiente enlace."
79
111
  someone_invited_you: Alguien te ha invitado a %{application}, puedes aceptar la invitación con el enlace a continuación.
112
+ invite_admin:
113
+ subject: Has sido invitado para gestionar %{organization}
80
114
  organization_admin_invitation_instructions:
81
- subject: Te han invitado a administrar %{organization}
115
+ subject: Has sido invitado para gestionar %{organization}
82
116
  password_change:
83
117
  greeting: '¡Hola %{recipient}!'
84
118
  message: Nos ponemos en contacto contigo para notificarte que tu contraseña ha sido cambiada correctamente.
85
- subject: Contraseña cambiada
119
+ subject: Contraseña modificada
86
120
  errors:
87
121
  messages:
88
122
  file_size_is_less_than_or_equal_to: el tamaño del archivo debe ser menor que o igual a %{count}
@@ -114,6 +148,10 @@ es:
114
148
  active_step: 'Fase actual:'
115
149
  more_info: Más información
116
150
  take_part: Participa
151
+ process_header:
152
+ process_menu_item: El proceso
153
+ process_header_steps:
154
+ view_steps: Ver las fases
117
155
  user_menu:
118
156
  profile: Mi cuenta
119
157
  sign_out: Sal
@@ -142,6 +180,10 @@ es:
142
180
  proposals_explanation: Espacio abierto de propuestas de los ciudadanos sobre en qué tipo de ciudad queremos vivir.
143
181
  register: Regístrate
144
182
  see_all_processes: Ver todos los procesos
183
+ stats:
184
+ headline: Estado actual de %{organization}
185
+ processes: Procesos
186
+ users: Usuarios
145
187
  welcome: Bienvenido/da %{organization}!
146
188
  views:
147
189
  pagination:
@@ -11,11 +11,18 @@ Decidim::Core::Engine.routes.draw do
11
11
  sessions: "decidim/devise/sessions",
12
12
  confirmations: "decidim/devise/confirmations",
13
13
  registrations: "decidim/devise/registrations",
14
- passwords: "decidim/devise/passwords"
14
+ passwords: "decidim/devise/passwords",
15
+ omniauth_callbacks: "decidim/devise/omniauth_registrations"
15
16
  }
16
17
 
18
+ devise_scope :user do
19
+ post "omniauth_registrations" => "devise/omniauth_registrations#create"
20
+ end
21
+
17
22
  resource :locale, only: [:create]
18
- resources :participatory_processes, only: [:index, :show]
23
+ resources :participatory_processes, only: [:index, :show] do
24
+ resources :participatory_process_steps, only: [:index]
25
+ end
19
26
 
20
27
  scope "/participatory_processes/:participatory_process_id/features/:feature_id" do
21
28
  Decidim.feature_manifests.each do |manifest|
@@ -0,0 +1,36 @@
1
+ # Be sure to restart your server when you modify this file.
2
+
3
+ # Your secret key is used for verifying the integrity of signed cookies.
4
+ # If you change this key, all old signed cookies will become invalid!
5
+
6
+ # Make sure the secret is at least 30 characters and all random,
7
+ # no regular words or you'll be exposed to dictionary attacks.
8
+ # You can use `rails secret` to generate a secure secret key.
9
+
10
+ # Make sure the secrets in this file are kept private
11
+ # if you're sharing your code publicly.
12
+
13
+ default: &default
14
+ omniauth:
15
+ facebook:
16
+ enabled: true
17
+ app_id: <%= ENV["OMNIAUTH_FACEBOOK_APP_ID"] %>
18
+ app_secret: <%= ENV["OMNIAUTH_FACEBOOK_APP_SECRET"] %>
19
+ twitter:
20
+ enabled: true
21
+ api_key: <%= ENV["OMNIAUTH_TWITTER_API_KEY"] %>
22
+ api_secret: <%= ENV["OMNIAUTH_TWITTER_API_SECRET"] %>
23
+
24
+ development:
25
+ <<: *default
26
+ secret_key_base: 40d3a76fcae6d7298712dd2d403a3820cc37e0e82d56f5e26f7aba255a023c801d20e7e1472e1616da61308bcc74f4a2710a94b2382ca2aa21e4b0840767fd08
27
+
28
+ test:
29
+ <<: *default
30
+ secret_key_base: 0d21437a814053102ecc4c8905ec8eb990c86b65c8ecfdddbadfdb3c75fe0fd3ab88368896237b0984694f9a7bc747e9d92642e01caab31942abb4ce94b5ff1a
31
+
32
+ # Do not keep production secrets in the repository,
33
+ # instead read values from the environment.
34
+ production:
35
+ <<: *default
36
+ secret_key_base: <%= ENV["SECRET_KEY_BASE"] %>
@@ -0,0 +1,7 @@
1
+ class AddConfigurationToFeatures < ActiveRecord::Migration[5.0]
2
+ def change
3
+ change_table :decidim_features do |t|
4
+ t.jsonb :settings, default: {}
5
+ end
6
+ end
7
+ end
@@ -0,0 +1,5 @@
1
+ class AddHandlerToOrganization < ActiveRecord::Migration[5.0]
2
+ def change
3
+ add_column :decidim_organizations, :twitter_handler, :string
4
+ end
5
+ end
@@ -0,0 +1,11 @@
1
+ class CreateIdentities < ActiveRecord::Migration[5.0]
2
+ def change
3
+ create_table :decidim_identities do |t|
4
+ t.string :provider, null: false
5
+ t.string :uid, null: false
6
+ t.references :decidim_user, null: false, index: true
7
+ end
8
+
9
+ add_index :decidim_identities, [:provider, :uid], unique: true
10
+ end
11
+ end
@@ -0,0 +1,6 @@
1
+ class LoosenStepRequirements < ActiveRecord::Migration[5.0]
2
+ def change
3
+ change_column_null(:decidim_participatory_process_steps, :short_description, true)
4
+ change_column_null(:decidim_participatory_process_steps, :description, true)
5
+ end
6
+ end
@@ -0,0 +1,7 @@
1
+ class AddUniquenessFieldToAuthorizations < ActiveRecord::Migration[5.0]
2
+ def change
3
+ change_table :decidim_authorizations do |t|
4
+ t.string :unique_id, null: true
5
+ end
6
+ end
7
+ end
@@ -0,0 +1,11 @@
1
+ class CreateUserGroups < ActiveRecord::Migration[5.0]
2
+ def change
3
+ create_table :decidim_user_groups do |t|
4
+ t.string :name, null: false
5
+ t.string :document_number, null: false
6
+ t.string :phone, null: false
7
+
8
+ t.timestamps
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,12 @@
1
+ class CreateUserGroupMemberships < ActiveRecord::Migration[5.0]
2
+ def change
3
+ create_table :decidim_user_group_memberships do |t|
4
+ t.references :decidim_user, null: false, index: true
5
+ t.references :decidim_user_group, null: false, index: true
6
+
7
+ t.timestamps
8
+ end
9
+
10
+ add_index :decidim_user_group_memberships, [:decidim_user_id, :decidim_user_group_id], unique: true, name: "decidim_user_group_memberships_unique_user_and_group_ids"
11
+ end
12
+ end
@@ -0,0 +1,5 @@
1
+ class AddShowStatisticsToOrganization < ActiveRecord::Migration[5.0]
2
+ def change
3
+ add_column :decidim_organizations, :show_statistics, :boolean, default: true
4
+ end
5
+ end
@@ -0,0 +1,5 @@
1
+ class AddUserGroupsVerified < ActiveRecord::Migration[5.0]
2
+ def change
3
+ add_column :decidim_user_groups, :verified, :boolean, default: false
4
+ end
5
+ end
@@ -2,8 +2,9 @@
2
2
  if !Rails.env.production? || ENV["SEED"]
3
3
  require "decidim/faker/localized"
4
4
 
5
- staging_organization = Decidim::Organization.create!(
5
+ organization = Decidim::Organization.create!(
6
6
  name: Faker::Company.name,
7
+ twitter_handler: Faker::Hipster.word,
7
8
  host: ENV["DECIDIM_HOST"] || "localhost",
8
9
  welcome_text: Decidim::Faker::Localized.sentence(5),
9
10
  description: Decidim::Faker::Localized.wrapped("<p>", "</p>") do
@@ -14,12 +15,19 @@ if !Rails.env.production? || ENV["SEED"]
14
15
  available_locales: Decidim.available_locales
15
16
  )
16
17
 
18
+ 3.times.each do |index|
19
+ Decidim::Scope.create!(
20
+ name: Faker::Address.unique.state,
21
+ organization: organization
22
+ )
23
+ end
24
+
17
25
  Decidim::User.create!(
18
26
  name: Faker::Name.name,
19
27
  email: "admin@decidim.org",
20
28
  password: "decidim123456",
21
29
  password_confirmation: "decidim123456",
22
- organization: staging_organization,
30
+ organization: organization,
23
31
  confirmed_at: Time.current,
24
32
  locale: I18n.default_locale,
25
33
  roles: ["admin"],
@@ -33,87 +41,45 @@ if !Rails.env.production? || ENV["SEED"]
33
41
  password_confirmation: "decidim123456",
34
42
  confirmed_at: Time.current,
35
43
  locale: I18n.default_locale,
36
- organization: staging_organization,
44
+ organization: organization,
37
45
  tos_agreement: true
38
46
  )
39
47
 
40
- participatory_process1 = Decidim::ParticipatoryProcess.create!(
41
- title: Decidim::Faker::Localized.sentence(5),
42
- slug: Faker::Internet.slug(nil, "-"),
43
- subtitle: Decidim::Faker::Localized.sentence(2),
44
- hashtag: "##{Faker::Lorem.word}",
45
- short_description: Decidim::Faker::Localized.wrapped("<p>", "</p>") do
46
- Decidim::Faker::Localized.sentence(3)
47
- end,
48
- description: Decidim::Faker::Localized.wrapped("<p>", "</p>") do
49
- Decidim::Faker::Localized.paragraph(3)
50
- end,
51
- hero_image: File.new(File.join(File.dirname(__FILE__), "seeds", "city.jpeg")),
52
- banner_image: File.new(File.join(File.dirname(__FILE__), "seeds", "city2.jpeg")),
53
- promoted: true,
54
- published_at: 2.weeks.ago,
55
- organization: staging_organization
56
- )
57
-
58
- Decidim::ParticipatoryProcess.create!(
59
- title: Decidim::Faker::Localized.sentence(5),
60
- slug: Faker::Internet.slug(nil, "-"),
61
- subtitle: Decidim::Faker::Localized.sentence(2),
62
- hashtag: "##{Faker::Lorem.word}",
63
- short_description: Decidim::Faker::Localized.wrapped("<p>", "</p>") do
64
- Decidim::Faker::Localized.sentence(3)
65
- end,
66
- description: Decidim::Faker::Localized.wrapped("<p>", "</p>") do
67
- Decidim::Faker::Localized.paragraph(3)
68
- end,
69
- hero_image: File.new(File.join(File.dirname(__FILE__), "seeds", "city2.jpeg")),
70
- banner_image: File.new(File.join(File.dirname(__FILE__), "seeds", "city3.jpeg")),
71
- published_at: 1.week.ago,
72
- organization: staging_organization
73
- )
74
-
75
- Decidim::ParticipatoryProcess.create!(
76
- title: Decidim::Faker::Localized.sentence(5),
77
- slug: Faker::Internet.slug(nil, "-"),
78
- subtitle: Decidim::Faker::Localized.sentence(2),
79
- hashtag: "##{Faker::Lorem.word}",
80
- short_description: Decidim::Faker::Localized.wrapped("<p>", "</p>") do
81
- Decidim::Faker::Localized.sentence(3)
82
- end,
83
- description: Decidim::Faker::Localized.wrapped("<p>", "</p>") do
84
- Decidim::Faker::Localized.paragraph(3)
85
- end,
86
- hero_image: File.new(File.join(File.dirname(__FILE__), "seeds", "city3.jpeg")),
87
- banner_image: File.new(File.join(File.dirname(__FILE__), "seeds", "city2.jpeg")),
88
- organization: staging_organization
89
- )
90
-
91
- Decidim::ParticipatoryProcessStep.create!(
92
- title: Decidim::Faker::Localized.sentence(5),
93
- short_description: Decidim::Faker::Localized.wrapped("<p>", "</p>") do
94
- Decidim::Faker::Localized.sentence(3)
95
- end,
96
- description: Decidim::Faker::Localized.wrapped("<p>", "</p>") do
97
- Decidim::Faker::Localized.paragraph(3)
98
- end,
99
- active: true,
100
- start_date: 1.month.ago.at_midnight,
101
- end_date: 2.months.from_now.at_midnight,
102
- participatory_process: participatory_process1
103
- )
48
+ 3.times do
49
+ Decidim::ParticipatoryProcess.create!(
50
+ title: Decidim::Faker::Localized.sentence(5),
51
+ slug: Faker::Internet.unique.slug(nil, "-"),
52
+ subtitle: Decidim::Faker::Localized.sentence(2),
53
+ hashtag: "##{Faker::Lorem.word}",
54
+ short_description: Decidim::Faker::Localized.wrapped("<p>", "</p>") do
55
+ Decidim::Faker::Localized.sentence(3)
56
+ end,
57
+ description: Decidim::Faker::Localized.wrapped("<p>", "</p>") do
58
+ Decidim::Faker::Localized.paragraph(3)
59
+ end,
60
+ hero_image: File.new(File.join(File.dirname(__FILE__), "seeds", "city.jpeg")),
61
+ banner_image: File.new(File.join(File.dirname(__FILE__), "seeds", "city2.jpeg")),
62
+ promoted: true,
63
+ published_at: 2.weeks.ago,
64
+ organization: organization
65
+ )
66
+ end
104
67
 
105
- Decidim::ParticipatoryProcessStep.create!(
106
- title: Decidim::Faker::Localized.sentence(5),
107
- short_description: Decidim::Faker::Localized.wrapped("<p>", "</p>") do
108
- Decidim::Faker::Localized.sentence(3)
109
- end,
110
- description: Decidim::Faker::Localized.wrapped("<p>", "</p>") do
111
- Decidim::Faker::Localized.paragraph(3)
112
- end,
113
- start_date: 2.months.from_now.at_midnight,
114
- end_date: 3.months.from_now.at_midnight,
115
- participatory_process: participatory_process1
116
- )
68
+ Decidim::ParticipatoryProcess.find_each do |process|
69
+ Decidim::ParticipatoryProcessStep.create!(
70
+ title: Decidim::Faker::Localized.sentence(5),
71
+ short_description: Decidim::Faker::Localized.wrapped("<p>", "</p>") do
72
+ Decidim::Faker::Localized.sentence(3)
73
+ end,
74
+ description: Decidim::Faker::Localized.wrapped("<p>", "</p>") do
75
+ Decidim::Faker::Localized.paragraph(3)
76
+ end,
77
+ active: true,
78
+ start_date: 1.month.ago.at_midnight,
79
+ end_date: 2.months.from_now.at_midnight,
80
+ participatory_process: process
81
+ )
82
+ end
117
83
 
118
84
  Decidim::ParticipatoryProcess.find_each do |process|
119
85
  Decidim::ParticipatoryProcessAttachment.create!(