[Rt-commit] r9862 - rt/branches/3.6-EXPERIMENTAL-ABERDEEN/lib/RT/Extension

audreyt at bestpractical.com audreyt at bestpractical.com
Sun Dec 9 17:17:56 EST 2007


Author: audreyt
Date: Sun Dec  9 17:17:54 2007
New Revision: 9862

Modified:
   rt/branches/3.6-EXPERIMENTAL-ABERDEEN/lib/RT/Extension/RulesManager.pm

Log:
* Some stub methods for RulesManager

Modified: rt/branches/3.6-EXPERIMENTAL-ABERDEEN/lib/RT/Extension/RulesManager.pm
==============================================================================
--- rt/branches/3.6-EXPERIMENTAL-ABERDEEN/lib/RT/Extension/RulesManager.pm	(original)
+++ rt/branches/3.6-EXPERIMENTAL-ABERDEEN/lib/RT/Extension/RulesManager.pm	Sun Dec  9 17:17:54 2007
@@ -6,18 +6,42 @@
 }
 
 sub load {
-    my $self = shift;
-    my $id   = shift;
+    my $self  = shift;
+    my $id    = shift;
+    my $rules = $self->rules;
+    return undef if $id <= 0 or $id >= @$rules;
+    return $rules->[$id-1];
+}
+
+sub raise {
+    my $self  = shift;
+    my $id    = shift;
+    my $rules = $self->rules;
+    return undef if $id <= 1 or $id >= @$rules;
+    @{$rules}[$id-1, $id-2] = @{$rules}[$id-2, $id-1];
+    $rules->[$id-1]{_pos} = $id-1;
+    $rules->[$id-2]{_pos} = $id-2;
+    return $id;
 }
 
 sub named {
     my $self = shift;
     my $name = shift;
+    foreach my $rule (@{$self->rules}) {
+        return $rule if $rule->name eq $name;
+    }
+    return undef;
 }
 
 sub rules {
     my $self = shift;
-    my $rules = $self->_load;
+    my $rules = $self->_load || [];
+    for my $i (0..$#$rules) {
+        $rules->[$i]{_pos} = $i;
+        $rules->[$i]{_root} = $rules;
+        bless $rules->[$i] => 'RT::Extension::RuleManager::Rule';
+    }
+    return $rules;
 }
 
 1;


More information about the Rt-commit mailing list