RT#34237: installer scheduling [fix steal]
authorJonathan Prykop <jonathan@freeside.biz>
Mon, 11 Apr 2016 15:01:00 +0000 (10:01 -0500)
committerJonathan Prykop <jonathan@freeside.biz>
Mon, 11 Apr 2016 15:30:25 +0000 (10:30 -0500)
httemplate/misc/xmlhttp-ticket-update.html

index e81e353..8735eec 100644 (file)
@@ -13,7 +13,13 @@ my $ticket = FS::TicketSystem->get_ticket_object( \%session, ticket_id=>$id );
 my $return;
 if ( $ticket ) {
 
-  my($orv, $omsg) = $ticket->SetOwner( $username );
+  my $curowner = $ticket->OwnerObj->Name;
+  my($orv, $omsg);
+  if (( $curowner eq $FS::CurrentUser::CurrentUser->username ) or ( $curowner eq 'nobody' )) {
+    ($orv, $omsg) = $ticket->SetOwner( $username );
+  } else {
+    ($orv, $omsg) = $ticket->SetOwner( $username, 'Steal' );
+  }
   $orv = 1 if ! $orv && $omsg =~ /already own/i;
 
   if ( $orv ) {