• status_multi.msn

    388 389  
    28 28 # Просекаем фишку
    29 29 my @ids = ref($object->$name) eq 'ARRAY' ? @{ $object->$name } : $object->$name;
    30 30 my %ids = map { $_ => 1 } @ids;
    31 my @values = exists $prop->{values} && ref $prop->{values} eq 'ARRAY' ? @{ $prop->{values} } :
    32 exists $prop->{cases} && ref $prop->{cases} eq 'ARRAY' ? @{ $prop->{cases} } : ();
    31 my @values;
    32 if ( $prop && ref $prop ) {
    33 if ( exists $prop->{lookup_opts} && ref $prop->{lookup_opts} eq 'HASH' ) {
    34 @values = $keeper->get_documents (
    35 %{$prop->{lookup_opts}},
    36 names => 1,
    37 );
    38 } elsif ( exists $prop->{values} && ref $prop->{values} eq 'ARRAY' ) {
    39 @values = @{ $prop->{values} };
    40 } elsif ( exists $prop->{cases} && ref $prop->{cases} eq 'ARRAY' ) {
    41 @values = @{ $prop->{cases} };
    42 }
    43 } else {
    44 $error = 'Похоже неверное описание lookup_opts в документе';
    45 }
    33 46
    34 47 $error = 'Не определен набор значений для поля' unless @values;
    35 48