Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision eb186d8e

Von Sven Schöling vor fast 2 Jahren hinzugefügt

  • ID eb186d8e7fd05403f6494d48a4d9ffbea29893ce
  • Vorgänger 4ea91a6e
  • Nachfolger fbe97f1d

RecordLinks: Reclamation after save hook in ein SL::DB::Helper modul verschoben

RecordLinks werden in reclamations in einem after save hook behandelt,
und sind damit deutlich robuster als die manuelle Behandlung. Die
ausgelagerte Variante hat jetzt auch Konstanten für die magischen
Strings in den Objekten.

Unterschiede anzeigen:

SL/DB/ReclamationItem.pm
use SL::DB::Helper::ActsAsList;
use SL::DB::Helper::LinkedRecords;
use SL::DB::Helper::RecordItem;
use SL::DB::Helper::RecordLink qw(RECORD_ITEM_ID RECORD_ITEM_TYPE_REF);
use SL::DB::Helper::CustomVariables (
sub_module => 'reclamation_items',
cvars_alias => 1,
......
sub is_linked_to_record {
my ($self) = @_;
if(scalar(@{$self->linked_records}) || $self->{converted_from_record_item_type_ref}) {
if(scalar(@{$self->linked_records}) || $self->{RECORD_ITEM_TYPE_REF()}) {
return 1;
}
......
$item->assign_attributes(%{ $params{attributes} }) if $params{attributes};
unless ($params{no_linked_records}) {
$item->{"converted_from_record_item_type_ref"} = ref($source);
$item->{"converted_from_record_item_id"} = $source->id;
$item->{RECORD_ITEM_TYPE_REF()} = ref($source);
$item->{RECORD_ITEM_ID()} = $source->id;
}
return $item;

Auch abrufbar als: Unified diff