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