[Rt-commit] r10721 - in rt/branches/3.999-DANGEROUS/html/REST/1.0: ticket
sunnavy at bestpractical.com
sunnavy at bestpractical.com
Mon Feb 4 18:07:14 EST 2008
Author: sunnavy
Date: Mon Feb 4 18:07:11 2008
New Revision: 10721
Modified:
rt/branches/3.999-DANGEROUS/html/REST/1.0/Forms/ticket/links
rt/branches/3.999-DANGEROUS/html/REST/1.0/ticket/link
Log:
fix link tests failures
Modified: rt/branches/3.999-DANGEROUS/html/REST/1.0/Forms/ticket/links
==============================================================================
--- rt/branches/3.999-DANGEROUS/html/REST/1.0/Forms/ticket/links (original)
+++ rt/branches/3.999-DANGEROUS/html/REST/1.0/Forms/ticket/links Mon Feb 4 18:07:11 2008
@@ -56,7 +56,6 @@
my @data;
$format ||= 's';
my $ticket = RT::Model::Ticket->new();
-
$ticket->load($id);
if (!$ticket->id) {
return [ "# Ticket $id does not exist.", [], {}, 1 ];
@@ -67,12 +66,12 @@
my %fields = map { lc $_ => $_ } @fields;
my %lfields = (
- members => { type => 'MemberOf', Mode => 'base' },
- referred_to_By => { type => 'RefersTo', Mode => 'base' },
- depended_on_by => { type => 'DependsOn', Mode => 'base' },
- member_of => { type => 'MemberOf', Mode => 'target' },
- refers_to => { type => 'RefersTo', Mode => 'target' },
- depends_on => { type => 'DependsOn', Mode => 'target' },
+ members => { type => 'MemberOf', mode => 'base' },
+ referred_to_by => { type => 'RefersTo', mode => 'base' },
+ depended_on_by => { type => 'DependsOn', mode => 'base' },
+ member_of => { type => 'MemberOf', mode => 'target' },
+ refers_to => { type => 'RefersTo', mode => 'target' },
+ depends_on => { type => 'DependsOn', mode => 'target' },
);
if ($changes) {
@@ -89,7 +88,7 @@
$key = $fields{$key};
my %old;
- my $field = $lfields{$key}->{Mode};
+ my $field = $lfields{$key}->{mode};
while (my $link = $ticket->$key->next) {
$old{$link->$field} = 1;
}
@@ -117,15 +116,15 @@
delete $new{$u};
}
else {
- my $type = $lfields{$key}->{Type};
- my $mode = $lfields{$key}->{Mode};
+ my $type = $lfields{$key}->{type};
+ my $mode = $lfields{$key}->{mode};
($n, $s) = $ticket->delete_link(type => $type, $mode => $u);
goto SET;
}
}
foreach my $u (keys %new) {
- my $type = $lfields{$key}->{Type};
- my $mode = $lfields{$key}->{Mode};
+ my $type = $lfields{$key}->{type};
+ my $mode = $lfields{$key}->{mode};
($n, $s) = $ticket->add_link(type => $type, $mode => $u);
goto SET;
}
@@ -156,12 +155,12 @@
foreach my $key (@fields) {
my @val;
- my $field = $lfields{$key}->{Mode};
+ my $field = $lfields{$key}->{mode};
while (my $link = $ticket->$key->next) {
push @val, $link->$field;
}
push(@val, "") if (@val == 0 && defined $format && $format eq 'l');
- push @data, [ $key => [ @val ] ] if @val;
+ push @data, [ camel_to_pascal($key) => [ @val ] ] if @val;
}
my %k = map {@$_} @data;
@@ -169,5 +168,13 @@
$k = \%k;
}
+sub camel_to_pascal {
+ my $name = shift;
+ return unless $name;
+ $name =~ s/^(\w)/uc $1/ge;
+ $name =~ s/_(\w)/uc $1/ge;
+ return $name;
+}
+
return [ $c, $o, $k, $e ];
</%INIT>
Modified: rt/branches/3.999-DANGEROUS/html/REST/1.0/ticket/link
==============================================================================
--- rt/branches/3.999-DANGEROUS/html/REST/1.0/ticket/link (original)
+++ rt/branches/3.999-DANGEROUS/html/REST/1.0/ticket/link Mon Feb 4 18:07:11 2008
@@ -55,7 +55,6 @@
</%ARGS>
<%INIT>
use RT::Interface::REST;
-
my $output;
my $status = "200 Ok";
my $ticket = RT::Model::Ticket->new();
@@ -64,12 +63,12 @@
my @fields = qw(DependsOn DependedOnBy RefersTo ReferredToBy has_member MemberOf);
my %fields = map { lc $_ => $_ } @fields;
my %lfields = (
- has_member => { type => 'MemberOf', Mode => 'base' },
- ReferredToBy => { type => 'RefersTo', Mode => 'base' },
- DependedOnBy => { type => 'DependsOn', Mode => 'base' },
- MemberOf => { type => 'MemberOf', Mode => 'target' },
- RefersTo => { type => 'RefersTo', Mode => 'target' },
- DependsOn => { type => 'DependsOn', Mode => 'target' },
+ has_member => { type => 'MemberOf', mode => 'base' },
+ ReferredToBy => { type => 'RefersTo', mode => 'base' },
+ DependedOnBy => { type => 'DependsOn', mode => 'base' },
+ MemberOf => { type => 'MemberOf', mode => 'target' },
+ RefersTo => { type => 'RefersTo', mode => 'target' },
+ DependsOn => { type => 'DependsOn', mode => 'target' },
);
# http://.../REST/1.0/ticket/link/1
@@ -102,8 +101,8 @@
goto OUTPUT;
}
-my $type = $lfields{$rel}->{Type};
-my $mode = $lfields{$rel}->{Mode};
+my $type = $lfields{$rel}->{type};
+my $mode = $lfields{$rel}->{mode};
my $n = 1;
my $op = $del ? "delete_link" : "add_link";
More information about the Rt-commit
mailing list