import rt 2.0.14
[freeside.git] / rt / webrt / Ticket / Elements / Tabs
1 <& /Elements/Tabs, tabs => $tabs, actions => $actions, current_tab => $current_tab, tabs_scalar => $tabs_scalar &>
2 <%INIT>
3         
4   my $id = $Ticket->id();
5   my $tabs_scalar = '';
6   my $tabs = {
7                  A => { title => 'Display',
8                         path => "Ticket/Display.html?id=".$id,
9                       },
10               
11               Ab => { title => 'History',
12                       path => "Ticket/History.html?id=".$id,
13                        },
14               B => { title => 'Basics',
15                      path => "Ticket/Modify.html?id=".$id,
16                    },
17               
18               C => { title => 'Dates',
19                      path => "Ticket/ModifyDates.html?id=".$id,
20                    },
21               
22               D => { title => 'People',
23                      path => "Ticket/ModifyPeople.html?id=".$id,
24                    },
25               E => { title => 'Links',
26                      path => "Ticket/ModifyLinks.html?id=".$id,
27                    },
28               F => { title => 'Jumbo',
29                      path => "Ticket/ModifyAll.html?id=".$id,
30                    },
31               
32              };
33
34 my $actions;
35 if ($Ticket->CurrentUserHasRight('ModifyTicket') or 
36     $Ticket->CurrentUserHasRight('CommentOnTicket')) {
37     $actions->{'Comment'} = 
38       { 
39        title => 'Comment',
40         path => "Ticket/Update.html?Action=Comment&id=".$id,
41       }
42   };
43
44 if ($Ticket->CurrentUserHasRight('ModifyTicket') or 
45     $Ticket->CurrentUserHasRight('ReplyToTicket')) {
46     $actions->{'Reply'} = 
47       { 
48        title => 'Reply',
49        path => "Ticket/Update.html?Action=Respond&id=".$id,
50       }
51   };
52
53 if ($Ticket->CurrentUserHasRight('OwnTicket')) {
54     if ($Ticket->OwnerObj->id == $RT::Nobody->id)  {
55         $actions->{'Take'} =    
56           { 
57            path => "Ticket/Display.html?Action=Take&id=".$id,
58            title => 'Take'
59           };
60     }
61     elsif ( $Ticket->OwnerObj->id != $session{CurrentUser}->id) {
62         $actions->{'Steal'} =   
63           { 
64            path => "Ticket/Display.html?Action=Steal&id=".$id,
65            title => 'Steal' 
66           };
67     }
68 }
69
70 if ($Ticket->CurrentUserHasRight('ModifyTicket')) {
71     if ($Ticket->Status ne 'resolved') {
72         $actions->{'Resolve'} = 
73           { 
74
75            path => "Ticket/Update.html?Action=Comment&DefaultStatus=resolved&id=".$id,
76            title => 'Resolve'
77           };
78     }   
79     if ($Ticket->Status ne 'open') {    
80         $actions->{'Open'} = 
81           { 
82            path => "Ticket/Display.html?Status=open&id=". $id,
83            title => 'Open'
84           };
85     }
86 }
87
88
89
90
91 if (defined $session{'tickets'}) {
92     my $items = $session{'tickets'}->ItemsArrayRef();
93     my @indexs = grep(($items->[$_]->id == $Ticket->Id), 0 .. $#{$items});
94
95     if ($items->[0]) {
96
97     if ($items->[$indexs[0]]->id == $Ticket->Id) {
98         # Don't display prev links if we're on the first ticket
99         if ( $items->[0]->id != $Ticket->id ) {
100             $tabs_scalar .= '[<A HREF="Display.html?id='.
101               $items->[0]->id.
102                 '">&lt;&lt; First</a>] ';
103             $tabs_scalar .= '[<A HREF="Display.html?id='.
104               $items->[$indexs[0]-1]->id.
105                 '">&lt; Prev</a>] ';
106         }
107         # Don't display next links if we're on the last ticket
108         if ( $Ticket->id != $items->[-1]->id ) {
109             $tabs_scalar .= '[<A HREF="Display.html?id='.
110               $items->[$indexs[0]+1]->id.
111                 '">Next &gt;</a>] ';
112             $tabs_scalar .= '[<A HREF="Display.html?id='.
113               $items->[-1]->id.
114                 '">Last &gt;&gt</a>]';
115         }
116         $tabs_scalar .= "<BR><BR>";
117     }
118     }
119 }
120 </%INIT>
121
122   
123 <%ARGS>
124 $Ticket => undef
125 $current_tab => undef
126 </%ARGS>