use parent qw(SL::Controller::Base);
use List::MoreUtils qw(any uniq apply);
-use SL::ClientJS;
use SL::Locale::String qw(t8);
use SL::PriceSource;
use Rose::Object::MakeMethods::Generic
(
scalar => [ qw(record_item) ],
- 'scalar --get_set_init' => [ qw(js record) ],
+ 'scalar --get_set_init' => [ qw(record) ],
);
__PACKAGE__->run_before('check_auth');
my ($self) = @_;
my $record_item = _make_record_item($::form->{row});
+ my $old_unit;
+ if (($old_unit = $record_item->{__additional_form_attributes}{unit_old}) && $old_unit ne $record_item->unit) {
+ # reset unit changes. the way these interact on update breaks stuff
+ $record_item->unit_obj(SL::DB::Manager::Unit->find_by(name => $old_unit));
+ $self->js->val("select[name='unit_$::form->{row}']", $old_unit);
+ }
$self->render_price_dialog($record_item);
}
# $self->js->show('#dialog_flash_error');
# }
- $self->js->render($self);
+ $self->js->render;
}
$::auth->assert('edit_prices');
}
-sub init_js {
- SL::ClientJS->new
-}
-
sub init_record {
_make_record();
}