Upgrade to 4.0.13
[usit-rt.git] / etc / initialdata
1 # Initial data for a fresh RT installation.
2
3 @Users = (
4     {  Name         => 'root',
5        Gecos        => 'root',
6        RealName     => 'Enoch Root',
7        Password     => 'password',
8        EmailAddress => "root\@localhost",
9        Comments     => 'SuperUser',
10        Privileged   => '1',
11     },
12 );
13
14 @Groups = (
15 );
16
17 @Queues = ({ Name              => 'General',
18              Description       => 'The default queue',
19              CorrespondAddress => "",
20              CommentAddress    => "", },
21            { Name        => '___Approvals',
22              Lifecycle   => 'approvals',
23              Description => 'A system-internal queue for the approvals system',
24              Disabled    => 2, } );
25
26 @ScripActions = (
27
28     {  Name        => 'Autoreply To Requestors',    # loc
29        Description =>
30 'Always sends a message to the requestors independent of message sender' ,                                            # loc
31        ExecModule => 'Autoreply',
32        Argument   => 'Requestor' },
33     { Name        => 'Notify Requestors',                    # loc
34       Description => 'Sends a message to the requestors',    # loc
35       ExecModule  => 'Notify',
36       Argument    => 'Requestor' },
37     { Name        => 'Notify Owner as Comment',              # loc
38       Description => 'Sends mail to the owner',              # loc
39       ExecModule  => 'NotifyAsComment',
40       Argument    => 'Owner' },
41     { Name        => 'Notify Owner',                         # loc
42       Description => 'Sends mail to the owner',              # loc
43       ExecModule  => 'Notify',
44       Argument    => 'Owner' },
45     { Name        => 'Notify Ccs as Comment',              # loc
46       Description => 'Sends mail to the Ccs as a comment', # loc
47       ExecModule  => 'NotifyAsComment',
48       Argument    => 'Cc' },
49     { Name        => 'Notify Ccs',                                   # loc
50       Description => 'Sends mail to the Ccs',                        # loc
51       ExecModule  => 'Notify',
52       Argument    => 'Cc' },
53     { Name        => 'Notify AdminCcs as Comment',                        # loc
54       Description => 'Sends mail to the administrative Ccs as a comment', # loc
55       ExecModule  => 'NotifyAsComment',
56       Argument    => 'AdminCc' },
57     { Name        => 'Notify AdminCcs',                                   # loc
58       Description => 'Sends mail to the administrative Ccs',              # loc
59       ExecModule  => 'Notify',
60       Argument    => 'AdminCc' },
61
62     { Name        => 'Notify Requestors and Ccs as Comment',              # loc
63       Description => 'Send mail to requestors and Ccs as a comment',      # loc
64       ExecModule  => 'NotifyAsComment',
65       Argument    => 'Requestor,Cc' },
66
67     { Name        => 'Notify Requestors and Ccs',                         # loc
68       Description => 'Send mail to requestors and Ccs',                   # loc
69       ExecModule  => 'Notify',
70       Argument    => 'Requestor,Cc' },
71
72     { Name        => 'Notify Owner, Requestors, Ccs and AdminCcs as Comment',    # loc
73       Description => 'Send mail to owner and all watchers as a "comment"',          # loc
74       ExecModule  => 'NotifyAsComment',
75       Argument    => 'All' },
76     { Name        => 'Notify Owner, Requestors, Ccs and AdminCcs',               # loc
77       Description => 'Send mail to owner and all watchers',                         # loc
78       ExecModule  => 'Notify',
79       Argument    => 'All' },
80     { Name        => 'Notify Other Recipients as Comment',                # loc
81       Description => 'Sends mail to explicitly listed Ccs and Bccs',      # loc
82       ExecModule  => 'NotifyAsComment',
83       Argument    => 'OtherRecipients' },
84     { Name        => 'Notify Other Recipients',                           # loc
85       Description => 'Sends mail to explicitly listed Ccs and Bccs',      # loc
86       ExecModule  => 'Notify',
87       Argument    => 'OtherRecipients' },
88     { Name        => 'User Defined',                                      # loc
89       Description => 'Perform a user-defined action',                     # loc
90       ExecModule  => 'UserDefined', },
91     {  Name        => 'Create Tickets',                                    # loc
92        Description =>
93          'Create new tickets based on this scrip\'s template',             # loc
94        ExecModule => 'CreateTickets', },
95     { Name        => 'Open Tickets',                                      # loc
96       Description => 'Open tickets on correspondence',                    # loc
97       ExecModule  => 'AutoOpen' },
98     { Name        => 'Extract Subject Tag',                               # loc
99       Description => 'Extract tags from a Transaction\'s subject and add them to the Ticket\'s subject.', # loc
100       ExecModule  => 'ExtractSubjectTag' },
101 );
102
103 @ScripConditions = (
104     { Name                 => 'On Create',                                # loc
105       Description          => 'When a ticket is created',                 # loc
106       ApplicableTransTypes => 'Create',
107       ExecModule           => 'AnyTransaction', },
108
109     { Name                 => 'On Transaction',                           # loc
110       Description          => 'When anything happens',                    # loc
111       ApplicableTransTypes => 'Any',
112       ExecModule           => 'AnyTransaction', },
113     {
114
115       Name                 => 'On Correspond',                             # loc
116       Description          => 'Whenever correspondence comes in',          # loc
117       ApplicableTransTypes => 'Correspond',
118       ExecModule           => 'AnyTransaction', },
119
120     {
121
122       Name                 => 'On Forward',                                # loc
123       Description          => 'Whenever a ticket or transaction is forwarded', # loc
124       ApplicableTransTypes => 'Forward Transaction,Forward Ticket',
125       ExecModule           => 'AnyTransaction', },
126
127     {
128
129       Name                 => 'On Forward Ticket',                         # loc
130       Description          => 'Whenever a ticket is forwarded',            # loc
131       ApplicableTransTypes => 'Forward Ticket',
132       ExecModule           => 'AnyTransaction', },
133
134     {
135
136       Name                 => 'On Forward Transaction',                    # loc
137       Description          => 'Whenever a transaction is forwarded',       # loc
138       ApplicableTransTypes => 'Forward Transaction',
139       ExecModule           => 'AnyTransaction', },
140
141     {
142
143       Name                 => 'On Comment',                                # loc
144       Description          => 'Whenever comments come in',                 # loc
145       ApplicableTransTypes => 'Comment',
146       ExecModule           => 'AnyTransaction' },
147     {
148
149       Name                 => 'On Status Change',                          # loc
150       Description          => 'Whenever a ticket\'s status changes',       # loc
151       ApplicableTransTypes => 'Status',
152       ExecModule           => 'AnyTransaction',
153
154     },
155     {
156
157       Name                 => 'On Priority Change',                       # loc
158       Description          => 'Whenever a ticket\'s priority changes',    # loc
159       ApplicableTransTypes => 'Set',
160       ExecModule           => 'PriorityChange',
161     },
162     {
163
164       Name                 => 'On Owner Change',                           # loc
165       Description          => 'Whenever a ticket\'s owner changes',        # loc
166       ApplicableTransTypes => 'Any',
167       ExecModule           => 'OwnerChange',
168
169     },
170     {
171
172       Name                 => 'On Queue Change',                           # loc
173       Description          => 'Whenever a ticket\'s queue changes',        # loc
174       ApplicableTransTypes => 'Set',
175       ExecModule           => 'QueueChange',
176
177     },
178     {  Name                 => 'On Resolve',                               # loc
179        Description          => 'Whenever a ticket is resolved',            # loc
180        ApplicableTransTypes => 'Status',
181        ExecModule           => 'StatusChange',
182        Argument             => 'resolved'
183
184     },
185     {  Name                 => 'On Reject',                                # loc
186        Description          => 'Whenever a ticket is rejected',            # loc
187        ApplicableTransTypes => 'Status',
188        ExecModule           => 'StatusChange',
189        Argument             => 'rejected'
190
191     },
192     {  Name                 => 'User Defined',                             # loc
193        Description          => 'Whenever a user-defined condition occurs', # loc
194        ApplicableTransTypes => 'Any',
195        ExecModule           => 'UserDefined'
196
197     },
198
199     {  Name                 => 'On Close',                                 # loc
200        Description          => 'Whenever a ticket is closed', # loc
201        ApplicableTransTypes => 'Status,Set',
202        ExecModule           => 'CloseTicket',
203     },
204     {  Name                 => 'On Reopen',                                # loc
205        Description          => 'Whenever a ticket is reopened', # loc
206        ApplicableTransTypes => 'Status,Set',
207        ExecModule           => 'ReopenTicket',
208     },
209
210 );
211
212 @Templates = (
213     { Queue       => '0',
214       Name        => 'Blank',                                             # loc
215       Description => 'A blank template',                                  # loc
216       Content     => '', },
217     {  Queue       => '0',
218        Name        => 'Autoreply',                                         # loc
219        Description => 'Default Autoresponse template',                     # loc
220        Content     => 'Subject: AutoReply: {$Ticket->Subject}
221
222
223 Greetings,
224
225 This message has been automatically generated in response to the
226 creation of a trouble ticket regarding:
227         "{$Ticket->Subject()}", 
228 a summary of which appears below.
229
230 There is no need to reply to this message right now.  Your ticket has been
231 assigned an ID of { $Ticket->SubjectTag }.
232
233 Please include the string:
234
235          { $Ticket->SubjectTag }
236
237 in the subject line of all future correspondence about this issue. To do so, 
238 you may reply to this message.
239
240                         Thank you,
241                         {$Ticket->QueueObj->CorrespondAddress()}
242
243 -------------------------------------------------------------------------
244 {$Transaction->Content()}
245 '
246     },
247
248     {  Queue       => '0',
249        Name        => 'Transaction',                     # loc
250        Description => 'Default transaction template',    # loc
251        Content     => 'RT-Attach-Message: yes
252
253
254 {$Transaction->CreatedAsString}: Request {$Ticket->id} was acted upon.
255  Transaction: {$Transaction->Description}
256        Queue: {$Ticket->QueueObj->Name}
257      Subject: {$Transaction->Subject || $Ticket->Subject || "(No subject given)"}
258        Owner: {$Ticket->OwnerObj->Name}
259   Requestors: {$Ticket->RequestorAddresses}
260       Status: {$Ticket->Status}
261  Ticket <URL: {RT->Config->Get(\'WebURL\')}Ticket/Display.html?id={$Ticket->id} >
262
263
264 {$Transaction->Content()}
265 '
266     },
267
268     {
269
270       Queue       => '0',
271       Name        => 'Admin Correspondence',                     # loc
272       Description => 'Default admin correspondence template',    # loc
273       Content     => 'RT-Attach-Message: yes
274
275
276 <URL: {RT->Config->Get(\'WebURL\')}Ticket/Display.html?id={$Ticket->id} >
277
278 {$Transaction->Content()}
279 '
280     },
281
282     {  Queue       => '0',
283        Name        => 'Correspondence',                          # loc
284        Description => 'Default correspondence template',         # loc
285        Content     => 'RT-Attach-Message: yes
286
287 {$Transaction->Content()}
288 '
289     },
290
291     {  Queue       => '0',
292        Name        => 'Admin Comment',                           # loc
293        Description => 'Default admin comment template',          # loc
294        Content     =>
295 'Subject: [Comment] {my $s=($Transaction->Subject||$Ticket->Subject||""); $s =~ s/\\[Comment\\]\\s*//g; $s =~ s/^Re:\\s*//i; $s;}
296 RT-Attach-Message: yes
297
298
299 {RT->Config->Get(\'WebURL\')}Ticket/Display.html?id={$Ticket->id}
300 This is a comment.  It is not sent to the Requestor(s):
301
302 {$Transaction->Content()}
303 '
304     },
305
306     {  Queue       => '0',
307        Name        => 'Status Change',                                     # loc
308        Description => 'Ticket status changed',                             # loc
309        Content     => 'Subject: Status Changed to: {$Transaction->NewValue}
310
311
312 {RT->Config->Get(\'WebURL\')}Ticket/Display.html?id={$Ticket->id}
313
314 {$Transaction->Content()}
315 '
316     },
317
318     {
319
320       Queue       => '0',
321       Name        => 'Resolved',                 # loc
322       Description => 'Ticket Resolved',          # loc
323       Content     => 'Subject: Resolved: {$Ticket->Subject}
324
325 According to our records, your request has been resolved. If you have any
326 further questions or concerns, please respond to this message.
327 '
328     },
329     {  Queue       => '___Approvals',
330        Name        => "New Pending Approval",    # loc
331        Description =>
332          "Notify Owners and AdminCcs of new items pending their approval", # loc
333        Content => 'Subject: New Pending Approval: {$Ticket->Subject}
334
335 Greetings,
336
337 There is a new item pending your approval: "{$Ticket->Subject()}", 
338 a summary of which appears below.
339
340 Please visit {RT->Config->Get(\'WebURL\')}Approvals/Display.html?id={$Ticket->id}
341 to approve or reject this ticket, or {RT->Config->Get(\'WebURL\')}Approvals/ to
342 batch-process all your pending approvals.
343
344 -------------------------------------------------------------------------
345 {$Transaction->Content()}
346 '
347     },
348     {  Queue       => '___Approvals',
349        Name        => "Approval Passed",    # loc
350        Description =>
351          "Notify Requestor of their ticket has been approved by some approver", # loc
352        Content => 'Subject: Ticket Approved: {$Ticket->Subject}
353
354 Greetings,
355
356 Your ticket has been approved by { eval { $Approver->Name } }.
357 Other approvals may be pending.
358
359 Approver\'s notes: { $Notes }
360 '
361     },
362     {  Queue       => '___Approvals',
363        Name        => "All Approvals Passed",    # loc
364        Description =>
365          "Notify Requestor of their ticket has been approved by all approvers", # loc
366        Content => 'Subject: Ticket Approved: {$Ticket->Subject}
367
368 Greetings,
369
370 Your ticket has been approved by { eval { $Approver->Name } }.
371 Its Owner may now start to act on it.
372
373 Approver\'s notes: { $Notes }
374 '
375     },
376     {  Queue       => '___Approvals',
377        Name        => "Approval Rejected",    # loc
378        Description =>
379          "Notify Owner of their rejected ticket", # loc
380        Content => 'Subject: Ticket Rejected: {$Ticket->Subject}
381
382 Greetings,
383
384 Your ticket has been rejected by { eval { $Approver->Name } }.
385
386 Approver\'s notes: { $Notes }
387 '
388     },
389     {  Queue       => '___Approvals',
390        Name        => "Approval Ready for Owner",    # loc
391        Description =>
392          "Notify Owner of their ticket has been approved and is ready to be acted on", # loc
393        Content => 'Subject: Ticket Approved: {$Ticket->Subject}
394
395 Greetings,
396
397 The ticket has been approved, you may now start to act on it.
398
399 '
400     },
401     {  Queue       => 0,
402        Name        => "Forward",    # loc
403        Description => "Heading of a forwarded message", # loc
404        Content => q{
405 This is a forward of transaction #{$Transaction->id} of ticket #{ $Ticket->id }
406 }
407     },
408     {  Queue       => 0,
409        Name        => "Forward Ticket",    # loc
410        Description => "Heading of a forwarded Ticket", # loc
411        Content => q{
412
413 This is a forward of ticket #{ $Ticket->id }
414 }
415     },
416     {  Queue       => 0,
417        Name        => "Error: public key",    # loc
418        Description =>
419          "Inform user that he has problems with public key and couldn't recieve encrypted content", # loc
420        Content => q{Subject: We have no your public key or it's wrong
421
422 You received this message as we have no your public PGP key or we have a problem with your key. Inform the administrator about the problem.
423 }
424     },
425     {  Queue       => 0,
426        Name        => "Error to RT owner: public key",    # loc
427        Description =>
428          "Inform RT owner that user(s) have problems with public keys", # loc
429        Content => q{Subject: Some users have problems with public keys
430
431 You received this message as RT has problems with public keys of the following user:
432 {
433     foreach my $e ( @BadRecipients ) {
434         $OUT .= "* ". $e->{'Message'} ."\n";
435     }
436 }}
437     },
438     {  Queue       => 0,
439        Name        => "Error: no private key",    # loc
440        Description =>
441          "Inform user that we received an encrypted email and we have no private keys to decrypt", # loc
442        Content => q{Subject: we received message we cannot decrypt
443
444 You sent an encrypted message with subject '{ $Message->head->get('Subject') }',
445 but we have no private key it's encrypted to.
446
447 Please, check that you encrypt messages with correct keys
448 or contact the system administrator.}
449     },
450     {  Queue       => 0,
451        Name        => "Error: bad GnuPG data",    # loc
452        Description =>
453          "Inform user that a message he sent has invalid GnuPG data", # loc
454        Content => q{Subject: We received a message we cannot handle
455
456 You sent us a message that we cannot handle due to corrupted GnuPG signature or encrypted block. we get the following error(s):
457 { foreach my $msg ( @Messages ) {
458     $OUT .= "* $msg\n";
459   }
460 }}
461     },
462     {  Queue       => 0,
463        Name        => "PasswordChange",    # loc
464        Description =>
465          "Inform user that his password has been reset", # loc
466        Content => q{Subject: [{RT->Config->Get('rtname')}] Password reset
467
468 Greetings,
469
470 Someone at {$ENV{'REMOTE_ADDR'}} requested a password reset for you on {RT->Config->Get('WebURL')}
471
472 Your new password is:
473   {$NewPassword}
474 }
475     },
476
477                {   Queue       => '0',
478                    Name        => 'Email Digest',    # loc
479                    Description => 'Email template for periodic notification digests',  # loc
480                    Content => q[Subject: RT Email Digest
481
482 { $Argument }
483 ],
484                },
485
486 {
487     Queue       => 0,
488     Name        => "Error: Missing dashboard",    # loc
489     Description =>
490       "Inform user that a dashboard he subscribed to is missing", # loc
491     Content => q{Subject: [{RT->Config->Get('rtname')}] Missing dashboard!
492
493 Greetings,
494
495 You are subscribed to a dashboard that is currently missing. Most likely, the dashboard was deleted.
496
497 RT will remove this subscription as it is no longer useful. Here's the information RT had about your subscription:
498
499 DashboardID:  { $SubscriptionObj->SubValue('DashboardId') }
500 Frequency:    { $SubscriptionObj->SubValue('Frequency') }
501 Hour:         { $SubscriptionObj->SubValue('Hour') }
502 {
503     $SubscriptionObj->SubValue('Frequency') eq 'weekly'
504     ? "Day of week:  " . $SubscriptionObj->SubValue('Dow')
505     : $SubscriptionObj->SubValue('Frequency') eq 'monthly'
506       ? "Day of month: " . $SubscriptionObj->SubValue('Dom')
507       : ''
508 }
509 }
510 },
511 );
512
513 @Scrips = (
514     {  Description    => 'On Correspond Open Tickets',
515        ScripCondition => 'On Correspond',
516        ScripAction    => 'Open Tickets',
517        Template       => 'Blank' },
518     {  Description    => 'On Owner Change Notify Owner',
519        ScripCondition => 'On Owner Change',
520        ScripAction    => 'Notify Owner',
521        Template       => 'Transaction' },
522     {  Description    => 'On Create Autoreply To Requestors',
523        ScripCondition => 'On Create',
524        ScripAction    => 'AutoReply To Requestors',
525        Template       => 'AutoReply' },
526     {  Description    => 'On Create Notify AdminCcs',
527        ScripCondition => 'On Create',
528        ScripAction    => 'Notify AdminCcs',
529        Template       => 'Transaction' },
530     {  Description    => 'On Correspond Notify AdminCcs',
531        ScripCondition => 'On Correspond',
532        ScripAction    => 'Notify AdminCcs',
533        Template       => 'Admin Correspondence' },
534     {  Description    => 'On Correspond Notify Requestors and Ccs',
535        ScripCondition => 'On Correspond',
536        ScripAction    => 'Notify Requestors And Ccs',
537        Template       => 'Correspondence' },
538     {  Description    => 'On Correspond Notify Other Recipients',
539        ScripCondition => 'On Correspond',
540        ScripAction    => 'Notify Other Recipients',
541        Template       => 'Correspondence' },
542     {  Description    => 'On Comment Notify AdminCcs as Comment',
543        ScripCondition => 'On Comment',
544        ScripAction    => 'Notify AdminCcs As Comment',
545        Template       => 'Admin Comment' },
546     {  Description    => 'On Comment Notify Other Recipients as Comment',
547        ScripCondition => 'On Comment',
548        ScripAction    => 'Notify Other Recipients As Comment',
549        Template       => 'Correspondence' },
550     {  Description    => 'On Resolve Notify Requestors',
551        ScripCondition => 'On Resolve',
552        ScripAction    => 'Notify Requestors',
553        Template       => 'Resolved' },
554     {  Description    => "On transaction, add any tags in the transaction's subject to the ticket's subject",
555        ScripCondition => 'On Transaction',
556        ScripAction    => 'Extract Subject Tag',
557        Template       => 'Blank' },
558 );
559
560 @ACL = (
561     { UserId => 'root',        # - principalid
562       Right  => 'SuperUser', },
563
564     { GroupDomain => 'SystemInternal',
565       GroupType => 'privileged',
566       Right  => 'ShowApprovalsTab', },
567
568 );
569
570 # Predefined searches
571
572 @Attributes = (
573     { Name => 'Search - My Tickets',
574       Description => '[_1] highest priority tickets I own', # loc
575       Content     =>
576       { Format =>  q{'<a href="__WebPath__/Ticket/Display.html?id=__id__">__id__</a>/TITLE:#',}
577                  . q{'<a href="__WebPath__/Ticket/Display.html?id=__id__">__Subject__</a>/TITLE:Subject',}
578                  . q{Priority, QueueName, ExtendedStatus},
579         Query   => " Owner = '__CurrentUser__' AND ( Status = 'new' OR Status = 'open')",
580         OrderBy => 'Priority',
581         Order   => 'DESC'
582       },
583     },
584     { Name => 'Search - Unowned Tickets',
585       Description => '[_1] newest unowned tickets', # loc
586       Content     =>
587 # 'Take' #loc
588       { Format =>  q{'<a href="__WebPath__/Ticket/Display.html?id=__id__">__id__</a>/TITLE:#',}
589                  . q{'<a href="__WebPath__/Ticket/Display.html?id=__id__">__Subject__</a>/TITLE:Subject',}
590                  . q{QueueName, ExtendedStatus, CreatedRelative, }
591                  . q{'<A HREF="__WebPath__/Ticket/Display.html?Action=Take&id=__id__">__loc(Take)__</a>/TITLE:NBSP'},
592         Query   => " Owner = 'Nobody' AND ( Status = 'new' OR Status = 'open')",
593         OrderBy => 'Created',
594         Order   => 'DESC'
595       },
596     },
597     { Name => 'Search - Bookmarked Tickets',
598       Description => 'Bookmarked Tickets', #loc
599       Content     =>
600       { Format => q{'<a href="__WebPath__/Ticket/Display.html?id=__id__">__id__</a>/TITLE:#',}
601                 . q{'<a href="__WebPath__/Ticket/Display.html?id=__id__">__Subject__</a>/TITLE:Subject',}
602                 . q{Priority, QueueName, ExtendedStatus, Bookmark},
603         Query   => "id = '__Bookmarked__'",
604         OrderBy => 'LastUpdated',
605         Order   => 'DESC' },
606     },
607     {
608         Name        => 'HomepageSettings',
609         Description => 'HomepageSettings',
610         Content     => {
611             'body' =>    # loc
612               [
613                 {
614                     type => 'system',
615                     name => 'My Tickets',           # loc
616                 },
617                 {
618                     type => 'system',
619                     name => 'Unowned Tickets'       # loc
620                 },
621                 {
622                     type => 'system',
623                     name => 'Bookmarked Tickets'    # loc
624                 },
625                 {
626                     type => 'component',
627                     name => 'QuickCreate'           # loc
628                 },
629               ],
630             'summary' =>                            # loc
631               [
632                 {
633                     type => 'component',
634                     name => 'MyReminders'           # loc
635                 },
636                 {
637                     type => 'component',
638                     name => 'Quicksearch'           # loc
639                 },
640                 {
641                     type => 'component',
642                     name => 'Dashboards'            # loc
643                 },
644                 {
645                     type => 'component',
646                     name => 'RefreshHomepage'       # loc
647                 },
648               ],
649         },
650     },
651 );