summaryrefslogtreecommitdiff
path: root/rt/html/REST/1.0/Forms/queue/default
diff options
context:
space:
mode:
Diffstat (limited to 'rt/html/REST/1.0/Forms/queue/default')
-rw-r--r--rt/html/REST/1.0/Forms/queue/default123
1 files changed, 0 insertions, 123 deletions
diff --git a/rt/html/REST/1.0/Forms/queue/default b/rt/html/REST/1.0/Forms/queue/default
deleted file mode 100644
index ce54088..0000000
--- a/rt/html/REST/1.0/Forms/queue/default
+++ /dev/null
@@ -1,123 +0,0 @@
-%# REST/1.0/Forms/queue/default
-%#
-<%ARGS>
-$id
-$format => 's'
-$changes => {}
-</%ARGS>
-<%perl>
-my @comments;
-my ($c, $o, $k, $e) = ("", [], {}, 0);
-my %data = %$changes;
-my $queue = new RT::Queue $session{CurrentUser};
-my @fields = qw(Name Description CorrespondAddress CommentAddress
- InitialPriority FinalPriority DefaultDueIn);
-my %fields = map { lc $_ => $_ } @fields;
-
-if ($id ne 'new') {
- $queue->Load($id);
- if (!$queue->Id) {
- return [ "# Queue $id does not exist.", [], {}, 1 ];
- }
-}
-else {
- if (%data == 0) {
- return [
- "# Required: Name",
- [ "id", @fields ],
- {
- id => 'queue/new',
- Name => '<queue name>',
- Description => "",
- CommentAddress => "",
- CorrespondAddress => "",
- InitialPriority => "",
- FinalPriority => "",
- DefaultDueIn => "",
- },
- 0
- ];
- }
- else {
- my %v;
- my %create = %fields;
-
- foreach my $k (keys %data) {
- if (exists $create{lc $k}) {
- $v{$create{lc $k}} = delete $data{$k};
- }
- }
-
- if ($v{Name} eq '<queue name>') {
- my %o = keys %$changes;
- delete @o{"id", @fields};
- return [
- "# Please set the queue name.",
- [ "id", @fields, keys %o ], $changes, 1
- ];
- }
-
- $queue->Create(%v);
- unless ($queue->Id) {
- return [ "# Could not create queue.", [], {}, 1 ];
- }
-
- delete $data{id};
- $id = $queue->Id;
- push(@comments, "# Queue $id created.");
- goto DONE if %data == 0;
- }
-}
-
-if (%data == 0) {
- my @data;
-
- push @data, [ id => "queue/".$queue->Id ];
- foreach my $key (@fields) {
- push @data, [ $key => $queue->$key ];
- }
-
- my %k = map {@$_} @data;
- $o = [ map {$_->[0]} @data ];
- $k = \%k;
-}
-else {
- my ($get, $set, $key, $val, $n, $s);
-
- foreach $key (keys %data) {
- $val = $data{$key};
- $key = lc $key;
- $n = 1;
-
- if (exists $fields{$key}) {
- $key = $fields{$key};
- $set = "Set$key";
-
- next if $val eq $queue->$key;
- ($n, $s) = $queue->$set($val);
- }
- elsif ($key ne 'id') {
- $n = 0;
- $s = "Unknown field.";
- }
-
- SET:
- if ($n == 0) {
- $e = 1;
- push @comments, "# $key: $s";
- unless (@$o) {
- my %o = keys %$changes;
- delete @o{"id", @fields};
- @$o = ("id", @fields, keys %o);
- $k = $changes;
- }
- }
- }
-
- push(@comments, "# Queue $id updated.") unless $n == 0;
-}
-
-DONE:
-$c ||= join("\n", @comments) if @comments;
-return [ $c, $o, $k, $e ];
-</%perl>