[Rt-commit] r9305 - rtir/branches/2.3-EXPERIMENTAL/lib/RT/Action

ruz at bestpractical.com ruz at bestpractical.com
Sun Oct 14 21:44:08 EDT 2007


Author: ruz
Date: Sun Oct 14 21:44:08 2007
New Revision: 9305

Modified:
   rtir/branches/2.3-EXPERIMENTAL/lib/RT/Action/RTIR_MergeIPs.pm

Log:
* don't duplicate IPs

Modified: rtir/branches/2.3-EXPERIMENTAL/lib/RT/Action/RTIR_MergeIPs.pm
==============================================================================
--- rtir/branches/2.3-EXPERIMENTAL/lib/RT/Action/RTIR_MergeIPs.pm	(original)
+++ rtir/branches/2.3-EXPERIMENTAL/lib/RT/Action/RTIR_MergeIPs.pm	Sun Oct 14 21:44:08 2007
@@ -35,12 +35,17 @@
     my $target = $uri_obj->Object;
     return 1 if $target->id eq $txn->ObjectId;
 
+    my $has_values = $target->CustomFieldValues( '_RTIR_IP' );
+
     my $source = RT::Ticket->new( $self->CurrentUser );
     $source->LoadById( $txn->ObjectId );
-    my $values = $source->CustomFieldValues( '_RTIR_IP' );
-    while ( my $value = $values->Next ) {
+    my $add_values = $source->CustomFieldValues( '_RTIR_IP' );
+    while ( my $value = $add_values->Next ) {
+        my $ip = $value->Content;
+        next if $has_values->HasEntry( $ip );
+
         my ($status, $msg) = $target->AddCustomFieldValue(
-            Value => $value->Content,
+            Value => $ip,
             Field => '_RTIR_IP',
         );
         $RT::Logger->error("Couldn't add IP address: $msg")


More information about the Rt-commit mailing list