summaryrefslogtreecommitdiff
path: root/rt/lib
diff options
context:
space:
mode:
authormark <mark>2012-01-26 03:08:40 +0000
committermark <mark>2012-01-26 03:08:40 +0000
commit8246e4cb7222d0af409d7145a95f59e8a3a3324e (patch)
treeec5537104a02a76be395fc349b0373c89b40c637 /rt/lib
parentf149ad40dae3236440a94540e3b534c966bc8e98 (diff)
missing pieces from #14837
Diffstat (limited to 'rt/lib')
-rw-r--r--rt/lib/RT/Ticket_Vendor.pm31
-rw-r--r--rt/lib/RT/Transaction_Vendor.pm2
2 files changed, 33 insertions, 0 deletions
diff --git a/rt/lib/RT/Ticket_Vendor.pm b/rt/lib/RT/Ticket_Vendor.pm
index 9fa24a2a8..a55bb7b0d 100644
--- a/rt/lib/RT/Ticket_Vendor.pm
+++ b/rt/lib/RT/Ticket_Vendor.pm
@@ -13,6 +13,37 @@ sub SetPriority {
$Ticket->SUPER::SetPriority($value);
}
+=head2 Touch
+
+Creates a Touch transaction (a null transaction). Like Comment and
+Correspond but without any content.
+
+=cut
+
+sub Touch {
+ my $self = shift;
+ my %args = (
+ TimeTaken => 0,
+ ActivateScrips => 1,
+ CommitScrips => 1,
+ CustomFields => {},
+ @_
+ );
+ unless ( $self->CurrentUserHasRight('ModifyTicket')
+ or $self->CurrentUserHasRight('CommentOnTicket')
+ or $self->CurrentUserHasRight('ReplyToTicket')) {
+ return ( 0, $self->loc("Permission Denied"));
+ }
+ $self->_NewTransaction(
+ Type => 'Touch',
+ TimeTaken => $args{'TimeTaken'},
+ ActivateScrips => $args{'ActivateScrips'},
+ CommitScrips => $args{'CommitScrips'},
+ CustomFields => $args{'CustomFields'},
+ );
+}
+
+
=head2 MissingRequiredFields {
Return all custom fields with the Required flag set for which this object
diff --git a/rt/lib/RT/Transaction_Vendor.pm b/rt/lib/RT/Transaction_Vendor.pm
index caeb3f72c..99198c2f0 100644
--- a/rt/lib/RT/Transaction_Vendor.pm
+++ b/rt/lib/RT/Transaction_Vendor.pm
@@ -31,5 +31,7 @@ $_BriefDescriptions{'Set'} = sub {
}
};
+$_BriefDescriptions{'Touch'} = sub { 'Updated' };
+
1;