Merge branch 'dev'
[usit-rt.git] / etc / initialdata
CommitLineData
84fb5b46
MKG
1# Initial data for a fresh RT3 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
223Greetings,
224
225This message has been automatically generated in response to the
226creation of a trouble ticket regarding:
227 "{$Ticket->Subject()}",
228a summary of which appears below.
229
230There is no need to reply to this message right now. Your ticket has been
231assigned an ID of { $Ticket->SubjectTag }.
232
233Please include the string:
234
235 { $Ticket->SubjectTag }
236
237in the subject line of all future correspondence about this issue. To do so,
238you 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;}
296RT-Attach-Message: yes
297
298
299{RT->Config->Get(\'WebURL\')}Ticket/Display.html?id={$Ticket->id}
300This 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
325According to our records, your request has been resolved. If you have any
326further 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
335Greetings,
336
337There is a new item pending your approval: "{$Ticket->Subject()}",
338a summary of which appears below.
339
340Please visit {RT->Config->Get(\'WebURL\')}Approvals/Display.html?id={$Ticket->id}
341to approve or reject this ticket, or {RT->Config->Get(\'WebURL\')}Approvals/ to
342batch-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
354Greetings,
355
356Your ticket has been approved by { eval { $Approver->Name } }.
357Other approvals may be pending.
358
359Approver\'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
368Greetings,
369
370Your ticket has been approved by { eval { $Approver->Name } }.
371Its Owner may now start to act on it.
372
373Approver\'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
382Greetings,
383
384Your ticket has been rejected by { eval { $Approver->Name } }.
385
386Approver\'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
395Greetings,
396
397The 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{
405This 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
413This 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
422You 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
431You 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
444You sent an encrypted message with subject '{ $Message->head->get('Subject') }',
445but we have no private key it's encrypted to.
446
447Please, check that you encrypt messages with correct keys
448or 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
456You 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
468Greetings,
469
470Someone at {$ENV{'REMOTE_ADDR'}} requested a password reset for you on {RT->Config->Get('WebURL')}
471
472Your 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
493Greetings,
494
495You are subscribed to a dashboard that is currently missing. Most likely, the dashboard was deleted.
496
497RT will remove this subscription as it is no longer useful. Here's the information RT had about your subscription:
498
499DashboardID: { $SubscriptionObj->SubValue('DashboardId') }
500Frequency: { $SubscriptionObj->SubValue('Frequency') }
501Hour: { $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 { Name => 'HomepageSettings',
608 Description => 'HomepageSettings',
609 Content =>
610 { 'body' => # loc
611 [ { type => 'system', name => 'My Tickets' },
612 { type => 'system', name => 'Unowned Tickets' },
613 { type => 'system', name => 'Bookmarked Tickets' },
614 { type => 'component', name => 'QuickCreate' },
615 ],
616 'summary' => # loc
617 [
618 { type => 'component', name => 'MyReminders' },
619 { type => 'component', name => 'Quicksearch' },
620 { type => 'component', name => 'Dashboards' },
621 { type => 'component', name => 'RefreshHomepage' },
622 ],
623 },
624 },
625);