File tree Expand file tree Collapse file tree 12 files changed +123
-12
lines changed Expand file tree Collapse file tree 12 files changed +123
-12
lines changed Original file line number Diff line number Diff line change @@ -139,8 +139,17 @@ def bulk_update
139
139
organize = hash . delete ( :organize ) == "1"
140
140
add_tags = Set . new ( hash . delete ( :add_tags ) )
141
141
remove_tags = Set . new ( hash . delete ( :remove_tags ) )
142
- ids = params [ :models ] . select { |k , v | v == "1" } . keys
143
- policy_scope ( Model ) . where ( public_id : ids ) . find_each do |model |
142
+
143
+ models_to_update = if params [ :commit ] == t ( "models.bulk_edit.update_all" )
144
+ # If "Update All Models" was clicked, update all models in the filtered set
145
+ filtered_models ( @filters )
146
+ else
147
+ # If "Update Selected Models" was clicked, only update checked models
148
+ ids = params [ :models ] . select { |k , v | v == "1" } . keys
149
+ policy_scope ( Model ) . where ( public_id : ids )
150
+ end
151
+
152
+ models_to_update . find_each do |model |
144
153
if model &.update ( hash )
145
154
existing_tags = Set . new ( model . tag_list )
146
155
model . tag_list = existing_tags + add_tags - remove_tags
Original file line number Diff line number Diff line change 58
58
<%= form . hidden_field :library , value : @filters [ :library ] if @filters [ :library ] %>
59
59
<%= form . hidden_field :creator , value : @filters [ :creator ] if @filters [ :creator ] %>
60
60
<%= form . submit translate ( ".submit" ) , class : "btn btn-primary" %>
61
+ <%= form . submit translate ( ".update_all" ) , class : "btn btn-secondary" %>
61
62
62
63
</ div >
63
64
<% if !@filters . empty? %>
Original file line number Diff line number Diff line change 10
10
select_all : Alle Modelle auswählen
11
11
submit : Ausgewählte Modelle aktualisieren
12
12
title : Modelle massenweise bearbeiten
13
+ update_all : Alle Modelle aktualisieren
13
14
bulk_fields :
14
15
add_tags : Tags hinzufügen
15
16
bulk_update :
Original file line number Diff line number Diff line change 10
10
select_all : Select all models
11
11
submit : Update Selected Models
12
12
title : Bulk Edit Models
13
+ update_all : Update All Models
13
14
bulk_fields :
14
15
add_tags : Add tags
15
16
bulk_update :
Original file line number Diff line number Diff line change 10
10
select_all : Seleccione todos los modelos
11
11
submit : Actualizar modelos seleccionados
12
12
title : Edición masiva de modelos
13
+ update_all : Actualizar todos los modelos
13
14
bulk_fields :
14
15
add_tags : Añadir etiquetas
15
16
bulk_update :
Original file line number Diff line number Diff line change 10
10
select_all : Sélectionner tous les modèles
11
11
submit : Mettre à jour les modèles sélectionnés
12
12
title : Modifier les modèles en lot
13
+ update_all : Mettre à jour tous les modèles
13
14
bulk_fields :
14
15
add_tags : Ajouter des étiquettes
15
16
bulk_update :
Original file line number Diff line number Diff line change 10
10
select_all : Zaznacz wszystkie modele
11
11
submit : Aktualizuj zaznaczone modele
12
12
title : Edytuj zbiorczo modele
13
+ update_all : Aktualizuj wszystkie modele
13
14
bulk_fields :
14
15
add_tags : Dodaj tagi
15
16
bulk_update :
Original file line number Diff line number Diff line change 1
1
FactoryBot . define do
2
2
factory :creator do
3
- name { Faker ::Name . name }
3
+ sequence ( :name ) { |n | "Creator #{ n } " }
4
+ sequence ( :public_id ) { |n | "creator_#{ n } " }
4
5
end
5
6
end
Original file line number Diff line number Diff line change 1
1
FactoryBot . define do
2
2
factory :library do
3
+ sequence ( :name ) { |n | "Library #{ n } " }
4
+ sequence ( :public_id ) { |n | "library_#{ n } " }
3
5
path {
4
6
dir = Dir . mktmpdir ( Faker ::File . file_name , "/tmp" )
5
7
at_exit { FileUtils . remove_entry ( dir ) }
Original file line number Diff line number Diff line change 1
1
FactoryBot . define do
2
2
factory :model do
3
+ sequence ( :name ) { |n | "Model #{ n } " }
3
4
library
4
- name { Faker :: Creature :: Animal . name }
5
+ sequence ( :public_id ) { | n | "model_ #{ n } " }
5
6
path { Faker ::File . dir }
6
7
license { "MIT" }
8
+
9
+ trait :with_tags do
10
+ transient do
11
+ tags_count { 2 }
12
+ end
13
+
14
+ after ( :create ) do |model , evaluator |
15
+ evaluator . tags_count . times do |i |
16
+ model . tag_list . add ( "tag_#{ i } " )
17
+ end
18
+ model . save
19
+ end
20
+ end
21
+
22
+ trait :needs_organizing do
23
+ after ( :create ) do |model |
24
+ model . update! ( needs_organizing : true )
25
+ end
26
+ end
27
+
28
+ trait :sensitive do
29
+ sensitive { true }
30
+ end
31
+
32
+ trait :with_creator do
33
+ creator
34
+ end
35
+
36
+ trait :with_collection do
37
+ collection
38
+ end
7
39
end
8
40
end
You can’t perform that action at this time.
0 commit comments