Revision 2e19b5c0
Von Tamino Steinert vor etwa 1 Jahr hinzugefügt
SL/Controller/Part.pm | ||
---|---|---|
$select_tag_options{empty_title} = t8("Select Variant Property First");
|
||
}
|
||
|
||
foreach my $variant (@{$self->part->variants}) {
|
||
my $select_tag_name = "add_variant_property_value_" . $variant->id;
|
||
my $new_select_tag = select_tag(
|
||
$select_tag_name, \@options,
|
||
%select_tag_options
|
||
);
|
||
$self->js->replaceWith("#$select_tag_name", $new_select_tag);
|
||
}
|
||
my $new_select_tag = select_tag(
|
||
"variants[].add_variant_property_value", \@options,
|
||
%select_tag_options
|
||
);
|
||
$self->js->replaceWith('[name^="variants[].add_variant_property_value"]', $new_select_tag);
|
||
|
||
my $new_select_tag_multible = select_tag(
|
||
"add_variant_property_value_for_selected_variants", \@options,
|
||
%select_tag_options
|
||
);
|
||
$self->js->replaceWith("#add_variant_property_value_for_selected_variants", $new_select_tag_multible);
|
||
|
||
$self->js->render();
|
||
}
|
||
... | ... | |
|
||
my $variant_property_id = $::form->{add_variant_property};
|
||
die t8("Please select a variant property") unless ($variant_property_id);
|
||
my %variant_id_to_values = map {$_->{id} => $_} @{$::form->{variants}};
|
||
foreach my $variant (@{$self->part->variants}) {
|
||
die t8("Please select a new variant property value for all variants")
|
||
unless $::form->{"add_variant_property_value_" . $variant->id};
|
||
unless $variant_id_to_values{$variant->id}->{"add_variant_property_value"};
|
||
}
|
||
|
||
SL::DB->client->with_transaction(sub {
|
||
... | ... | |
foreach my $variant (@{$self->part->variants}) {
|
||
SL::DB::VariantPropertyValuePart->new(
|
||
part_id => $variant->id,
|
||
variant_property_value_id => $::form->{"add_variant_property_value_" . $variant->id},
|
||
variant_property_value_id => $variant_id_to_values{$variant->id}->{"add_variant_property_value"},
|
||
)->save;
|
||
}
|
||
1;
|
Auch abrufbar als: Unified diff
Varianten: Schnellbearbeitung von Varianten