[rt-users] Replacing functions
Tuc at T-B-O-H.NET
ml at t-b-o-h.net
Wed Feb 6 15:52:06 EST 2008
Hi,
Understood, thank you.
Yes, the wiki didn't seem to indicate that. I only saw
"The real RT code is in XXX_Overlay.pm.". Since the EmailParser.pm
doesn't have a _Overlay, I wasn't sure it was eligible for it.
That xargs doesn't work on my FreeBSD, but I'll figure
that out myself.
Thanks again.
Tuc
>
> In the bottom of main .pm file you can find something like:
> eval "require RT::EmailParser_Vendor";
> die $@ if ($@ && $@ !~ qr{^Can't locate RT/EmailParser_Vendor.pm});
> eval "require RT::EmailParser_Local";
> die $@ if ($@ && $@ !~ qr{^Can't locate RT/EmailParser_Local.pm});
>
> Such code loads matching _Vendor.pm and _Local.pm files. So you can
> use local/lib/RT/EmailParser_Local.pm to override that function.
> _Overlay.pm we use only where main .pm file is auto-generated by a
> tool, but that doesn't mean you can not use _Local.pm files for those
> without overlay.pm.
>
> You can use the following command to test that:
> find lib/ -type f -name '*.pm' | xargs grep -lP 'require\s.*_Local'
>
> Please, update the wiki with this info so next time people will get
> everything right without asking.
>
> On Feb 6, 2008 9:39 PM, Tuc at T-B-O-H <ml at t-b-o-h.net> wrote:
> > Hi,
> >
> > I saw that, but the original file isn't in a XXX_Overlay.pm file
> > currently. Does that not make it eligible for overlay/local? I'd rather
> > not use the local dir and overwrite the entire module, just the
> > LookupExternalUserInfo function.
> >
> > Thanks, Tuc
> >
> >
> > >
> > > http://wiki.bestpractical.com/view/CleanlyCustomizeRT
> > > read about overlays and local dir
> > >
> > > On Feb 5, 2008 11:13 PM, Tuc at T-B-O-H <ml at t-b-o-h.net> wrote:
> > > > Hi,
> > > >
> > > > In RT2 we used to override the LookupExternalUserInfo in the
> > > > config file. I read about RT3 doing it in a _Local file, but I
> > > > see things on Google with people putting in User_Local.pm . Shouldn't
> > > > it go in EmailParser_Local.pm? And does it go into my $RT/etc/
> > > > directory or the $RT/lib/RT directory?
> > > >
> > > > (FreeBSD ports install)
> > > >
> > > > Thanks, Tuc
> >
> > _______________________________________________
> > http://lists.bestpractical.com/cgi-bin/mailman/listinfo/rt-users
> >
> > Community help: http://wiki.bestpractical.com
> > Commercial support: sales at bestpractical.com
> >
> >
> > Discover RT's hidden secrets with RT Essentials from O'Reilly Media.
> > Buy a copy at http://rtbook.bestpractical.com
> >
>
>
>
> --
> Best regards, Ruslan.
>
More information about the rt-users
mailing list