decidim-sortitions 0.9.0 → 0.11.0.pre1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (63) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +15 -8
  3. data/app/assets/config/decidim_sortitions_manifest.css +1 -1
  4. data/app/assets/stylesheets/decidim/sortitions/_sortitions.scss +13 -9
  5. data/app/assets/stylesheets/decidim/sortitions/social_share.css.scss +8 -4
  6. data/app/commands/decidim/sortitions/admin/create_sortition.rb +5 -3
  7. data/app/commands/decidim/sortitions/admin/destroy_sortition.rb +11 -5
  8. data/app/commands/decidim/sortitions/admin/update_sortition.rb +3 -1
  9. data/app/controllers/decidim/sortitions/admin/application_controller.rb +3 -3
  10. data/app/controllers/decidim/sortitions/admin/sortitions_controller.rb +3 -3
  11. data/app/controllers/decidim/sortitions/application_controller.rb +2 -2
  12. data/app/controllers/decidim/sortitions/sortition_widgets_controller.rb +1 -1
  13. data/app/forms/decidim/sortitions/admin/destroy_sortition_form.rb +1 -1
  14. data/app/forms/decidim/sortitions/admin/edit_sortition_form.rb +1 -1
  15. data/app/forms/decidim/sortitions/admin/sortition_form.rb +3 -3
  16. data/app/helpers/decidim/sortitions/admin/sortitions_helper.rb +3 -3
  17. data/app/helpers/decidim/sortitions/sortitions_helper.rb +1 -1
  18. data/app/models/decidim/sortitions/sortition.rb +14 -8
  19. data/app/presenters/decidim/sortitions/admin_log/sortition_presenter.rb +50 -0
  20. data/app/queries/decidim/sortitions/admin/{participatory_space_proposal_features.rb → participatory_space_proposal_components.rb} +4 -4
  21. data/app/queries/decidim/sortitions/admin/participatory_space_proposals.rb +2 -2
  22. data/app/queries/decidim/sortitions/filtered_sortitions.rb +9 -9
  23. data/app/services/decidim/sortitions/sortition_search.rb +1 -1
  24. data/app/views/decidim/sortitions/admin/sortitions/_form.html.erb +3 -3
  25. data/app/views/decidim/sortitions/admin/sortitions/index.html.erb +2 -2
  26. data/app/views/decidim/sortitions/admin/sortitions/new.html.erb +1 -1
  27. data/app/views/decidim/sortitions/admin/sortitions/show.html.erb +4 -4
  28. data/app/views/decidim/sortitions/sortition_widgets/show.html.erb +1 -1
  29. data/app/views/decidim/sortitions/sortitions/_filters.html.erb +6 -6
  30. data/app/views/decidim/sortitions/sortitions/_filters_small_view.html.erb +1 -1
  31. data/app/views/decidim/sortitions/sortitions/_proposal.html.erb +1 -1
  32. data/app/views/decidim/sortitions/sortitions/_results_count.html.erb +1 -1
  33. data/app/views/decidim/sortitions/sortitions/_sortition.html.erb +4 -4
  34. data/app/views/decidim/sortitions/sortitions/_sortition_author.html.erb +1 -1
  35. data/app/views/decidim/sortitions/sortitions/_sortition_cancel_author.html.erb +1 -1
  36. data/app/views/decidim/sortitions/sortitions/_tags.html.erb +1 -1
  37. data/app/views/decidim/sortitions/sortitions/index.html.erb +1 -1
  38. data/app/views/decidim/sortitions/sortitions/show.html.erb +12 -12
  39. data/config/locales/ca.yml +99 -109
  40. data/config/locales/en.yml +90 -94
  41. data/config/locales/es.yml +97 -107
  42. data/config/locales/eu.yml +145 -0
  43. data/config/locales/fi.yml +145 -0
  44. data/config/locales/fr.yml +145 -0
  45. data/config/locales/gl.yml +145 -0
  46. data/config/locales/it.yml +145 -0
  47. data/config/locales/nl.yml +145 -0
  48. data/config/locales/pl.yml +155 -0
  49. data/config/locales/pt-BR.yml +145 -0
  50. data/config/locales/pt.yml +145 -0
  51. data/config/locales/ru.yml +13 -0
  52. data/config/locales/sv.yml +145 -0
  53. data/config/locales/uk.yml +13 -0
  54. data/db/migrate/20180322082150_fix_sortitions_feature.rb +11 -0
  55. data/db/migrate/20180322085145_fix_sortitions_proposal_feature.rb +11 -0
  56. data/lib/decidim/sortitions.rb +1 -1
  57. data/lib/decidim/sortitions/component.rb +38 -0
  58. data/lib/decidim/sortitions/test/factories.rb +7 -7
  59. data/lib/decidim/sortitions/version.rb +3 -1
  60. metadata +46 -33
  61. data/LICENSE-AGPLv3.txt +0 -661
  62. data/app/views/decidim/sortitions/sortitions/_filters_small_view0.html.erb +0 -18
  63. data/lib/decidim/sortitions/feature.rb +0 -43
@@ -26,7 +26,7 @@ module Decidim
26
26
  return Decidim::Proposals::Proposal
27
27
  .except_withdrawn
28
28
  .where("created_at < ?", request_timestamp)
29
- .where(feature: sortition.decidim_proposals_feature)
29
+ .where(component: sortition.decidim_proposals_component)
30
30
  .order(id: :asc)
31
31
  end
32
32
 
@@ -34,7 +34,7 @@ module Decidim
34
34
  Decidim::Proposals::Proposal
35
35
  .joins(:categorization)
36
36
  .except_withdrawn
37
- .where(feature: sortition.decidim_proposals_feature)
37
+ .where(component: sortition.decidim_proposals_component)
38
38
  .where("decidim_proposals_proposals.created_at < ?", request_timestamp)
39
39
  .where("decidim_categorizations.decidim_category_id = ?", category.id)
40
40
  .order(id: :asc)
@@ -2,32 +2,32 @@
2
2
 
3
3
  module Decidim
4
4
  module Sortitions
5
- # A class used to find sortitions filtered by features and a date range
5
+ # A class used to find sortitions filtered by components and a date range
6
6
  class FilteredSortitions < Rectify::Query
7
7
  # Syntactic sugar to initialize the class and return the queried objects.
8
8
  #
9
- # features - An array of Decidim::Feature
9
+ # components - An array of Decidim::Component
10
10
  # start_at - A date to filter resources created after it
11
11
  # end_at - A date to filter resources created before it.
12
- def self.for(features, start_at = nil, end_at = nil)
13
- new(features, start_at, end_at).query
12
+ def self.for(components, start_at = nil, end_at = nil)
13
+ new(components, start_at, end_at).query
14
14
  end
15
15
 
16
16
  # Initializes the class.
17
17
  #
18
- # features - An array of Decidim::Feature
18
+ # components - An array of Decidim::Component
19
19
  # start_at - A date to filter resources created after it
20
20
  # end_at - A date to filter resources created before it.
21
- def initialize(features, start_at = nil, end_at = nil)
22
- @features = features
21
+ def initialize(components, start_at = nil, end_at = nil)
22
+ @components = components
23
23
  @start_at = start_at
24
24
  @end_at = end_at
25
25
  end
26
26
 
27
- # Finds the Proposals scoped to an array of features and filtered
27
+ # Finds the Proposals scoped to an array of components and filtered
28
28
  # by a range of dates.
29
29
  def query
30
- sortitions = Decidim::Sortitions::Sortition.where(feature: @features)
30
+ sortitions = Decidim::Sortitions::Sortition.where(component: @components)
31
31
  sortitions = sortitions.where("created_at >= ?", @start_at) if @start_at.present?
32
32
  sortitions = sortitions.where("created_at <= ?", @end_at) if @end_at.present?
33
33
  sortitions
@@ -6,7 +6,7 @@ module Decidim
6
6
  # sortitions in a participatory process.
7
7
  class SortitionSearch < ResourceSearch
8
8
  # Public: Initializes the service.
9
- # feature - A Decidim::Feature to get the proposals from.
9
+ # component - A Decidim::Component to get the proposals from.
10
10
  # page - The page number to paginate the results.
11
11
  # per_page - The number of proposals to return per page.
12
12
  def initialize(options = {})
@@ -10,9 +10,9 @@
10
10
  </div>
11
11
 
12
12
  <div class="columns xlarge-4">
13
- <%= form.select :decidim_proposals_feature_id,
14
- features_options(proposal_features),
15
- prompt: t(".select_proposal_feature") %>
13
+ <%= form.select :decidim_proposals_component_id,
14
+ components_options(proposal_components),
15
+ prompt: t(".select_proposal_component") %>
16
16
  </div>
17
17
 
18
18
  <div class="columns xlarge-4">
@@ -4,7 +4,7 @@
4
4
  <%= t(".title") %>
5
5
  <div class="button--title">
6
6
  <% if can? :create, Decidim::Sortitions::Sortition %>
7
- <%= link_to t("actions.new", scope: "decidim.sortitions.admin", name: t("models.sortition.name", scope: "decidim.sortitions.admin")), new_sortition_path, class: 'button tiny button--simple' if can? :manage, current_feature %>
7
+ <%= link_to t("actions.new", scope: "decidim.sortitions.admin", name: t("models.sortition.name", scope: "decidim.sortitions.admin")), new_sortition_path, class: "button tiny button--simple" if can? :manage, current_component %>
8
8
  <% end %>
9
9
  </div>
10
10
  </h2>
@@ -26,7 +26,7 @@
26
26
  <tr>
27
27
  <td><%= sortition.reference %></td>
28
28
  <td><%= translated_attribute sortition.title %></td>
29
- <td><%=l sortition.created_at, format: :short %></td>
29
+ <td><%= l sortition.created_at, format: :short %></td>
30
30
  <td class="table-list__actions">
31
31
  <%= icon_link_to "eye",
32
32
  sortition_path(sortition),
@@ -1,5 +1,5 @@
1
1
  <h2 class="process-title-summary">
2
- <%=t ".title" %>
2
+ <%= t ".title" %>
3
3
  </h2>
4
4
 
5
5
  <%= decidim_form_for(@form, html: { class: "form new_sortition" }) do |f| %>
@@ -13,18 +13,18 @@
13
13
  <th><%= t("models.sortition.fields.dice", scope: "decidim.sortitions.admin") %></th>
14
14
  <th><%= t("models.sortition.fields.target_items", scope: "decidim.sortitions.admin") %></th>
15
15
  <th><%= t("models.sortition.fields.category", scope: "decidim.sortitions.admin") %></th>
16
- <th><%= t("models.sortition.fields.decidim_proposals_feature", scope: "decidim.sortitions.admin") %></th>
16
+ <th><%= t("models.sortition.fields.decidim_proposals_component", scope: "decidim.sortitions.admin") %></th>
17
17
  <th><%= t("models.sortition.fields.seed", scope: "decidim.sortitions.admin") %></th>
18
18
  <th></th>
19
19
  </tr>
20
20
  </thead>
21
21
  <tbody>
22
22
  <tr>
23
- <td><%=l sortition.request_timestamp, format: :long %></td>
23
+ <td><%= l sortition.request_timestamp, format: :long %></td>
24
24
  <td><%= sortition.dice %></td>
25
25
  <td><%= sortition.target_items %></td>
26
26
  <td><%= sortition_category sortition %></td>
27
- <td><%= translated_attribute sortition.decidim_proposals_feature.name %></td>
27
+ <td><%= translated_attribute sortition.decidim_proposals_component.name %></td>
28
28
  <td><%= sortition.seed %></td>
29
29
  <td></td>
30
30
  </tr>
@@ -37,7 +37,7 @@
37
37
  <table class="table-list proposals">
38
38
  <thead>
39
39
  <tr>
40
- <th><%=t ".selected_proposals" %></th>
40
+ <th><%= t ".selected_proposals" %></th>
41
41
  <th></th>
42
42
  </tr>
43
43
  </thead>
@@ -1,4 +1,4 @@
1
1
  <% content_for(:title, translated_attribute(model.title)) %>
2
2
  <p>
3
- <%= decidim_sanitize html_truncate(translated_attribute(model.additional_info), length: 100, separator: '...') %>
3
+ <%= decidim_sanitize html_truncate(translated_attribute(model.additional_info), length: 100, separator: "...") %>
4
4
  </p>
@@ -2,10 +2,10 @@
2
2
  <div class="filters__section">
3
3
  <div class="filters__search">
4
4
  <div class="input-group">
5
- <%= form.search_field :search_text, label: false, class: "input-group-field", placeholder: t('.search') %>
5
+ <%= form.search_field :search_text, label: false, class: "input-group-field", placeholder: t(".search") %>
6
6
  <div class="input-group-button">
7
7
  <button type="submit" class="button button--muted">
8
- <%= icon "magnifying-glass", aria_label: t('.search') %>
8
+ <%= icon "magnifying-glass", aria_label: t(".search") %>
9
9
  </button>
10
10
  </div>
11
11
  </div>
@@ -15,17 +15,17 @@
15
15
  <% if current_participatory_space.categories.any? %>
16
16
  <%= form.categories_select :category_id,
17
17
  current_participatory_space.categories,
18
- legend_title: t('.category'),
18
+ legend_title: t(".category"),
19
19
  disable_parents: false,
20
20
  label: false,
21
- prompt: t('.category_prompt') %>
21
+ prompt: t(".category_prompt") %>
22
22
  <% end %>
23
23
 
24
24
  <%= form.collection_radio_buttons :state,
25
- [["all", t('.all')], ["active", t('.active')], ["cancelled", t(".cancelled")]],
25
+ [["all", t(".all")], ["active", t(".active")], ["cancelled", t(".cancelled")]],
26
26
  :first,
27
27
  :last,
28
- legend_title: t('.state') %>
28
+ legend_title: t(".state") %>
29
29
 
30
30
  <%= hidden_field_tag :order, order, id: nil, class: "order_filter" %>
31
31
  <% end %>
@@ -1,7 +1,7 @@
1
1
  <div class="filters-controls hide-for-mediumlarge">
2
2
  <button data-open="filter-box" class="filters-controls__trigger">
3
3
  <%= t ".filter" %>
4
- <%= icon "caret-bottom", class: "icon--small float-right", aria_label: t('.unfold'), role: "img" %>
4
+ <%= icon "caret-bottom", class: "icon--small float-right", aria_label: t(".unfold"), role: "img" %>
5
5
  </button>
6
6
  </div>
7
7
 
@@ -8,7 +8,7 @@
8
8
  <div class="card__author author-data author-data--small">
9
9
  <%= render partial: "decidim/shared/author_reference", locals: { author: present(proposal).author } %>
10
10
  </div>
11
- <%= feature_reference(proposal, class: "reference--text-left") %>
11
+ <%= resource_reference(proposal, class: "reference--text-left") %>
12
12
  </div>
13
13
  <%= render partial: "proposal_badge", locals: { proposal: proposal } %>
14
14
  <p><%= truncate(proposal.body, length: 100) %></p>
@@ -3,6 +3,6 @@
3
3
  <%= sortition.selected_proposals.count %>
4
4
  </span>
5
5
  <span class="extra__suport-text">
6
- <%= t('.count', count: sortition.selected_proposals.count) %>
6
+ <%= t(".count", count: sortition.selected_proposals.count) %>
7
7
  </span>
8
8
  </div>
@@ -2,22 +2,22 @@
2
2
  <article class="card card--sortition">
3
3
  <div class="card__content">
4
4
  <div class="card__header">
5
- <%= link_to sortition do%>
5
+ <%= link_to sortition do %>
6
6
  <h5 class="card__title"><%= translated_attribute sortition.title %></h5>
7
7
  <% end %>
8
8
  <div class="card__author author-data author-data--small">
9
9
  <%= render partial: "sortition_author", locals: { sortition: sortition } %>
10
10
  </div>
11
- <%= feature_reference(sortition, class: "reference--text-left") %>
11
+ <%= resource_reference(sortition, class: "reference--text-left") %>
12
12
  </div>
13
13
  <p class="card__desc">
14
- <%= decidim_sanitize html_truncate(translated_attribute(sortition.additional_info), length: 100, separator: '...') %>
14
+ <%= decidim_sanitize html_truncate(translated_attribute(sortition.additional_info), length: 100, separator: "...") %>
15
15
  </p>
16
16
  <%= render partial: "tags", locals: { sortition: sortition } %>
17
17
  </div>
18
18
  <div class="card__footer">
19
19
  <div class="card__support">
20
- <div class="card__support__data"><%=t '.selected_proposals', count: sortition.selected_proposals.count %></div>
20
+ <div class="card__support__data"><%= t ".selected_proposals", count: sortition.selected_proposals.count %></div>
21
21
  <%= link_to t(".view_sortition"), sortition, class: "card__button button small secondary" %>
22
22
  </div>
23
23
  </div>
@@ -6,7 +6,7 @@
6
6
  <span class="author__name">
7
7
  <% if sortition.author&.deleted? %>
8
8
  <span class="label label--small label--basic">
9
- <%= t('.deleted') %>
9
+ <%= t(".deleted") %>
10
10
  </span>
11
11
  <% else %>
12
12
  <%= sortition.author.name %>
@@ -6,7 +6,7 @@
6
6
  <span class="author__name">
7
7
  <% if sortition.cancelled_by_user&.deleted? %>
8
8
  <span class="label label--small label--basic">
9
- <%= t('.deleted') %>
9
+ <%= t(".deleted") %>
10
10
  </span>
11
11
  <% else %>
12
12
  <%= sortition.cancelled_by_user.name %>
@@ -1,5 +1,5 @@
1
1
 
2
- <ul class="tags tags--sortition" >
2
+ <ul class="tags tags--sortition">
3
3
  <li>
4
4
  <%= link_to t("filters.active", scope: "decidim.sortitions.sortitions"),
5
5
  sortitions_path(filter: { state: "active" }) unless sortition.cancelled? %>
@@ -8,7 +8,7 @@
8
8
  <div class="row">
9
9
  <div class="columns mediumlarge-4 large-3">
10
10
  <%= render partial: "filters_small_view" %>
11
- <div class="card card--secondary show-for-mediumlarge" >
11
+ <div class="card card--secondary show-for-mediumlarge">
12
12
  <%= render partial: "filters" %>
13
13
  </div>
14
14
  </div>
@@ -6,7 +6,7 @@
6
6
 
7
7
  <div class="row column">
8
8
  <div class="callout success">
9
- <p><%=t ".introduction", reference: sortition.id, target_items: sortition.target_items %></p>
9
+ <p><%= t ".introduction", reference: sortition.id, target_items: sortition.target_items %></p>
10
10
  </div>
11
11
  </div>
12
12
 
@@ -24,7 +24,7 @@
24
24
  <%= render partial: "results_count", locals: { sortition: sortition } %>
25
25
  </div>
26
26
  </div>
27
- <%= feature_reference(sortition) %>
27
+ <%= resource_reference(sortition) %>
28
28
  <%= render partial: "decidim/shared/share_modal" %>
29
29
  <%= embed_modal_for sortition_sortition_widget_url(sortition, format: :js) %>
30
30
  </div>
@@ -39,7 +39,7 @@
39
39
  <% if sortition.cancelled? %>
40
40
  <div class="row column">
41
41
  <div class="title-action">
42
- <h2 class="title-action__title section-heading"><%=t ".cancelled" %></h2>
42
+ <h2 class="title-action__title section-heading"><%= t ".cancelled" %></h2>
43
43
  </div>
44
44
  <div class=section>
45
45
  <div class="author-data">
@@ -54,7 +54,7 @@
54
54
 
55
55
  <div class="row column">
56
56
  <div class="title-action">
57
- <h2 class="title-action__title section-heading"><%=t ".witnesses" %></h2>
57
+ <h2 class="title-action__title section-heading"><%= t ".witnesses" %></h2>
58
58
  </div>
59
59
  <div class="section">
60
60
  <%= sanitize translated_attribute sortition.witnesses %>
@@ -65,7 +65,7 @@
65
65
  <div class="row columns">
66
66
  <div class="title-action">
67
67
  <h2 id="proposals-count" class="title-action__title section-heading">
68
- <%=t ".proposals_selected_by_sortition" %>
68
+ <%= t ".proposals_selected_by_sortition" %>
69
69
  </h2>
70
70
  </div>
71
71
  <div class="row">
@@ -81,27 +81,27 @@
81
81
  <div class="row column">
82
82
  <section class="extended" id="sortition-details">
83
83
  <div class="row column">
84
- <h4 class="section-heading"><%=t ".sortition_reproducibility_details" %></h4>
84
+ <h4 class="section-heading"><%= t ".sortition_reproducibility_details" %></h4>
85
85
  </div>
86
86
  <div class=row>
87
87
  <div class="columns small-centered mediumlarge-12 large-12 sortition-details">
88
88
  <div class="sortition-details-item">
89
- <span class="sortition-details-title sortition-details-text"><%=t ".dice_result" %></span>
89
+ <span class="sortition-details-title sortition-details-text"><%= t ".dice_result" %></span>
90
90
  <span class=sortition-details-text><%= sortition.dice %></span>
91
91
  </div>
92
92
 
93
93
  <div class="sortition-details-item">
94
- <span class="sortition-details-title sortition-details-text"><%=t ".time_seed" %></span>
94
+ <span class="sortition-details-title sortition-details-text"><%= t ".time_seed" %></span>
95
95
  <span class=sortition-details-text><%= sortition.request_timestamp.to_i %></span>
96
96
  </div>
97
97
 
98
98
  <div class="sortition-details-item">
99
- <span class="sortition-details-title sortition-details-text"><%=t ".mathematical_result" %></span>
99
+ <span class="sortition-details-title sortition-details-text"><%= t ".mathematical_result" %></span>
100
100
  <span class=sortition-details-text><%= sortition.seed %></span>
101
101
  </div>
102
102
 
103
103
  <div class="sortition-details-item">
104
- <span class="sortition-details-title sortition-details-text"><%=t ".algorithm" %></span><br>
104
+ <span class="sortition-details-title sortition-details-text"><%= t ".algorithm" %></span><br />
105
105
  <span class=sortition-details-text>
106
106
  <%= link_to Decidim::Sortitions.sortition_algorithm,
107
107
  Decidim::Sortitions.sortition_algorithm,
@@ -115,10 +115,10 @@
115
115
 
116
116
  <section class=extended>
117
117
  <div class="row column">
118
- <h4 class="section-heading"><%=t ".candidate_proposal_ids" %></h4>
118
+ <h4 class="section-heading"><%= t ".candidate_proposal_ids" %></h4>
119
119
  </div>
120
120
  <div class="row columns">
121
- <%=t ".candidate_proposals_info", category_label: sortition_category_label(sortition) %>:
121
+ <%= t ".candidate_proposals_info", category_label: sortition_category_label(sortition) %>:
122
122
  </div>
123
123
  <div class=row>
124
124
  <div class="columns small-centered mediumlarge-12 large-12">
@@ -1,155 +1,145 @@
1
- ---
2
1
  ca:
3
2
  activemodel:
4
3
  attributes:
5
4
  sortition:
5
+ additional_info: Informació sobre el sorteig
6
+ decidim_category_id: Categories del conjunt de propostes en què voleu aplicar el sorteig
7
+ decidim_proposals_component_id: Propostes establertes
8
+ dice: Resultat de la tirada de daus (tira un dau de sis cares o busca alguna altra manera de generar un número de 1 a 6) i introdueix-lo aquí, a diferència de ser testimoni del resultat. Això contribueix en la qualitat de l'aleatorietat
9
+ target_items: Nombre de propostes a seleccionar (indica el nombre de propostes que voleu seleccionar mitjançant el sorteig del grup de propostes que hàgiu triat prèviament)
6
10
  title: Títol
7
- dice: Resultat de la tirada de dau (tira un dau de 6 cares (o busca una altra manera aleatòria de generar un número de l'1 al 6) i introdueix aquí, davant de testimoni el nombre resultant, això contribueix a la qualitat i garanties de l'aleatorietat del resultat
8
- target_items: Nombre de propostes a seleccionar (indica el nombre de propostes que vols que siguin seleccionades mitjançant sorteig del conjunt de propostes que has escollit prèviament)
9
- decidim_category_id: Categories del conjunt de propostes en les que vols aplicar el sorteig
10
- decidim_proposals_feature_id: Conjunt de propostes
11
11
  witnesses: Testimonis
12
- additional_info: Informació adicional
13
- pages:
14
- home:
15
- statistics:
16
- sortitions_count: Sortejos
17
12
  decidim:
13
+ components:
14
+ sortitions:
15
+ name: Sortejos
16
+ settings:
17
+ global:
18
+ comments_enabled: Comentaris habilitats
18
19
  events:
19
20
  sortitions:
20
21
  sortition_created:
21
- email_intro: "S'ha afegit el sorteig \"%{resource_title}\" a \"%{participatory_space_title}\" que estàs seguint."
22
- email_outro: "Has rebut aquesta notificació perquè estàs seguint \"%{participatory_space_title}\". Pots deixar de seguir-ho seguint l'enllaç anterior."
23
- email_subject: Nou sorteig afegit a %{participatory_space_title}
24
- notification_title: "S'ha afegit el sorteig <a href=\"%{resource_path}\">%{resource_title}</a> a %{participatory_space_title}"
22
+ email_intro: S'ha afegit el sorteig "%{resource_title}" a "%{participatory_space_title}", que segueixes.
23
+ email_outro: Has rebut aquesta notificació perquè estàs seguint "%{participatory_space_title}". Pots deixar de seguir-lo des de l'enllaç anterior.
24
+ email_subject: S'ha afegit un nou sorteig a %{participatory_space_title}
25
+ notification_title: El sorteig <a href="%{resource_path}">%{resource_title}</a> s'ha afegit a %{participatory_space_title}
25
26
  participatory_processes:
26
27
  statistics:
27
28
  sortitions_count: Sortejos
28
- features:
29
- sortitions:
30
- name: Sortejos
31
- settings:
32
- global:
33
- comments_enabled: Comentaris habilitats
34
29
  sortitions:
35
30
  admin:
36
31
  actions:
37
- new: Nou
32
+ destroy: Cancel·la el sorteig
38
33
  edit: Edita
34
+ new: Nou
39
35
  show: Detalls del sorteig
40
- destroy: Cancela el sorteig
41
36
  models:
42
37
  sortition:
43
- name:
44
- one: Sorteig
45
- other: Sortejos
46
38
  fields:
47
- id: Identificador
48
- title: Títol
49
- reference: Referència
50
- dice: Dau
51
- request_timestamp: Hora del sorteig
52
- target_items: Elements a seleccionar
53
- seed: Llavor
54
39
  category: Categoria
55
- decidim_proposals_feature: Funcionalitat de propostes
56
- similar_count: Sortejos similars
57
40
  created_at: Data de creació
41
+ decidim_proposals_component: Component de propostes
42
+ dice: Daus
43
+ reference: Referència
44
+ request_timestamp: Temps de dibuixat
45
+ seed: Llavor
46
+ target_items: Elements a seleccionar
47
+ title: Títol
48
+ name:
49
+ one: Sorteig
50
+ other: Sortejos
58
51
  sortitions:
59
- index:
60
- title: Sortejos
61
- linked_sortitions:
62
- selected_proposals:
63
- one: proposta seleccionada
64
- other: propostes seleccionades
65
- new:
66
- title: Nou sorteig
67
- create: Crea
68
- confirm: En prémer el botó Decidim gravarà el la data i hora (amb precisió de segons) i juntament amb la tirada de daus, aquesta informació servirà per generar una selecció aleatòria. L'acció serà irreversible, un cop premut el botó el resultat d'aquest sorteig es publicarà, juntament les dades introduïdes en aquest formulari i no es podran modificar, si us plau revisa a consciència el contingut
52
+ confirm_destroy:
53
+ confirm_destroy: Estàs segur que vols cancel·lar aquest sorteig?
54
+ destroy: Cancel·lar el sorteig
55
+ title: Cancel·lació del sorteig
56
+ create:
57
+ error: S'ha produït un error en crear un nou sorteig.
58
+ success: El sorteig s'ha creat correctament
59
+ destroy:
60
+ error: No es pot cancel·lar el sorteig.
61
+ success: El sorteig s'ha cancel·lat correctament
69
62
  edit:
70
- title: Actualitza la informació sobre el
63
+ title: Actualitza la informació sobre el sorteig
71
64
  update: Actualitzar
72
65
  form:
73
- title: Nou sorteig de propostes
74
66
  all_categories: Totes les categories
75
- select_proposal_feature: Selecciona el conjunt de propostes
76
- create:
77
- success: Sorteig creat correctament.
78
- error: S'ha produït un error creant el sorteig.
79
- update:
80
- success: Sorteig actualitzat correctament.
81
- error: S'ha produït un error al actualitzar el sorteig.
67
+ select_proposal_component: Selecciona el grup de propostes
68
+ title: Nou sorteig per propostes
69
+ index:
70
+ title: Sortejos
71
+ new:
72
+ confirm: Pressionant el botó següent, Decidim registrarà la data i l'hora (amb precisió de segons) i, juntament amb la tirada de daus, aquesta informació s'utilitzarà per generar una selecció aleatòria. L'acció serà irreversible, una vegada que es faci clic al botó, es publicarà el resultat d'aquest sorteig, juntament amb les dades introduïdes en aquest formulari i que no es poden modificar. Si us plau, comprova el contingut acuradament
73
+ create: Crear
74
+ title: Nou sorteig
82
75
  show:
83
- selected_proposals: Propostes seleccionades per sorteig
84
- confirm_destroy:
85
- title: Cancelació del sorteig
86
- confirm_destroy: Segur que vols cancelar aquest sorteig?
87
- destroy: Cancela el sorteig
88
- destroy:
89
- success: El sorteig s'ha cancel·lat correctament
90
- error: No s'ha pogut cancel·lar el sorteig
76
+ selected_proposals: Propostes seleccionades per al sorteig
77
+ update:
78
+ error: S'ha produït un error en actualitzar el sorteig.
79
+ success: El sorteig s'ha actualitzat amb èxit
80
+ admin_log:
81
+ sortition:
82
+ create: "%{user_name} ha creat el sorteig %{resource_name} a %{space_name}"
83
+ delete: "%{user_name} ha cancel·lat el sorteig %{resource_name} a %{space_name}"
84
+ update: "%{user_name} ha actualitzat el sorteig %{resource_name} a %{space_name}"
91
85
  sortitions:
92
86
  count:
93
87
  proposals_count:
94
88
  one: 1 proposta
95
89
  other: "%{count} propostes"
96
- author:
97
- deleted: Usuari eliminat
98
- verified_user_group: Organització verificada
99
- proposal:
100
- view_proposal: Veure proposta
101
- sortitions_count:
102
- count:
103
- one: 1 sorteig
104
- other: "%{count} sortejos"
105
- results_count:
106
- count:
107
- one: proposta seleccionada
108
- other: propostes seleccionades
109
- show:
110
- witnesses: Testimonis
111
- cancelled: Sorteig cancel·lat
112
- sortition_reproducibility_details: Detalls de reproducibilitat del sorteig
113
- proposals_selected_by_sortition: Propostes sel·leccionades per sorteig
114
- introduction: >
115
- Aquesta pàgina conté els resultats del sorteig %{reference}. Per mitjà d'aquest sorteig,
116
- %{target_items} propostes s'han seleccionat a l'atzar i amb la mateixa distribució de
117
- probabilitat del conjunt de propostes que es mostren a continuació. Juntament amb els resultats,
118
- La informació que es mostra en aquesta pàgina proporciona tota la informació requerida per maximitzar les
119
- garanties i reproduir els resultats. La clau per a la qualitat d'aquesta classificació és la doble
120
- aleatorietat proporcionada pel llançament d'un dau (verificat per testimonis) i el temps exacte de
121
- la classificació que proporciona l'entrada per a un algorisme que genera una selecció aleatòria.
122
- La sembra de temps per a la classificació és tan precisa (segons) que és impossible de controlar pels
123
- humans proporcionant així una doble entrada "incontrolable" per garantir un resultat just.
124
- dice_result: (1) Resultat del dau
125
- time_seed: (2) Llavor temporal
126
- mathematical_result: Resultat (1) x (2)
127
- algorithm: Codi de l'algoritme del sorteig
128
- candidate_proposal_ids: Ordre de propostes del sorteig i identificadors
129
- candidate_proposals_info: >
130
- El sorteig es va dur a terme entre les següents propostes (%{category_label}), amb els següents
131
- identificadors (en negreta les propostes seleccionades)
132
- any_category: de totes les categories
133
- category: De la categoria %{category}
134
90
  filters:
135
- search: Cerca
91
+ active: Actius
92
+ all: Tots
93
+ cancelled: Cancel·lats
136
94
  category: Categoria
137
95
  category_prompt: Selecciona una categoria
96
+ search: Cerca
138
97
  state: Estat
139
- all: Tots
140
- active: Actius
141
- cancelled: Cancelats
142
98
  filters_small_view:
143
- close_modal: Tancar finestra
144
- filter: Filtra
145
- filter_by: Filtrar per
99
+ close_modal: Tanca el modal
100
+ filter: Filtre
101
+ filter_by: Filtra per
146
102
  unfold: Desplegar
103
+ linked_sortitions:
104
+ selected_proposals: Propostes seleccionades
147
105
  orders:
148
- label: 'Ordenar sortejos per:'
106
+ label: 'Ordeneu els sortejos per:'
149
107
  random: Aleatori
150
108
  recent: Recent
109
+ proposal:
110
+ view_proposal: Veure proposta
111
+ results_count:
112
+ count:
113
+ one: proposta seleccionada
114
+ other: propostes seleccionades
115
+ show:
116
+ algorithm: Codi d'algoritme del sorteig
117
+ any_category: de totes les categories
118
+ cancelled: Sorteig cancel·lat
119
+ candidate_proposal_ids: Ordre i IDs de les propostes del sorteig
120
+ candidate_proposals_info: 'La resolució es va dur a terme entre les següents propostes (%{category_label}), amb les següents IDs (en negreta, les propostes seleccionades) '
121
+ category: de la categoria %{category}
122
+ dice_result: "(1) Resultat de la tirada de daus"
123
+ introduction: 'Aquesta pàgina conté els resultats del sorteig %{reference}. Mitjançant aquest sorteig, %{target_items} nombre de resultats han estat seleccionats aleatòriament i amb una distribució de probabilitat igual al conjunt de propostes que es mostra a continuació. Juntament amb els resultats, la informació que es mostra en aquesta pàgina proporciona tota la informació necessària per maximitzar les garanties i reproduir els resultats. La clau per a la qualitat d''aquest sorteig és l''aleatorietat doble proporcionada per una tirada d''un dau (verificat pels testimonis) i el temps precís de l''assentament que proporciona entrada per a un algorisme que genera una selecció aleatòria. El llindar de temps per a l''assaig és tan precís (segons) que és impossible de controlar pels humans, oferint així una doble entrada "incontrolable" per garantir un resultat just. '
124
+ mathematical_result: Resultat (1) x (2)
125
+ proposals_selected_by_sortition: Propostes seleccionades pel sorteig
126
+ sortition_reproducibility_details: Detalls de la reproductibilitat del sorteig
127
+ time_seed: "(2) Llavor de temps"
128
+ witnesses: Testimonis
151
129
  sortition:
152
130
  selected_proposals:
153
- one: 1 proposta seleccionada.
131
+ one: 1 proposta seleccionada
154
132
  other: "%{count} propostes seleccionades"
155
- view_sortition: Vore sorteig
133
+ view_sortition: Mostra el sorteig
134
+ sortition_author:
135
+ deleted: Usuari eliminat
136
+ sortition_cancel_author:
137
+ deleted: Usuari eliminat
138
+ sortitions_count:
139
+ count:
140
+ one: 1 sorteig
141
+ other: "%{count} classificacions"
142
+ pages:
143
+ home:
144
+ statistics:
145
+ sortitions_count: Sortejos