Hello,

We're running RT 4.0.4 on RHEL6 and we have noticed that any custom field with 
"Validation" set (to "Mandatory", for example) will always display the 
validation error text "Input Must Match [Mandatory]" even when the custom field 
is populated with a value.  These error messages are displayed when we view the 
"Jumbo" version of the ticket or when we click the "Custom Fields" box link 
which then displays Ticket/Modify.html.  This seems to happen for all types of 
custom fields, but to give one specific example, we're definitely seeing this 
for custom fields using "Select one value", "Select box", and applies to 
"Tickets". 

I've spent the last hour debugging this issue.  Here's what I've found:
- the error text is generated in html/Elements/ValidateCustomFields
- no custom field values end up in html/Elements/ValidateCustomFields (i.e. the 
@values array) because its initial source of values, $ARGSRef, is always empty.
- two of the pages where these errors occur, Tickets/Modify.html and 
Tickets/ModifyAll.html, are calling Elements/ValidateCustomFields with $ARGSRef 
always set to {}, which is why $ARGSRef in ValidateCustomFields is always empty.
- I changed the ValidateCustomFields call in Tickets/Modify.html from $ARGSRef 
=> {} to $ARGSRef => \%ARGS, but this only added an "id" key and value, such as 
this Data::Dumper output: "ARGSRef = $VAR1 = {#012          'id' => 
'362208'#012};"
- So I'm thinking that (1) ValidateCustomFields needs to be called with 
$ARGSRef => \%ARGS and (2) \%ARGS needs to contain the data that 
ValidateCustomFields expects, which are keys of all the custom fields (e.g. 
"Object-RT::Ticket--CustomField-75-Value") and their corresponding values for 
the ticket being processed.

Am I missing something?  Is our installation fried for some reason?  Have we 
forgotten some RT_SiteConfig magic?

Many thanks for any help with this,

Geoff Mayes

Reply via email to