5 # Special case: Pass a value starting with 'R' to set priority
6 # relative to the current level. Used for bulk updates, though
7 # it can be used anywhere else too.
10 if ( $value =~ /^R([+-]?\d+)$/ ) {
11 $value = $1 + ($Ticket->Priority || 0);
13 $Ticket->SUPER::SetPriority($value);
16 =head2 MissingRequiredFields {
18 Return all custom fields with the Required flag set for which this object
19 doesn't have any non-empty values.
23 sub MissingRequiredFields {
25 my $CustomFields = $self->CustomFields;
27 while ( my $CF = $CustomFields->Next ) {
28 next if !$CF->Required;
29 if ( !length($self->FirstCustomFieldValue($CF->Id) || '') ) {
36 # Declare the 'WillResolve' field
37 sub _VendorAccessible {
40 {read => 1, write => 1, sql_type => 11, length => 0, is_blob => 0, is_numeric => 0, type => 'datetime', default => ''},
47 my $time = new RT::Date( $self->CurrentUser );
49 if ( my $willresolve = $self->WillResolve ) {
50 $time->Set( Format => 'sql', Value => $willresolve );
53 $time->Set( Format => 'unix', Value => -1 );
59 sub WillResolveAsString {
61 return $self->WillResolveObj->AsString();