decidim 0.0.6 → 0.0.7

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of decidim might be problematic. Click here for more details.

Files changed (308) hide show
  1. checksums.yaml +4 -4
  2. data/.babelrc +2 -1
  3. data/.ruby-version +1 -1
  4. data/.travis.yml +4 -6
  5. data/Dockerfile +2 -2
  6. data/Gemfile +1 -1
  7. data/Gemfile.lock +48 -48
  8. data/README.md +6 -1
  9. data/decidim-admin/app/assets/stylesheets/decidim/admin/_decidim.scss +9 -0
  10. data/decidim-admin/app/assets/stylesheets/decidim/admin/_variables.scss +7 -0
  11. data/decidim-admin/app/assets/stylesheets/decidim/admin/application.scss +2 -19
  12. data/decidim-admin/app/assets/stylesheets/decidim/admin/extra/_categories.scss +5 -0
  13. data/decidim-admin/app/assets/stylesheets/decidim/admin/{_email_preview.scss → extra/_email_preview.scss} +0 -0
  14. data/decidim-admin/app/assets/stylesheets/decidim/admin/{_login.scss → extra/_login.scss} +0 -0
  15. data/decidim-admin/app/assets/stylesheets/decidim/admin/extra/_select_multiple.scss +3 -0
  16. data/decidim-admin/app/assets/stylesheets/decidim/admin/extra/_title_bar.scss +5 -0
  17. data/decidim-admin/app/assets/stylesheets/decidim/admin/modules/_action-icon.scss +13 -0
  18. data/decidim-admin/app/assets/stylesheets/decidim/admin/modules/_buttons.scss +44 -0
  19. data/decidim-admin/app/assets/stylesheets/decidim/admin/modules/_callouts.scss +32 -0
  20. data/decidim-admin/app/assets/stylesheets/decidim/admin/modules/_cards.scss +36 -0
  21. data/decidim-admin/app/assets/stylesheets/decidim/admin/modules/_char-counter.scss +20 -0
  22. data/decidim-admin/app/assets/stylesheets/decidim/admin/modules/_component-counter.scss +17 -0
  23. data/decidim-admin/app/assets/stylesheets/decidim/admin/modules/_forms.scss +80 -0
  24. data/decidim-admin/app/assets/stylesheets/decidim/admin/modules/_icons.scss +65 -0
  25. data/decidim-admin/app/assets/stylesheets/decidim/admin/modules/_layout.scss +67 -0
  26. data/decidim-admin/app/assets/stylesheets/decidim/admin/modules/_main-nav.scss +41 -0
  27. data/decidim-admin/app/assets/stylesheets/decidim/admin/modules/_modules.scss +24 -0
  28. data/decidim-admin/app/assets/stylesheets/decidim/admin/modules/_process-header.scss +11 -0
  29. data/decidim-admin/app/assets/stylesheets/decidim/admin/modules/_secondary-nav.scss +95 -0
  30. data/decidim-admin/app/assets/stylesheets/decidim/admin/modules/_table-list.scss +78 -0
  31. data/decidim-admin/app/assets/stylesheets/decidim/admin/modules/_tabs.scss +49 -0
  32. data/decidim-admin/app/assets/stylesheets/decidim/admin/modules/_title-bar.scss +32 -0
  33. data/decidim-admin/app/assets/stylesheets/decidim/admin/modules/_typography.scss +15 -0
  34. data/decidim-admin/app/assets/stylesheets/decidim/admin/modules/_user-login.scss +23 -0
  35. data/decidim-admin/app/assets/stylesheets/decidim/admin/utils/_fontface.scss +27 -0
  36. data/decidim-admin/app/assets/stylesheets/decidim/admin/utils/_helpers.scss +25 -0
  37. data/decidim-admin/app/assets/stylesheets/decidim/admin/utils/_keyframes.scss +21 -0
  38. data/decidim-admin/app/assets/stylesheets/decidim/admin/utils/_mixins.scss +20 -0
  39. data/decidim-admin/app/assets/stylesheets/decidim/admin/utils/_settings.scss +590 -0
  40. data/decidim-admin/app/assets/stylesheets/decidim/admin/utils/_toggle-expand.scss +8 -0
  41. data/decidim-admin/app/commands/decidim/admin/create_attachment.rb +13 -4
  42. data/decidim-admin/app/commands/decidim/admin/update_participatory_process.rb +3 -3
  43. data/decidim-admin/app/commands/decidim/admin/update_participatory_process_admin.rb +40 -0
  44. data/decidim-admin/app/controllers/decidim/admin/application_controller.rb +7 -1
  45. data/decidim-admin/app/controllers/decidim/admin/newsletters_controller.rb +1 -1
  46. data/decidim-admin/app/controllers/decidim/admin/organization_controller.rb +2 -0
  47. data/decidim-admin/app/controllers/decidim/admin/participatory_process_user_roles_controller.rb +29 -0
  48. data/decidim-admin/app/controllers/decidim/admin/participatory_processes_controller.rb +2 -2
  49. data/decidim-admin/app/controllers/decidim/admin/scopes_controller.rb +2 -0
  50. data/decidim-admin/app/controllers/decidim/admin/static_pages_controller.rb +2 -0
  51. data/decidim-admin/app/controllers/decidim/admin/user_groups_controller.rb +3 -1
  52. data/decidim-admin/app/controllers/decidim/admin/users_controller.rb +1 -1
  53. data/decidim-admin/app/helpers/decidim/admin/application_helper.rb +8 -0
  54. data/decidim-admin/app/helpers/decidim/admin/icon_link_helper.rb +30 -0
  55. data/decidim-admin/app/jobs/decidim/admin/newsletter_job.rb +1 -1
  56. data/decidim-admin/app/queries/decidim/admin/process_admin_roles_for_process.rb +1 -1
  57. data/decidim-admin/app/views/decidim/admin/attachments/_form.html.erb +29 -8
  58. data/decidim-admin/app/views/decidim/admin/attachments/edit.html.erb +3 -5
  59. data/decidim-admin/app/views/decidim/admin/attachments/index.html.erb +45 -35
  60. data/decidim-admin/app/views/decidim/admin/attachments/new.html.erb +3 -5
  61. data/decidim-admin/app/views/decidim/admin/categories/_form.html.erb +18 -10
  62. data/decidim-admin/app/views/decidim/admin/categories/edit.html.erb +3 -5
  63. data/decidim-admin/app/views/decidim/admin/categories/index.html.erb +57 -42
  64. data/decidim-admin/app/views/decidim/admin/categories/new.html.erb +3 -5
  65. data/decidim-admin/app/views/decidim/admin/dashboard/show.html.erb +6 -3
  66. data/decidim-admin/app/views/decidim/admin/features/_feature.html.erb +11 -11
  67. data/decidim-admin/app/views/decidim/admin/features/_form.html.erb +56 -48
  68. data/decidim-admin/app/views/decidim/admin/features/edit.html.erb +3 -5
  69. data/decidim-admin/app/views/decidim/admin/features/index.html.erb +21 -19
  70. data/decidim-admin/app/views/decidim/admin/features/new.html.erb +3 -4
  71. data/decidim-admin/app/views/decidim/admin/moderations/index.html.erb +71 -61
  72. data/decidim-admin/app/views/decidim/admin/newsletters/_form.html.erb +7 -1
  73. data/decidim-admin/app/views/decidim/admin/newsletters/edit.html.erb +10 -8
  74. data/decidim-admin/app/views/decidim/admin/newsletters/index.html.erb +50 -43
  75. data/decidim-admin/app/views/decidim/admin/newsletters/new.html.erb +10 -8
  76. data/decidim-admin/app/views/decidim/admin/newsletters/show.html.erb +20 -12
  77. data/decidim-admin/app/views/decidim/admin/organization/_form.html.erb +98 -62
  78. data/decidim-admin/app/views/decidim/admin/organization/edit.html.erb +11 -8
  79. data/decidim-admin/app/views/decidim/admin/participatory_process_groups/_form.html.erb +4 -4
  80. data/decidim-admin/app/views/decidim/admin/participatory_process_groups/edit.html.erb +15 -9
  81. data/decidim-admin/app/views/decidim/admin/participatory_process_groups/index.html.erb +37 -35
  82. data/decidim-admin/app/views/decidim/admin/participatory_process_groups/new.html.erb +10 -8
  83. data/decidim-admin/app/views/decidim/admin/participatory_process_steps/_form.html.erb +21 -11
  84. data/decidim-admin/app/views/decidim/admin/participatory_process_steps/edit.html.erb +3 -4
  85. data/decidim-admin/app/views/decidim/admin/participatory_process_steps/index.html.erb +60 -51
  86. data/decidim-admin/app/views/decidim/admin/participatory_process_steps/new.html.erb +4 -5
  87. data/decidim-admin/app/views/decidim/admin/participatory_process_user_roles/_form.html.erb +23 -0
  88. data/decidim-admin/app/views/decidim/admin/participatory_process_user_roles/edit.html.erb +7 -0
  89. data/decidim-admin/app/views/decidim/admin/participatory_process_user_roles/index.html.erb +46 -34
  90. data/decidim-admin/app/views/decidim/admin/participatory_process_user_roles/new.html.erb +7 -0
  91. data/decidim-admin/app/views/decidim/admin/participatory_processes/_form.html.erb +103 -72
  92. data/decidim-admin/app/views/decidim/admin/participatory_processes/edit.html.erb +15 -17
  93. data/decidim-admin/app/views/decidim/admin/participatory_processes/index.html.erb +52 -43
  94. data/decidim-admin/app/views/decidim/admin/participatory_processes/new.html.erb +6 -5
  95. data/decidim-admin/app/views/decidim/admin/scopes/edit.html.erb +9 -7
  96. data/decidim-admin/app/views/decidim/admin/scopes/index.html.erb +37 -36
  97. data/decidim-admin/app/views/decidim/admin/scopes/new.html.erb +9 -6
  98. data/decidim-admin/app/views/decidim/admin/static_pages/_form.html.erb +3 -3
  99. data/decidim-admin/app/views/decidim/admin/static_pages/edit.html.erb +10 -8
  100. data/decidim-admin/app/views/decidim/admin/static_pages/index.html.erb +38 -37
  101. data/decidim-admin/app/views/decidim/admin/static_pages/new.html.erb +10 -8
  102. data/decidim-admin/app/views/decidim/admin/user_groups/index.html.erb +37 -31
  103. data/decidim-admin/app/views/decidim/admin/users/_form.html.erb +5 -4
  104. data/decidim-admin/app/views/decidim/admin/users/index.html.erb +57 -52
  105. data/decidim-admin/app/views/decidim/admin/users/new.html.erb +10 -7
  106. data/decidim-admin/app/views/layouts/decidim/admin/_application.html.erb +23 -36
  107. data/decidim-admin/app/views/layouts/decidim/admin/_callouts_full.html.erb +10 -0
  108. data/decidim-admin/app/views/layouts/decidim/admin/_language_chooser.html.erb +9 -9
  109. data/decidim-admin/app/views/layouts/decidim/admin/_main_nav.html.erb +11 -0
  110. data/decidim-admin/app/views/layouts/decidim/admin/_template_bottom.html.erb +2 -0
  111. data/decidim-admin/app/views/layouts/decidim/admin/_template_top.html.erb +3 -0
  112. data/decidim-admin/app/views/layouts/decidim/admin/_title_bar.html.erb +20 -0
  113. data/decidim-admin/app/views/layouts/decidim/admin/newsletters.erb +14 -0
  114. data/decidim-admin/app/views/layouts/decidim/admin/pages.html.erb +14 -0
  115. data/decidim-admin/app/views/layouts/decidim/admin/participatory_process.html.erb +55 -53
  116. data/decidim-admin/app/views/layouts/decidim/admin/participatory_process_groups.html.erb +14 -0
  117. data/decidim-admin/app/views/layouts/decidim/admin/participatory_processes.html.erb +14 -0
  118. data/decidim-admin/app/views/layouts/decidim/admin/settings.html.erb +19 -0
  119. data/decidim-admin/app/views/layouts/decidim/admin/users.html.erb +21 -0
  120. data/decidim-admin/config/i18n-tasks.yml +1 -0
  121. data/decidim-admin/config/locales/ca.yml +77 -22
  122. data/decidim-admin/config/locales/en.yml +75 -20
  123. data/decidim-admin/config/locales/es.yml +77 -22
  124. data/decidim-admin/config/locales/eu.yml +191 -16
  125. data/decidim-admin/config/locales/fi.yml +0 -29
  126. data/decidim-admin/config/routes.rb +1 -1
  127. data/decidim-admin/lib/decidim/admin/test/manage_attachments_examples.rb +11 -11
  128. data/decidim-admin/spec/commands/deliver_newsletter_spec.rb +4 -1
  129. data/decidim-admin/spec/commands/update_participatory_process_spec.rb +117 -0
  130. data/decidim-admin/spec/features/admin_invite_spec.rb +5 -1
  131. data/decidim-admin/spec/features/admin_manages_feature_permissions_spec.rb +1 -1
  132. data/decidim-admin/spec/features/admin_manages_features_spec.rb +10 -10
  133. data/decidim-admin/spec/features/admin_manages_newsletters_spec.rb +11 -9
  134. data/decidim-admin/spec/features/admin_manages_organization_admins_spec.rb +8 -5
  135. data/decidim-admin/spec/features/admin_manages_organization_scopes_spec.rb +7 -6
  136. data/decidim-admin/spec/features/admin_manages_organization_spec.rb +14 -0
  137. data/decidim-admin/spec/features/admin_manages_participatory_process_groups_spec.rb +6 -6
  138. data/decidim-admin/spec/features/admin_manages_participatory_processes_spec.rb +27 -5
  139. data/decidim-admin/spec/features/admin_manages_user_groups_spec.rb +1 -1
  140. data/decidim-admin/spec/features/participatory_process_admin_manages_participatory_process_admins_spec.rb +2 -2
  141. data/decidim-admin/spec/features/static_pages_spec.rb +9 -7
  142. data/decidim-admin/spec/jobs/newsletter_job_spec.rb +2 -0
  143. data/decidim-admin/spec/queries/process_admin_roles_for_process_spec.rb +4 -3
  144. data/decidim-admin/spec/shared/manage_process_admins_examples.rb +31 -8
  145. data/decidim-admin/spec/shared/manage_process_attachments_examples.rb +1 -1
  146. data/decidim-admin/spec/shared/manage_process_categories_examples.rb +11 -26
  147. data/decidim-admin/spec/shared/manage_process_steps_examples.rb +8 -23
  148. data/decidim-admin/spec/shared/manage_processes_examples.rb +5 -33
  149. data/decidim-admin/spec/support/processes_menu_links_helpers.rb +1 -1
  150. data/decidim-admin/yarn.lock +4 -0
  151. data/decidim-api/app/controllers/decidim/api/application_controller.rb +2 -1
  152. data/decidim-budgets/app/controllers/decidim/budgets/admin/projects_controller.rb +1 -1
  153. data/decidim-budgets/app/controllers/decidim/budgets/line_items_controller.rb +21 -15
  154. data/decidim-budgets/app/views/decidim/budgets/admin/projects/_form.html.erb +34 -24
  155. data/decidim-budgets/app/views/decidim/budgets/admin/projects/edit.html.erb +3 -5
  156. data/decidim-budgets/app/views/decidim/budgets/admin/projects/index.html.erb +52 -34
  157. data/decidim-budgets/app/views/decidim/budgets/admin/projects/new.html.erb +4 -5
  158. data/decidim-budgets/app/views/decidim/budgets/projects/_filters.html.erb +1 -1
  159. data/decidim-budgets/config/i18n-tasks.yml +1 -0
  160. data/decidim-budgets/config/locales/ca.yml +5 -0
  161. data/decidim-budgets/config/locales/en.yml +5 -0
  162. data/decidim-budgets/config/locales/es.yml +5 -0
  163. data/decidim-budgets/config/locales/eu.yml +27 -0
  164. data/decidim-budgets/spec/features/orders_spec.rb +22 -0
  165. data/decidim-budgets/spec/shared/manage_attachments_examples.rb +1 -1
  166. data/decidim-budgets/spec/shared/manage_projects_examples.rb +10 -8
  167. data/decidim-comments/README.md +33 -0
  168. data/decidim-comments/app/assets/javascripts/decidim/comments/bundle.js +0 -0
  169. data/decidim-comments/app/assets/javascripts/decidim/comments/comments.js.erb +2 -0
  170. data/decidim-comments/app/frontend/application/{apollo_client.js → apollo_client.ts} +5 -5
  171. data/decidim-comments/app/frontend/application/application.component.test.tsx +36 -0
  172. data/decidim-comments/app/frontend/application/application.component.tsx +37 -0
  173. data/decidim-comments/app/frontend/application/icon.component.test.tsx +49 -0
  174. data/decidim-comments/app/frontend/application/icon.component.tsx +35 -0
  175. data/decidim-comments/app/frontend/comments/{add_comment_form.component.test.jsx → add_comment_form.component.test.tsx} +98 -92
  176. data/decidim-comments/app/frontend/comments/{add_comment_form.component.jsx → add_comment_form.component.tsx} +152 -153
  177. data/decidim-comments/app/frontend/comments/{comment.component.test.jsx → comment.component.test.tsx} +59 -71
  178. data/decidim-comments/app/frontend/comments/{comment.component.jsx → comment.component.tsx} +114 -116
  179. data/decidim-comments/app/frontend/comments/comment_order_selector.component.test.tsx +21 -0
  180. data/decidim-comments/app/frontend/comments/comment_order_selector.component.tsx +88 -0
  181. data/decidim-comments/app/frontend/comments/comment_thread.component.test.tsx +65 -0
  182. data/decidim-comments/app/frontend/comments/comment_thread.component.tsx +70 -0
  183. data/decidim-comments/app/frontend/comments/{comments.component.test.jsx → comments.component.test.tsx} +38 -81
  184. data/decidim-comments/app/frontend/comments/{comments.component.jsx → comments.component.tsx} +49 -63
  185. data/decidim-comments/app/frontend/comments/down_vote_button.component.test.tsx +39 -0
  186. data/decidim-comments/app/frontend/comments/down_vote_button.component.tsx +89 -0
  187. data/decidim-comments/app/frontend/comments/up_vote_button.component.test.tsx +39 -0
  188. data/decidim-comments/app/frontend/comments/up_vote_button.component.tsx +89 -0
  189. data/decidim-comments/app/frontend/comments/vote_button.component.tsx +36 -0
  190. data/decidim-comments/app/frontend/comments/{vote_button_component.test.jsx → vote_button_component.test.tsx} +16 -20
  191. data/decidim-comments/app/frontend/entry.ts +19 -0
  192. data/decidim-comments/app/frontend/{comments → fragments}/add_comment_form_commentable.fragment.graphql +1 -1
  193. data/decidim-comments/app/frontend/{comments → fragments}/add_comment_form_session.fragment.graphql +1 -1
  194. data/decidim-comments/app/frontend/{comments → fragments}/comment.fragment.graphql +3 -1
  195. data/decidim-comments/app/frontend/{comments → fragments}/comment_data.fragment.graphql +6 -3
  196. data/decidim-comments/app/frontend/{comments → fragments}/comment_thread.fragment.graphql +3 -1
  197. data/decidim-comments/app/frontend/{comments/down_vote.fragment.graphql → fragments/down_vote_button.fragment.graphql} +2 -2
  198. data/decidim-comments/app/frontend/{comments/up_vote.fragment.graphql → fragments/up_vote_button.fragment.graphql} +2 -2
  199. data/decidim-comments/app/frontend/{comments/add_comment_form.mutation.graphql → mutations/add_comment.mutation.graphql} +3 -1
  200. data/decidim-comments/app/frontend/{comments → mutations}/down_vote.mutation.graphql +3 -1
  201. data/decidim-comments/app/frontend/{comments → mutations}/up_vote.mutation.graphql +3 -1
  202. data/decidim-comments/app/frontend/{comments → queries}/comments.query.graphql +4 -1
  203. data/decidim-comments/app/frontend/support/{asset_url.js → asset_url.ts} +1 -1
  204. data/decidim-comments/app/frontend/support/{generate_comments_data.js → generate_comments_data.ts} +11 -6
  205. data/decidim-comments/app/frontend/support/{generate_user_data.js → generate_user_data.ts} +2 -2
  206. data/decidim-comments/app/frontend/support/{generate_user_group_data.js → generate_user_group_data.ts} +2 -2
  207. data/decidim-comments/app/frontend/support/graphql_transformer.js +32 -0
  208. data/decidim-comments/app/frontend/support/load_translations.ts +44 -0
  209. data/decidim-comments/app/frontend/support/{require_all.js → require_all.ts} +1 -1
  210. data/decidim-comments/app/frontend/support/{resolve_graphql_query.js → resolve_graphql_query.ts} +7 -7
  211. data/decidim-comments/app/frontend/support/schema.ts +119 -0
  212. data/decidim-comments/config/locales/eu.yml +29 -5
  213. data/decidim-dev/Rakefile +2 -0
  214. data/decidim-dev/config/locales/eu.yml +1 -1
  215. data/decidim-dev/decidim-dev.gemspec +1 -1
  216. data/decidim-dev/lib/decidim/dev/test/rspec_support/capybara.rb +1 -4
  217. data/decidim-dev/lib/decidim/dev/test/rspec_support/feature.rb +1 -0
  218. data/decidim-dev/lib/decidim/dev/test/rspec_support/helpers.rb +1 -1
  219. data/decidim-dev/lib/decidim/dev/test/rspec_support/phantomjs_polyfills/phantomjs-shim.js +215 -0
  220. data/decidim-dev/lib/decidim/dev/test/rspec_support/translation_helpers.rb +1 -1
  221. data/decidim-dev/lib/generators/decidim/dummy_generator.rb +5 -0
  222. data/decidim-meetings/app/controllers/decidim/meetings/admin/application_controller.rb +1 -1
  223. data/decidim-meetings/app/views/decidim/meetings/admin/meeting_closes/_form.html.erb +30 -19
  224. data/decidim-meetings/app/views/decidim/meetings/admin/meeting_closes/edit.html.erb +3 -5
  225. data/decidim-meetings/app/views/decidim/meetings/admin/meetings/_form.html.erb +46 -35
  226. data/decidim-meetings/app/views/decidim/meetings/admin/meetings/edit.html.erb +5 -6
  227. data/decidim-meetings/app/views/decidim/meetings/admin/meetings/index.html.erb +72 -51
  228. data/decidim-meetings/app/views/decidim/meetings/admin/meetings/new.html.erb +4 -6
  229. data/decidim-meetings/app/views/decidim/meetings/meetings/_filters.html.erb +1 -1
  230. data/decidim-meetings/config/locales/ca.yml +2 -1
  231. data/decidim-meetings/config/locales/en.yml +2 -1
  232. data/decidim-meetings/config/locales/es.yml +2 -1
  233. data/decidim-meetings/config/locales/eu.yml +25 -5
  234. data/decidim-meetings/config/locales/fi.yml +0 -1
  235. data/decidim-meetings/spec/shared/manage_attachments_examples.rb +1 -1
  236. data/decidim-meetings/spec/shared/manage_meetings_examples.rb +18 -16
  237. data/decidim-pages/app/views/decidim/pages/admin/pages/_form.html.erb +10 -3
  238. data/decidim-pages/app/views/decidim/pages/admin/pages/edit.html.erb +3 -5
  239. data/decidim-pages/config/locales/eu.yml +4 -2
  240. data/decidim-pages/spec/features/admin_spec.rb +1 -1
  241. data/decidim-proposals/app/controllers/decidim/proposals/admin/proposals_controller.rb +1 -1
  242. data/decidim-proposals/app/views/decidim/proposals/admin/proposal_answers/edit.html.erb +14 -8
  243. data/decidim-proposals/app/views/decidim/proposals/admin/proposals/_form.html.erb +28 -20
  244. data/decidim-proposals/app/views/decidim/proposals/admin/proposals/index.html.erb +60 -43
  245. data/decidim-proposals/app/views/decidim/proposals/admin/proposals/new.html.erb +3 -5
  246. data/decidim-proposals/app/views/decidim/proposals/proposals/_filters.html.erb +1 -1
  247. data/decidim-proposals/config/locales/ca.yml +3 -0
  248. data/decidim-proposals/config/locales/en.yml +4 -1
  249. data/decidim-proposals/config/locales/es.yml +3 -0
  250. data/decidim-proposals/config/locales/eu.yml +42 -19
  251. data/decidim-proposals/config/locales/fi.yml +0 -1
  252. data/decidim-proposals/spec/shared/manage_proposals_examples.rb +15 -13
  253. data/decidim-results/README.md +1 -1
  254. data/decidim-results/app/controllers/decidim/results/admin/results_controller.rb +1 -1
  255. data/decidim-results/app/views/decidim/results/admin/results/_form.html.erb +30 -21
  256. data/decidim-results/app/views/decidim/results/admin/results/edit.html.erb +4 -5
  257. data/decidim-results/app/views/decidim/results/admin/results/index.html.erb +40 -25
  258. data/decidim-results/app/views/decidim/results/admin/results/new.html.erb +4 -5
  259. data/decidim-results/app/views/decidim/results/results/_filters.html.erb +1 -1
  260. data/decidim-results/config/locales/ca.yml +2 -0
  261. data/decidim-results/config/locales/en.yml +2 -0
  262. data/decidim-results/config/locales/es.yml +2 -0
  263. data/decidim-results/config/locales/eu.yml +22 -4
  264. data/decidim-results/spec/shared/manage_results_examples.rb +10 -8
  265. data/decidim-system/config/locales/eu.yml +60 -2
  266. data/lib/generators/decidim/app_generator.rb +0 -4
  267. data/lib/generators/decidim/install_generator.rb +0 -4
  268. data/lib/generators/decidim/templates/README.md.erb +18 -18
  269. data/package.json +47 -22
  270. data/tsconfig.json +17 -0
  271. data/tslint.json +12 -0
  272. data/webpack.config.js +8 -6
  273. data/webpack.d.ts +5 -0
  274. data/yarn.lock +1461 -781
  275. metadata +119 -83
  276. data/decidim-admin/app/assets/stylesheets/decidim/admin/_actions.scss +0 -8
  277. data/decidim-admin/app/assets/stylesheets/decidim/admin/_forms.scss +0 -10
  278. data/decidim-admin/app/assets/stylesheets/decidim/admin/_foundation_and_overrides.scss +0 -53
  279. data/decidim-admin/app/assets/stylesheets/decidim/admin/_icons.scss +0 -9
  280. data/decidim-admin/app/assets/stylesheets/decidim/admin/_layout.scss +0 -27
  281. data/decidim-admin/app/assets/stylesheets/decidim/admin/_settings.scss +0 -566
  282. data/decidim-admin/app/assets/stylesheets/decidim/admin/_tables.scss +0 -21
  283. data/decidim-admin/app/views/layouts/decidim/admin/_login_items.html.erb +0 -8
  284. data/decidim-admin/app/views/layouts/decidim/admin/_sidebar.html.erb +0 -22
  285. data/decidim-comments/app/frontend/application/application.component.jsx +0 -37
  286. data/decidim-comments/app/frontend/application/application.component.test.jsx +0 -33
  287. data/decidim-comments/app/frontend/application/icon.component.jsx +0 -26
  288. data/decidim-comments/app/frontend/application/icon.component.test.jsx +0 -53
  289. data/decidim-comments/app/frontend/comments/comment_order_selector.component.jsx +0 -72
  290. data/decidim-comments/app/frontend/comments/comment_order_selector.component.test.jsx +0 -20
  291. data/decidim-comments/app/frontend/comments/comment_thread.component.jsx +0 -75
  292. data/decidim-comments/app/frontend/comments/comment_thread.component.test.jsx +0 -83
  293. data/decidim-comments/app/frontend/comments/down_vote_button.component.jsx +0 -98
  294. data/decidim-comments/app/frontend/comments/down_vote_button.component.test.jsx +0 -48
  295. data/decidim-comments/app/frontend/comments/featured_comment.component.jsx +0 -23
  296. data/decidim-comments/app/frontend/comments/featured_comment.component.test.jsx +0 -15
  297. data/decidim-comments/app/frontend/comments/up_vote_button.component.jsx +0 -98
  298. data/decidim-comments/app/frontend/comments/up_vote_button.component.test.jsx +0 -48
  299. data/decidim-comments/app/frontend/comments/vote_button.component.jsx +0 -32
  300. data/decidim-comments/app/frontend/entry.js +0 -17
  301. data/decidim-comments/app/frontend/entry.test.js +0 -31
  302. data/decidim-comments/app/frontend/support/load_translations.js +0 -23
  303. data/decidim-comments/app/frontend/support/stub_component.js +0 -29
  304. data/decidim-dev/lib/decidim/dev/test/rspec_support/phantomjs_polyfills/bind-polyfill.js +0 -18
  305. data/decidim-dev/lib/decidim/dev/test/rspec_support/phantomjs_polyfills/object-assign-polyfill.js +0 -24
  306. data/karma.conf.js +0 -45
  307. data/lib/generators/decidim/review_app_generator.rb +0 -53
  308. data/lib/generators/decidim/templates/app.json.erb +0 -16
@@ -23,7 +23,7 @@ module TranslationHelpers
23
23
  #
24
24
  # field - the name of the field that should be filled, without the
25
25
  # locale-related part (e.g. `:participatory_process_title`)
26
- # tab_slector - a String representing the ID of the HTML element that holds
26
+ # tab_selector - a String representing the ID of the HTML element that holds
27
27
  # the tabs for this input. It ususally is `"#<attribute_name>-tabs" (e.g.
28
28
  # "#title-tabs")
29
29
  # localized_values - a Hash where the keys are the locales IDs and the values
@@ -58,6 +58,11 @@ module Decidim
58
58
  template "autoprefixer_initializer.rb", "#{dummy_path}/config/initializers/autoprefixer.rb"
59
59
  end
60
60
 
61
+ def test_env
62
+ gsub_file "#{dummy_path}/config/environments/test.rb",
63
+ /allow_forgery_protection = (.*)/, 'allow_forgery_protection = true'
64
+ end
65
+
61
66
  private
62
67
 
63
68
  def dummy_path
@@ -11,7 +11,7 @@ module Decidim
11
11
  helper_method :meetings, :meeting
12
12
 
13
13
  def meetings
14
- @meetings ||= Meeting.where(feature: current_feature)
14
+ @meetings ||= Meeting.where(feature: current_feature).page(params[:page]).per(15)
15
15
  end
16
16
 
17
17
  def meeting
@@ -1,23 +1,34 @@
1
- <div class="field">
2
- <%= form.translated :text_area, :closing_report, autofocus: true, rows: 15 %>
3
- </div>
1
+ <div class="card">
2
+ <div class="card-divider">
3
+ <h2 class="card-title"><%= title %></h2>
4
+ </div>
4
5
 
5
- <div class="field">
6
- <%= form.text_area :attending_organizations, rows: 5 %>
7
- </div>
6
+ <div class="card-section">
7
+ <div class="row column">
8
+ <%= form.translated :text_area, :closing_report, autofocus: true, rows: 15 %>
9
+ </div>
8
10
 
9
- <div class="field">
10
- <%= form.number_field :attendees_count, min: 0 %>
11
- </div>
11
+ <div class="row column">
12
+ <%= form.text_area :attending_organizations, rows: 5 %>
13
+ </div>
12
14
 
13
- <div class="field">
14
- <%= form.number_field :contributions_count, min: 0 %>
15
- </div>
15
+ <div class="row">
16
+ <div class="columns xlarge-6">
17
+ <%= form.number_field :attendees_count, min: 0 %>
18
+ </div>
16
19
 
17
- <% if @form.proposals %>
18
- <%= form.select :proposal_ids,
19
- @form.proposals.order("title ASC").pluck(:title, :id),
20
- { include_blank: true },
21
- { multiple: true, class: "chosen-select" }
22
- %>
23
- <% end %>
20
+ <div class="columns xlarge-6">
21
+ <%= form.number_field :contributions_count, min: 0 %>
22
+ </div>
23
+ </div>
24
+ <div class="row column">
25
+ <% if @form.proposals %>
26
+ <%= form.select :proposal_ids,
27
+ @form.proposals.order("title ASC").pluck(:title, :id),
28
+ { include_blank: true },
29
+ { multiple: true, class: "chosen-select" }
30
+ %>
31
+ <% end %>
32
+ </div>
33
+ </div>
34
+ </div>
@@ -1,9 +1,7 @@
1
- <h3><%= t ".title" %></h3>
1
+ <%= decidim_form_for(@form, url: meeting_meeting_close_path(meeting, @form), html: { class: "form edit_close_meeting" }) do |f| %>
2
+ <%= render partial: 'form', object: f, locals: { title: t('.title') } %>
2
3
 
3
- <%= decidim_form_for(@form, url: meeting_meeting_close_path(meeting, @form)) do |f| %>
4
- <%= render partial: 'form', object: f %>
5
-
6
- <div class="actions">
4
+ <div class="button--double form-general-submit">
7
5
  <%= f.submit t(".close") %>
8
6
  </div>
9
7
  <% end %>
@@ -1,37 +1,48 @@
1
- <div class="field" >
2
- <%= form.translated :text_field, :title, autofocus: true %>
3
- </div>
4
-
5
- <div class="field" >
6
- <%= form.translated :editor, :description %>
7
- </div>
8
-
9
- <div class="field" >
10
- <%= form.text_field :address %>
11
- </div>
12
-
13
- <div class="field" >
14
- <%= form.translated :text_area, :location %>
15
- </div>
16
-
17
- <div class="field" >
18
- <%= form.translated :text_area, :location_hints %>
19
- </div>
20
-
21
- <div class="field" >
22
- <%= form.datetime_field :start_time %>
23
- </div>
24
-
25
- <div class="field" >
26
- <%= form.datetime_field :end_time %>
27
- </div>
28
-
29
- <% if !@form.process_scope %>
30
- <div class="field" >
31
- <%= form.collection_select :decidim_scope_id, organization_scopes, :id, :name %>
1
+ <div class="card">
2
+ <div class="card-divider">
3
+ <h2 class="card-title"><%= title %></h2>
32
4
  </div>
33
- <% end %>
34
5
 
35
- <div class="field" >
36
- <%= form.categories_select :decidim_category_id, current_participatory_process.categories, prompt: "", disable_parents: false %>
37
- </div>
6
+ <div class="card-section">
7
+ <div class="row column" >
8
+ <%= form.translated :text_field, :title, autofocus: true %>
9
+ </div>
10
+
11
+ <div class="row column" >
12
+ <%= form.translated :editor, :description %>
13
+ </div>
14
+
15
+ <div class="row column" >
16
+ <%= form.text_field :address %>
17
+ </div>
18
+
19
+ <div class="row column" >
20
+ <%= form.translated :text_area, :location %>
21
+ </div>
22
+
23
+ <div class="row column" >
24
+ <%= form.translated :text_area, :location_hints %>
25
+ </div>
26
+
27
+ <div class="row" >
28
+ <div class="columns xlarge-6" >
29
+ <%= form.datetime_field :start_time %>
30
+ </div>
31
+
32
+ <div class="columns xlarge-6" >
33
+ <%= form.datetime_field :end_time %>
34
+ </div>
35
+ </div>
36
+ <div class="row" >
37
+ <% if !@form.process_scope %>
38
+ <div class="columns xlarge-6" >
39
+ <%= form.collection_select :decidim_scope_id, organization_scopes, :id, :name %>
40
+ </div>
41
+ <% end %>
42
+
43
+ <div class="columns xlarge-6" >
44
+ <%= form.categories_select :decidim_category_id, current_participatory_process.categories, prompt: "", disable_parents: false %>
45
+ </div>
46
+ </div>
47
+ </div>
48
+ </div>
@@ -1,9 +1,8 @@
1
- <h3><%= t ".title" %></h3>
2
-
3
- <%= decidim_form_for(@form) do |f| %>
1
+ <%= decidim_form_for(@form, html: { class: "form edit_meeting" }) do |f| %>
4
2
  <%= render partial: 'form', object: f %>
5
3
 
6
- <div class="actions">
7
- <%= f.submit t(".update") %>
8
- </div>
4
+ <div class="button--double form-general-submit">
5
+ <%= f.submit t(".update") %>
6
+ </div>
9
7
  <% end %>
8
+
@@ -1,53 +1,74 @@
1
- <h2><%= t(".title") %></h2>
1
+ <div class="card">
2
+ <div class="card-divider">
3
+ <h2 class="card-title">
4
+ <%= t(".title") %>
5
+ <%= link_to t("actions.new", scope: "decidim.meetings", name: t("models.meeting.name", scope: "decidim.meetings.admin")), new_meeting_path, class: 'button tiny button--title' if can? :manage, current_feature %>
6
+ </h2>
7
+ </div>
2
8
 
3
- <div class="actions title">
4
- <%= link_to t("actions.new", scope: "decidim.meetings", name: t("models.meeting.name", scope: "decidim.meetings.admin")), new_meeting_path, class: 'new' if can? :manage, current_feature %>
5
- </div>
9
+ <div class="card-section">
10
+ <div class="table-scroll">
11
+ <table class="table-list">
12
+ <thead>
13
+ <tr>
14
+ <th><%= t("models.meeting.fields.title", scope: "decidim.meetings") %></th>
15
+ <th><%= t("models.meeting.fields.start_time", scope: "decidim.meetings") %></th>
16
+ <th><%= t("models.meeting.fields.end_time", scope: "decidim.meetings") %></th>
17
+ <th><%= t("models.meeting.fields.closed", scope: "decidim.meetings") %></th>
18
+ <% if Decidim.geocoder.present? %>
19
+ <th><%= t("models.meeting.fields.map", scope: "decidim.meetings") %></th>
20
+ <% end %>
21
+ <th class="actions"><%= t("actions.title", scope: "decidim.meetings") %></th>
22
+ </tr>
23
+ </thead>
24
+ <tbody>
25
+ <% meetings.each do |meeting| %>
26
+ <tr data-id="<%= meeting.id %>">
27
+ <td>
28
+ <%= translated_attribute(meeting.title) %><br />
29
+ </td>
30
+ <td>
31
+ <% if meeting.start_time %>
32
+ <%= l meeting.start_time, format: :long %>
33
+ <% end%>
34
+ </td>
35
+ <td>
36
+ <% if meeting.end_time %>
37
+ <%= l meeting.end_time, format: :long %>
38
+ <% end%>
39
+ </td>
40
+ <td>
41
+ <%= humanize_boolean meeting.closed? %>
42
+ </td>
43
+ <% if Decidim.geocoder.present? %>
44
+ <td>
45
+ <%= static_map_link(meeting) %>
46
+ </td>
47
+ <% end %>
48
+ <td class="table-list__actions">
49
+ <%= icon_link_to "eye", decidim_meetings.meeting_path(id: meeting, feature_id: current_feature, participatory_process_id: current_participatory_process), t("actions.preview", scope: "decidim.meetings"), class: "action-icon--preview", target: :blank %>
6
50
 
7
- <table class="stack">
8
- <thead>
9
- <tr>
10
- <th><%= t("models.meeting.fields.title", scope: "decidim.meetings") %></th>
11
- <th><%= t("models.meeting.fields.start_time", scope: "decidim.meetings") %></th>
12
- <th><%= t("models.meeting.fields.end_time", scope: "decidim.meetings") %></th>
13
- <th><%= t("models.meeting.fields.closed", scope: "decidim.meetings") %></th>
14
- <% if Decidim.geocoder.present? %>
15
- <th><%= t("models.meeting.fields.map", scope: "decidim.meetings") %></th>
16
- <% end %>
17
- <th class="actions"><%= t("actions.title", scope: "decidim.meetings") %></th>
18
- </tr>
19
- </thead>
20
- <tbody>
21
- <% meetings.each do |meeting| %>
22
- <tr data-id="<%= meeting.id %>">
23
- <td>
24
- <%= link_to translated_attribute(meeting.title), decidim_meetings.meeting_path(id: meeting, feature_id: current_feature, participatory_process_id: current_participatory_process), target: :blank %><br />
25
- </td>
26
- <td>
27
- <% if meeting.start_time %>
28
- <%= l meeting.start_time, format: :long %>
29
- <% end%>
30
- </td>
31
- <td>
32
- <% if meeting.end_time %>
33
- <%= l meeting.end_time, format: :long %>
34
- <% end%>
35
- </td>
36
- <td>
37
- <%= humanize_boolean meeting.closed? %>
38
- </td>
39
- <% if Decidim.geocoder.present? %>
40
- <td>
41
- <%= static_map_link(meeting) %>
42
- </td>
43
- <% end %>
44
- <td class="actions">
45
- <%= link_to t("actions.edit", scope: "decidim.meetings"), edit_meeting_path(meeting) if can? :update, current_feature %>
46
- <%= link_to t("actions.close", scope: "decidim.meetings"), edit_meeting_meeting_close_path(meeting_id: meeting.id, id: meeting.id) if can? :update, current_feature %>
47
- <%= link_to t("actions.attachments", scope: "decidim.meetings"), meeting_attachments_path(meeting) if can? :update, current_feature %>
48
- <%= link_to t("actions.destroy", scope: "decidim.meetings"), meeting_path(meeting), method: :delete, class: "small alert button", data: { confirm: t("actions.confirm_destroy", scope: "decidim.meetings") } if can? :destroy, current_feature %>
49
- </td>
50
- </tr>
51
- <% end %>
52
- </tbody>
53
- </table>
51
+ <% if can? :update, current_feature %>
52
+ <%= icon_link_to "pencil", edit_meeting_path(meeting), t("actions.edit", scope: "decidim.meetings"), class: "action-icon--edit" %>
53
+ <% end %>
54
+
55
+ <% if can? :update, current_feature %>
56
+ <%= icon_link_to "lock-locked", edit_meeting_meeting_close_path(meeting_id: meeting.id, id: meeting.id), t("actions.close", scope: "decidim.meetings"), class: "action-icon--close" %>
57
+ <% end %>
58
+
59
+ <% if can? :update, current_feature %>
60
+ <%= icon_link_to "paperclip", meeting_attachments_path(meeting), t("actions.attachments", scope: "decidim.meetings"), class: "action-icon--attachments" %>
61
+ <% end %>
62
+
63
+ <% if can? :destroy, current_feature %>
64
+ <%= icon_link_to "circle-x", meeting_path(meeting), t("actions.destroy", scope: "decidim.meetings"), method: :delete, class: "action-icon--remove", data: { confirm: t("actions.confirm_destroy", scope: "decidim.meetings") } %>
65
+ <% end %>
66
+ </td>
67
+ </tr>
68
+ <% end %>
69
+ </tbody>
70
+ </table>
71
+ <%= paginate meetings, theme: "decidim" %>
72
+ </div>
73
+ </div>
74
+ <div>
@@ -1,9 +1,7 @@
1
- <h3><%= t ".title" %></h3>
1
+ <%= decidim_form_for(@form, html: { class: "form new_meeting" }) do |f| %>
2
+ <%= render partial: 'form', object: f, locals: { title: t('.title') } %>
2
3
 
3
- <%= decidim_form_for(@form) do |f| %>
4
- <%= render partial: 'form', object: f %>
5
-
6
- <div class="actions">
7
- <%= f.submit t(".create") %>
4
+ <div class="button--double form-general-submit">
5
+ <%= f.submit t(".create") %>
8
6
  </div>
9
7
  <% end %>
@@ -21,6 +21,6 @@
21
21
  <% end %>
22
22
 
23
23
  <% if current_feature.categories.any? %>
24
- <%= form.categories_select :category_id, current_feature.categories, legend_title: t(".category"), disable_parents: false, label: false, include_blank: true %>
24
+ <%= form.categories_select :category_id, current_feature.categories, legend_title: t(".category"), disable_parents: false, label: false, prompt: t('.category_prompt') %>
25
25
  <% end %>
26
26
  <% end %>
@@ -29,6 +29,7 @@ ca:
29
29
  destroy: Esborra
30
30
  edit: Edita
31
31
  new: Nou/va %{name}
32
+ preview: Previsualitzar
32
33
  title: Accions
33
34
  admin:
34
35
  meeting_closes:
@@ -45,7 +46,6 @@ ca:
45
46
  destroy:
46
47
  success: La trobada s'ha eliminat correctament
47
48
  edit:
48
- title: Edita trobada
49
49
  update: Actualitzar trobada
50
50
  index:
51
51
  title: Trobades
@@ -61,6 +61,7 @@ ca:
61
61
  meetings:
62
62
  filters:
63
63
  category: Categoria
64
+ category_prompt: Selecciona una categoria
64
65
  date: Data
65
66
  past: Passades
66
67
  scopes: Àmbits
@@ -30,6 +30,7 @@ en:
30
30
  destroy: Delete
31
31
  edit: Edit
32
32
  new: New %{name}
33
+ preview: Preview
33
34
  title: Actions
34
35
  admin:
35
36
  meeting_closes:
@@ -46,7 +47,6 @@ en:
46
47
  destroy:
47
48
  success: Meeting successfully deleted
48
49
  edit:
49
- title: Edit meeting
50
50
  update: Update meeting
51
51
  index:
52
52
  title: Meetings
@@ -62,6 +62,7 @@ en:
62
62
  meetings:
63
63
  filters:
64
64
  category: Category
65
+ category_prompt: Select a category
65
66
  date: Date
66
67
  past: Past
67
68
  scopes: Scopes
@@ -29,6 +29,7 @@ es:
29
29
  destroy: Borrar
30
30
  edit: Editar
31
31
  new: Nuevo/a %{name}
32
+ preview: Previsualizar
32
33
  title: Acciones
33
34
  admin:
34
35
  meeting_closes:
@@ -45,7 +46,6 @@ es:
45
46
  destroy:
46
47
  success: El encuentro se ha eliminado correctamente
47
48
  edit:
48
- title: Editar encuentro
49
49
  update: Actualizar encuentro
50
50
  index:
51
51
  title: Lista de encuentros
@@ -61,6 +61,7 @@ es:
61
61
  meetings:
62
62
  filters:
63
63
  category: Categoría
64
+ category_prompt: Selecciona una categoría
64
65
  date: Fecha
65
66
  past: Pasadas
66
67
  scopes: Ámbitos
@@ -7,18 +7,29 @@ eu:
7
7
  closing_report: Txostena
8
8
  contributions_count: Ekarpen-kopurua
9
9
  proposal_ids: Topaketan sortutako proposamenak
10
+ meeting:
11
+ adress: Helbidea
12
+ decidim_category_id: Kategoria
13
+ decidim_scope_id: Esparrua
14
+ description: Deskribapena
15
+ end_time: Amaiera-ordua
16
+ location: Kokapena
17
+ location_hints: Kokapen-argibideak
18
+ start_time: Hasiera-ordua
19
+ title: Izenburua
10
20
  decidim:
11
21
  features:
12
22
  meetings:
13
23
  name: Topaketa-zerrenda
14
24
  meetings:
15
25
  actions:
16
- attachments: Fitxategi erantsiak
26
+ attachments: Eranskinak
17
27
  close: Itxi
18
28
  confirm_destroy: Ziur zaude topaketa hau ezabatu nahi duzula?
19
- destroy: Garbitu
29
+ destroy: Ezabatu
20
30
  edit: Editatu
21
31
  new: '%{name} berria'
32
+ preview: Aurreikusi
22
33
  title: Ekintzak
23
34
  admin:
24
35
  meeting_closes:
@@ -35,7 +46,6 @@ eu:
35
46
  destroy:
36
47
  success: Topaketa zuzen ezabatu da.
37
48
  edit:
38
- title: Editatu topaketa
39
49
  update: Eguneratu topaketa
40
50
  index:
41
51
  title: Topaketa-zerrenda
@@ -51,9 +61,12 @@ eu:
51
61
  meetings:
52
62
  filters:
53
63
  category: Kategoria
54
- date: Jaioteguna
64
+ category_prompt: Aukeratu kategoria bat
65
+ date: Data
66
+ past: Aurrekoak
55
67
  scopes: Esparruak
56
68
  search: Bilatu
69
+ upcoming: Hurrengoak
57
70
  filters_small_view:
58
71
  close_modal: Itxi leihoa
59
72
  filter: Iragazi
@@ -61,6 +74,9 @@ eu:
61
74
  unfold: Zabaldu
62
75
  index:
63
76
  view_meeting: Ikusi topaketa
77
+ meetings:
78
+ no_meetings_warning: Ez dago bilaketa-irizpidearekin bat datorren topaketarik, edo ez dago ezein topaketarik programaturik.
79
+ upcoming_meetings_warning: Orain ez dago topaketarik programaturik, baina aurreko topaketak ikus ditzakezu.
64
80
  show:
65
81
  attendees: Bertaratuen kopurua
66
82
  contributions: Ekarpen-kopurua
@@ -76,4 +92,8 @@ eu:
76
92
  title: Izenburua
77
93
  resource_links:
78
94
  meetings_through_proposals:
79
- meeting_results: 'Honekin lotutako emaitzak:'
95
+ meeting_results: 'Topaketaren emaitzak:'
96
+ result_meetings: 'Proposamenarekin lotutako topaketak:'
97
+ proposals_from_meeting:
98
+ meeting_proposals: 'Topaketari dagozkion proposamenak:'
99
+ proposal_meetings: 'Proposamenarekin lotutako topaketak:'