[rt-users] CF Link values
Gerard FENELON
gerard at eve-team.com
Thu Dec 8 09:12:00 EST 2011
On 2011-12-07 22:16, Ruslan Zakirov wrote:
> On Wed, Dec 7, 2011 at 10:11 PM, Gerard FENELON<gerard at eve-team.com> wrote:
>> Hi
>>
>> I am using RT3.8.8
>>
>> I have a CF where the "Link value to" contains
>>
>> http://cvsweb/__CustomField__
>>
>> RT generates a link but if I click on the link I get a 404 error using
>> Firefox.
>> I am pretty sure that I saw this work when I first set it up with RT 3.6
>>
>> If I look at the generated source of the page, I see
>>
>> <td class="value">
>> <a href="http://cvsweb/aaaa%2Fbbbb%2Fcccc%2Fdddd" target="_new">
>> aaaa/bbbb/cccc/dddd</a>
>> </td>
>>
>> The code is in share/html/Elements/ShowCustomFields
>>
>> my $linked = $value->LinkValueTo;
>> if ( defined $linked&& length $linked ) {
>> my $linked = $m->interp->apply_escapes( $linked, 'h' );
>> $m->out('<a href="'. $linked .'" target="_new">');
>> }
>>
>> The code for RT3.6.10 shows
>> my $linked = $cf->LinkValueTo;
>> if ( $linked ) {
>> $m->out('<a href="'. $value->LinkValueTo .'" target="_new">');
>> }
>>
>> How can I tell Mason not to escape '/' and still escape the rest ?
>
> Escaping you have problem with is not happening here. Take a look into
> lib/RT/ObjectCustomFieldValue.pm, method _FillInTemplateURL.
Thanks Ruslan
is it safe to change
CustomField => { value => sub { $_[0]->Content }, escape => 1 },
to
CustomField => { value => sub { $_[0]->Content } },
in _FillInTemplateURL ?
Or should I change
$$ref =~ s/([^a-zA-Z0-9_.!~*'()-])/uc sprintf("%%%02X", ord($1))/eg;
to
$$ref =~ s/([^a-zA-Z0-9_.!~*'()\/-])/uc sprintf("%%%02X", ord($1))/eg;
in RT::Interface::Web::EscapeURI ?
Gerard
More information about the rt-users
mailing list