[Rt-commit] rt branch, 5.0/rest2-query-by-json-support-custom-fields, repushed

Craig Kaiser craig at bestpractical.com
Thu Mar 4 11:41:47 EST 2021


The branch 5.0/rest2-query-by-json-support-custom-fields was deleted and repushed:
       was 0d62088a908d8135c518c6c78d64f32507030642
       now 89424af10b8cf74ee6d46bfc6aad13acc3abb190

1: ee70d6b23a ! 1: 9a4672d14a Add support for custom fields in REST2 JSON query
    @@ -9,7 +9,7 @@
          $collection->{'find_disabled_rows'} = 1
              if $self->request->param('find_disabled_rows');
      
    -+    my $customFieldObject = RT::CustomField->new( $self->request->env->{"rt.current_user"} );
    ++    my $custom_field_object = RT::CustomField->new( $self->request->env->{"rt.current_user"} );
     +
          for my $limit (@$query) {
     -        next unless $limit->{field}
    @@ -38,51 +38,36 @@
     +            );
     +        }
     +        elsif ( $limit->{'CustomField'} ) {
    -+            my ($ret, $msg) = $customFieldObject->Load( $limit->{'CustomField'} );
    -+            unless ( $ret && $customFieldObject->Id ) {
    ++
    ++            my ($ret, $msg) = $custom_field_object->LoadByName(
    ++                Name          => "$limit->{'CustomField'}",
    ++                LookupType    => $collection->RecordClass->CustomFieldLookupType,
    ++                IncludeGlobal => 1
    ++            );
    ++
    ++            unless ( $ret && $custom_field_object->Id ) {
     +                RT::Logger->error( "Could not load custom field: $limit->{'CustomField'}: $msg" );
     +                next;
     +            }
     +
     +            $collection->LimitCustomField(
     +              VALUE       => $limit->{'value'},
    -+              CUSTOMFIELD => $customFieldObject->Id,
    ++              CUSTOMFIELD => $custom_field_object->Id,
     +              ( $limit->{operator}
                      ? (OPERATOR => $limit->{operator})
                      : () ),
    -             CASESENSITIVE => ($limit->{case_sensitive} || 0),
    -             ( $limit->{entry_aggregator}
    -                 ? (ENTRYAGGREGATOR => $limit->{entry_aggregator})
    -                 : () ),
    +-            CASESENSITIVE => ($limit->{case_sensitive} || 0),
    +-            ( $limit->{entry_aggregator}
    +-                ? (ENTRYAGGREGATOR => $limit->{entry_aggregator})
    +-                : () ),
     -        );
     +            );
     +        }
          }
     -
    -     my @orderby_cols;
    --    my @orders = $self->request->param('order');
    --    foreach my $orderby ($self->request->param('orderby')) {
    --        my $order = shift @orders || 'ASC';
    --        $order = uc($order);
    --        $order = 'ASC' unless $order eq 'DESC';
    --        push @orderby_cols, {FIELD => $orderby, ORDER => $order};
    --    }
    --    $self->collection->OrderByCols(@orderby_cols)
    --        if @orderby_cols;
    --
    --    return 1;
    -+      my @orders = $self->request->param('order');
    -+      foreach my $orderby ($self->request->param('orderby')) {
    -+          my $order = shift @orders || 'ASC';
    -+          $order = uc($order);
    -+          $order = 'ASC' unless $order eq 'DESC';
    -+          push @orderby_cols, {FIELD => $orderby, ORDER => $order};
    -+      }
    -+      $self->collection->OrderByCols(@orderby_cols)
    -+          if @orderby_cols;
    -+
    -+      return 1;
    - }
    - 
    - 1;
    +-    my @orderby_cols;
    ++  my @orderby_cols;
    +     my @orders = $self->request->param('order');
    +     foreach my $orderby ($self->request->param('orderby')) {
    +         my $order = shift @orders || 'ASC';
     
2: df6e0ea95c = 2: 3890d94a8f Add test for searching users custom fields with REST2
3: 0d62088a90 ! 3: 89424af10b Add test for searching groups based on custom fields with REST2
    @@ -1,6 +1,6 @@
     Author: craig kaiser <craig at bestpractical.com>
     
    -    Add test for searching groups based on custom fields
    +    Add test for searching groups based on custom fields with REST2
     
     diff --git a/t/rest2/groups.t b/t/rest2/groups.t
     new file mode 100644



More information about the rt-commit mailing list