[Rt-devel] [PATCH] 3.6.HEAD REST fix.
Dmitri Tikhonov
dtikhonov at yahoo.com
Wed Aug 9 19:34:36 EDT 2006
The problem still exists in 3.6.1 (tested with PostgreSQL). However,
now I am a bit confused -- I was able to create custom fields "Broken
in", "broken in", and "broken in" again -- is that the desired
behavior?
- Dmitri.
--- Dmitri Tikhonov <dtikhonov at yahoo.com> wrote:
> Hi Ruslan,
>
> thanks for the commit (5652). However, the second part of the patch
> (casesensitive => 0) should still be applied. I now tested with
> SQLite
> and Postgres, and without this patch custom fields with upper-case
> letters in them cannot get updated using REST interface.
>
> - Dmitri.
>
>
> --- Dmitri Tikhonov <dtikhonov at yahoo.com> wrote:
>
> > Hi List,
> >
> > the attached patch fixes REST's custom field handling in RT
> 3.6.HEAD
> > (the patch is against revision 5647).
> >
> > RT/CustomField_Overlay.pm is changed because
> > REST/1.0/Forms/ticket/default lowercases all keys and
> $cf->LoadByName
> > cannot find "broken in", for instance (defined as "Broken in").
> >
> > If this significantly changes semantics of other parts of rt, the
> fix
> > may have to be moved to REST/1.0/Forms/ticket/default -- keep the
> > original, not lowercased, version of $key for CF's consumption.
> >
> > I tested using SQLite.
> >
> > - Dmitri.
> >
> > Reference:
> >
>
http://lists.bestpractical.com/pipermail/rt-devel/2006-July/008665.html
> > > Index: RT/CustomField_Overlay.pm
> > ===================================================================
> > RCS file: /home/dmitri/cvs/rt3/lib/RT/CustomField_Overlay.pm,v
> > retrieving revision 1.1.1.1
> > retrieving revision 1.2
> > diff -u -r1.1.1.1 -r1.2
> > --- RT/CustomField_Overlay.pm 22 Jul 2006 23:24:32 -0000 1.1.1.1
> > +++ RT/CustomField_Overlay.pm 23 Jul 2006 23:36:38 -0000 1.2
> > @@ -289,7 +289,7 @@
> >
> > my $CFs = RT::CustomFields->new($self->CurrentUser);
> >
> > - $CFs->Limit( FIELD => 'Name', VALUE => $args{'Name'} );
> > + $CFs->Limit( FIELD => 'Name', VALUE => $args{'Name'},
> > CASESENSITIVE => 0 );
> > # Don't limit to queue if queue is 0. Trying to do so breaks
> > # RT::Group type CFs.
> > if (defined $args{'Queue'}) {
> > Index: RT/Interface/REST.pm
> > ===================================================================
> > RCS file: /home/dmitri/cvs/rt3/lib/RT/Interface/REST.pm,v
> > retrieving revision 1.1.1.1
> > retrieving revision 1.2
> > diff -u -r1.1.1.1 -r1.2
> > --- RT/Interface/REST.pm 22 Jul 2006 23:24:32 -0000 1.1.1.1
> > +++ RT/Interface/REST.pm 23 Jul 2006 23:37:39 -0000 1.2
> > @@ -60,7 +60,7 @@
> > @EXPORT = qw(expand_list form_parse form_compose vpush
> vsplit);
> > }
> >
> > -my $field = '[a-zA-Z][a-zA-Z0-9_-]*';
> > +my $field = '(?:[a-zA-Z][a-zA-Z0-9_-]*|[Cc][Ff]-[a-zA-Z0-9_ -]+)';
> >
> > # WARN: this code is duplicated in bin/rt.in,
> > # change both functions at once
> > > _______________________________________________
> > List info:
> > http://lists.bestpractical.com/cgi-bin/mailman/listinfo/rt-devel
> >
> > Best Practical is hiring! Come hack Perl for us:
> http://bestpractical.com/about/jobs.html
>
> _______________________________________________
> List info:
> http://lists.bestpractical.com/cgi-bin/mailman/listinfo/rt-devel
>
> Best Practical is hiring! Come hack Perl for us:
> http://bestpractical.com/about/jobs.html
>
More information about the Rt-devel
mailing list