# Initial data for a fresh RT3 Installation.
# vim: foldmethod=marker filetype=perl shiftwidth=4

# TicketString + OwnerString {{{
my $TicketString = '
    表單名稱：{ $Ticket->QueueObj->Name }
    表單編號：{ $Ticket->Id }
    表單類別：{ $Ticket->QueueObj->Description }
    表單欄位：
{ $Ticket->PrettyPrint }
';

my $OwnerString = '
如有任何疑問，請洽詢表單承辦人

    承辦人員：{ $Ticket->OwnerObj->Name }
    辦公電話：{ $Ticket->OwnerObj->WorkPhone }
    e-mail：  { $Ticket->OwnerObj->EmailAddress }

謝謝
';
# }}}
# Users {{{
@Users = (
    {  Name     => 'Nobody',
       RealName => 'Nobody in particular',
       Comments => 'Do not delete or modify this user. It is integral '
         . 'to RT\'s internal data structures',
       Privileged => '0', },

    {  Name         => 'root',
       Gecos        => 'root',
       RealName     => 'Enoch Root',
       Password     => 'password',
       EmailAddress => "root\@localhost",
       Comments     => 'SuperUser',
       Privileged   => '1', } );
# }}}
# Groups {{{
@Groups = (
    { Name        => '',
      Type        => 'Everyone',                        # loc
      Domain      => 'SystemInternal',
      Instance    => '',
      Description => 'Pseudogroup for internal use',    # loc
    },
    { Type        => 'Privileged',                      # loc
      Domain      => 'SystemInternal',
      Instance    => '',
      Name        => '',
      Description => 'Pseudogroup for internal use',    # loc
    },
    { Name        => '',
      Type        => 'Unprivileged',                    # loc
      Domain      => 'SystemInternal',
      Instance    => '',
      Description => 'Pseudogroup for internal use',    # loc
    },
    { Name        => '',
      Type        => 'Owner',                               # loc
      Domain      => 'RT::System-Role',
      Instance    => '',
      Description => 'SystemRolegroup for internal use',    # loc
    },
    { Name        => '',
      Type        => 'Requestor',                           # loc
      Domain      => 'RT::System-Role',
      Instance    => '',
      Description => 'SystemRolegroup for internal use',    # loc
    },
    { Name        => '',
      Type        => 'Cc',                                  # loc
      Domain      => 'RT::System-Role',
      Instance    => '',
      Description => 'SystemRolegroup for internal use',    # loc
    },
    { Name        => '',
      Type        => 'AdminCc',                             # loc
      Domain      => 'RT::System-Role',
      Instance    => '',
      Description => 'Pseudogroup for internal use',        # loc
    }, );
# }}}
# Queues {{{
@Queues = ({ Name              => 'General',
             Description       => 'The default queue',
             CorrespondAddress => "",
             CommentAddress    => "", },
           { Name        => '___Approvals',
             Description => 'A system-internal queue for the approvals system',
             Disabled    => 1, } );
# }}}
# ScripActions {{{
@ScripActions = (

    {  Name        => 'Autoreply To Requestors',    # loc
       Description =>
'Always sends a message to the requestors independent of message sender' ,                                            # loc
       ExecModule => 'Autoreply',
       Argument   => 'Requestor' },
    { Name        => 'Notify Requestors',                    # loc
      Description => 'Sends a message to the requestors',    # loc
      ExecModule  => 'Notify',
      Argument    => 'Requestor' },
    { Name        => 'Notify Owner as Comment',              # loc
      Description => 'Sends mail to the owner',              # loc
      ExecModule  => 'NotifyAsComment',
      Argument    => 'Owner' },
    { Name        => 'Notify Owner',                         # loc
      Description => 'Sends mail to the owner',              # loc
      ExecModule  => 'Notify',
      Argument    => 'Owner' },
    { Name        => 'Notify Ccs as Comment',              # loc
      Description => 'Sends mail to the Ccs as a comment', # loc
      ExecModule  => 'NotifyAsComment',
      Argument    => 'Cc' },
    { Name        => 'Notify Ccs',                                   # loc
      Description => 'Sends mail to the Ccs',                        # loc
      ExecModule  => 'Notify',
      Argument    => 'Cc' },
    { Name        => 'Notify AdminCcs as Comment',                        # loc
      Description => 'Sends mail to the administrative Ccs as a comment', # loc
      ExecModule  => 'NotifyAsComment',
      Argument    => 'AdminCc' },
    { Name        => 'Notify AdminCcs',                                   # loc
      Description => 'Sends mail to the administrative Ccs',              # loc
      ExecModule  => 'Notify',
      Argument    => 'AdminCc' },

    { Name        => 'Notify Requestors and Ccs as Comment',              # loc
      Description => 'Send mail to requestors and Ccs as a comment',      # loc
      ExecModule  => 'NotifyAsComment',
      Argument    => 'Requestor,Cc' },

    { Name        => 'Notify Requestors and Ccs',                         # loc
      Description => 'Send mail to requestors and Ccs',                   # loc
      ExecModule  => 'Notify',
      Argument    => 'Requestor,Cc' },

    { Name        => 'Notify Requestors, Ccs and AdminCcs as Comment',    # loc
      Description => 'Send mail to all watchers as a "comment"',          # loc
      ExecModule  => 'NotifyAsComment',
      Argument    => 'All' },
    { Name        => 'Notify Requestors, Ccs and AdminCcs',               # loc
      Description => 'Send mail to all watchers',                         # loc
      ExecModule  => 'Notify',
      Argument    => 'All' },
    { Name        => 'Notify Other Recipients as Comment',                # loc
      Description => 'Sends mail to explicitly listed Ccs and Bccs',      # loc
      ExecModule  => 'NotifyAsComment',
      Argument    => 'OtherRecipients' },
    { Name        => 'Notify Other Recipients',                           # loc
      Description => 'Sends mail to explicitly listed Ccs and Bccs',      # loc
      ExecModule  => 'Notify',
      Argument    => 'OtherRecipients' },
    { Name        => 'User Defined',                                      # loc
      Description => 'Perform a user-defined action',                     # loc
      ExecModule  => 'UserDefined', },
    {  Name        => 'Create Tickets',                                    # loc
       Description =>
         'Create new tickets based on this scrip\'s template',             # loc
       ExecModule => 'CreateTickets', },
    { Name        => 'Open Tickets',
      Description => 'Open tickets on correspondence',                    # loc
      ExecModule  => 'AutoOpen' },
);
# }}}
# ScripConditions {{{
@ScripConditions = (
    { Name                 => 'On Create',                                # loc
      Description          => 'When a ticket is created',                 # loc
      ApplicableTransTypes => 'Create',
      ExecModule           => 'AnyTransaction', },

    { Name                 => 'On Transaction',                           # loc
      Description          => 'When anything happens',                    # loc
      ApplicableTransTypes => 'Any',
      ExecModule           => 'AnyTransaction', },
    {

      Name                 => 'On Correspond',                             # loc
      Description          => 'Whenever correspondence comes in',          # loc
      ApplicableTransTypes => 'Correspond',
      ExecModule           => 'AnyTransaction', },

    {

      Name                 => 'On Comment',                                # loc
      Description          => 'Whenever comments come in',                 # loc
      ApplicableTransTypes => 'Comment',
      ExecModule           => 'AnyTransaction' },
    {

      Name                 => 'On Status Change',                          # loc
      Description          => 'Whenever a ticket\'s status changes',       # loc
      ApplicableTransTypes => 'Status',
      ExecModule           => 'AnyTransaction',

    },
    {

      Name                 => 'On Priority Change',                       # loc
      Description          => 'Whenever a ticket\'s priority changes',    # loc
      ApplicableTransTypes => 'Set',
      ExecModule           => 'PriorityChange',
    },
    {

      Name                 => 'On Owner Change',                           # loc
      Description          => 'Whenever a ticket\'s owner changes',        # loc
      ApplicableTransTypes => 'Any',
      ExecModule           => 'OwnerChange',

    },
    {

      Name                 => 'On Queue Change',                           # loc
      Description          => 'Whenever a ticket\'s queue changes',        # loc
      ApplicableTransTypes => 'Set',
      ExecModule           => 'QueueChange',

    },
    {  Name                 => 'On Resolve',                               # loc
       Description          => 'Whenever a ticket is resolved',            # loc
       ApplicableTransTypes => 'Status',
       ExecModule           => 'StatusChange',
       Argument             => 'resolved'

    },

    {  Name                 => 'User Defined',                             # loc
       Description          => 'Whenever a user-defined condition occurs', # loc
       ApplicableTransTypes => 'Any',
       ExecModule           => 'UserDefined'

    },

);
# }}}
# Templates {{{
@Templates = (
    { Queue       => '0',
      Name        => 'Blank',                                             # loc
      Description => 'A blank template',                                  # loc
      Content     => '', },
    {  Queue       => '0',
       Name        => 'Autoreply',                                         # loc
       Description => 'Default Autoresponse template',                     # loc
       Content     => 'Subject: { $Ticket->QueueObj->Name } -- 新增申請單

{ $Requestor } 您好：

以下為您所申請的表單資訊：
' . $TicketString . '
您可點選下列連結，登入系統查詢表單目前的狀態：
    { $RT::ExternalURL }

' . $OwnerString
    },

    {  Queue       => '0',
       Name        => 'Autoreply 2',                                         # loc
       Description => 'Default Autoresponse template',                     # loc
       Content     => 'Subject: 新增申請單

{ $Requestor } 您好：

以下為您所申請的表單({ $Ticket->QueueObj->Name }-{ $Ticket->Id })，已進入簽核程序，
您可點選下列連結，登入系統查詢表單目前的狀態：
    { $RT::ExternalURL }

' . $OwnerString
    },

    {  Queue       => '0',
       Name        => 'Transaction',                     # loc
       Description => 'Default transaction template',    # loc
       Content     => '{die if $RT::OIN104}
RT-Attach-Message: yes

{$Transaction->CreatedAsString}: {$Ticket->id} 號申請單更動成功。
        更動: {$Transaction->Description}
        表單: {$Ticket->QueueObj->Name}
        標題: {$Transaction->Subject || $Ticket->Subject || "(No subject given)"}
      承辦人: {$Ticket->OwnerObj->Name}
      申請人: {$Ticket->RequestorAddresses}
        狀態: {$Ticket->Status}
 申請單 <URL: {$RT::WebURL}Ticket/Display.html?id={$Ticket->id} >


{$Transaction->Content()}
'
    },

    {

      Queue       => '0',
      Name        => 'Admin Correspondence',                     # loc
      Description => 'Default admin correspondence template',    # loc
      Content     => 'Subject: { $Ticket->QueueObj->Name } -- 申請單回覆
RT-Attach-Message: yes

您好：

{
    my $name = eval { $Transaction->CreatorObj->Name };
    die if $name eq "RT_System"; $name;
} 針對下列表單提出回覆
' . $TicketString . '
    回覆內容：

{$Transaction->Content()}

您可點選下列連結，登入系統查詢表單處理的狀態，並回覆評論：
    { $RT::ExternalURL }

謝謝
'
    },

    {

      Queue       => '0',
      Name        => 'Admin Correspondence 2',                     # loc
      Description => 'Default admin correspondence template',    # loc
      Content     => 'RT-Attach-Message: yes
Subject: 申請單回覆

您好：

{
    my $name = eval { $Transaction->CreatorObj->Name };
    die if $name eq "RT_System"; $name;
} 已針對下列您所申請的表單({ $Ticket->QueueObj->Name} - { $Ticket->Id })提出以下的回覆：

{$Transaction->Content()}

您可點選下列連結，登入 104EHRPortal 系統查詢表單處理的狀態，並回覆評論：
    { $RT::ExternalURL }

謝謝
'
    },

    {  Queue       => '0',
       Name        => 'Correspondence',                          # loc
       Description => 'Default correspondence template',         # loc
       Content     => 'Subject: { $Ticket->QueueObj->Name } -- 申請單回覆
RT-Attach-Message: yes

您好：

{
    my $name = eval { $Transaction->CreatorObj->Name };
    die if $name eq "RT_System"; $name;
} 針對下列表單提出回覆
' . $TicketString . '
    回覆內容：

{$Transaction->Content()}

您可點選下列連結，登入系統查詢表單處理的狀態，並回覆評論：
    { $RT::ExternalURL }

謝謝
'
    },

    {

      Queue       => '0',
      Name        => 'Correspondence 2',                     # loc
      Description => 'Default correspondence template',    # loc
      Content     => 'RT-Attach-Message: yes
Subject: 申請單回覆

您好：

{
    my $name = eval { $Transaction->CreatorObj->Name };
    die if $name eq "RT_System"; $name;
} 已針對您所申請的表單({ $Ticket->QueueObj->Name }-{ $Ticket->Id })提出以下的回覆內容：

{$Transaction->Content()}

您可點選下列連結，登入 104EHRPortal 系統查詢表單處理的狀態，並回覆評論：
    { $RT::ExternalURL }

謝謝
'
    },

    {  Queue       => '0',
       Name        => 'Admin Comment',                           # loc
       Description => 'Default admin comment template',          # loc
       Content     =>
'Subject: { $Ticket->QueueObj->Name } -- 申請單評論


您好：

{
    my $name = eval { $Transaction->CreatorObj->Name };
    die if $name eq "RT_System"; $name;
} 針對下列表單提出評論
' . $TicketString . '
    評論內容：

{$Transaction->Content()}

您可點選下列連結，登入系統查詢表單處理的狀態，並回覆評論：
    { $RT::ExternalURL }

謝謝
'
    },

    {  Queue       => '0',
       Name        => 'Admin Comment 2',                           # loc
       Description => 'Default admin comment template',          # loc
       Content     =>
'Subject: 申請單評論


您好：

{
    my $name = eval { $Transaction->CreatorObj->Name };
    die if $name eq "RT_System"; $name;
} 已針對下列您所申請的表單({ $Ticket->QueueObj->Name} - { $Ticket->Id })提出以下的回覆：

{$Transaction->Content()}

您可點選下列連結，登入 104EHRPortal 系統查詢表單處理的狀態，並回覆評論：
    { $RT::ExternalURL }

謝謝
'
    },

    {  Queue       => '0',
       Name        => 'Status Change',                                     # loc
       Description => 'Ticket status changed',                             # loc
       Content     => 'Subject: 現況已改為: {$Transaction->NewValue}


{$RT::WebURL}Ticket/Display.html?id={$Ticket->id}

{$Transaction->Content()}
'
    },

    {

      Queue       => '0',
      Name        => 'Resolved',                 # loc
      Description => 'Ticket Resolved',          # loc
      Content     => 'Subject: { $Ticket->QueueObj->Name } -- 處理成功完成

{ $Requestor } 您好：

以下您所送出申請的表單，目前已由作業承辦人完成承辦作業：
' . $TicketString . $OwnerString,
    },
    {

      Queue       => '0',
      Name        => 'Resolved 2',                 # loc
      Description => 'Ticket Resolved',          # loc
      Content     => 'Subject: 處理成功完成

{ $Requestor } 您好：

您所送出申請的表單({ $Ticket->QueueObj->Name }-{ $Ticket->Id })，目前已由作業承辦人完成承辦作業。
' . $OwnerString,
    },
    {  Queue       => '___Approvals',
       Name        => "New Pending Approval",    # loc
       Description =>
         "Notify Owners and AdminCcs of new items pending their approval", # loc
       Content => 'Subject: { $Approving->QueueObj->Name } -- 待簽核表單 (申請者：{$Approving->RequestorNames}) 

{ $Ticket->OwnerObj->Name } 您好：
{ ($Ticket = $Approving) ? "" : "" }
有一張表單目前正等待您的簽核。表單資訊如下：
' . $TicketString . '

您可點選下列連結，登入系統進行簽核：
    { $RT::ExternalURL }

' . $OwnerString
    },
    {  Queue       => '___Approvals',
       Name        => "New Pending Approval 2",    # loc
       Description =>
         "Notify Owners and AdminCcs of new items pending their approval", # loc
       Content => 'Subject: 待簽核表單: { ($myname=$Ticket->OwnerObj->Name ,$Ticket = $Approving) ? "" : "" }{ $Ticket->QueueObj->Name }(申請者：{ $Ticket->RequestorNames })

{ $myname }您好：

有一張表單({ $Ticket->QueueObj->Name } - 申請者：{ $Ticket->RequestorNames }、表單編號：{ $Ticket->Id } )目前正等待您的簽核。

您可點選下列連結，登入系統進行簽核：
    { $RT::ExternalURL }

' . $OwnerString
    },
    {  Queue       => '___Approvals',
       Name        => "Approval Passed",    # loc
       Description =>
         "Notify Owner of their ticket has been approved by some approver", # loc
       Content => 'Subject: { $Ticket->QueueObj->Name } -- 某項簽核完成 (表單已由 { $T::Actor = eval {
    my $Name = $Transaction->CreatorObj->Name;
    ($Approval->OwnerObj->Name eq q(Nobody)) ? q(系統程序) : $Name;
} } 核准)

{ $Requestor } 您好：

您所申請的表單目前已由 { $T::Actor } 核准，
尚待下一階段進行簽核。評論內容如下：

{ $Note }

以下為您所申請的表單資訊：
' . $TicketString . $OwnerString,
    },
    {  Queue       => '___Approvals',
       Name        => "Approval Passed 2",    # loc
       Description =>
         "Notify Owner of their ticket has been approved by some approver", # loc
       Content => 'Subject: 某項簽核完成

{ $Requestor } 您好：

您所申請的表單({ $Ticket->QueueObj->Name }- { $Ticket->Id })目前已由 { eval {
    my $Name = $Approval->OwnerObj->Name;
    ($Name eq q(Nobody)) ? q(系統程序) : $Name;
} } 核准，
尚待下一階段進行簽核。評論內容如下：

{ $Note }

' . $OwnerString,
    },
    {  Queue       => '___Approvals',
       Name        => "All Approvals Passed",    # loc
       Description =>
         "Notify Owner of their ticket has been approved by all approvers", # loc
       Content => 'Subject: { $Ticket->QueueObj->Name } -- 簽核全部完成

{ $Requestor } 您好：

您所申請的表單目前已完成所有簽核程序，尚待表單承辦人完成處理。
' . $TicketString . $OwnerString,
    },
    {  Queue       => '___Approvals',
       Name        => "All Approvals Passed 2",    # loc
       Description =>
         "Notify Owner of their ticket has been approved by all approvers", # loc
       Content => 'Subject: { $Ticket->QueueObj->Name }({ $Ticket->Id }) 簽核全部完成

{ $Requestor } 您好：

您所申請的表單目前已完成所有簽核程序，尚待表單承辦人完成處理。
' . $OwnerString,
    },
    {  Queue       => '___Approvals',
       Name        => "Approval Rejected",    # loc
       Description =>
         "Notify Owner of their rejected ticket", # loc
       Content => 'Subject: { $Ticket->QueueObj->Name } -- 簽核遭到駁回 ({ $T::Actor = eval {
    my $Name = $Transaction->CreatorObj->Name;
    ($Approval->OwnerObj->Name eq q(Nobody)) ? q(被 系統程序 ) :
    ($Name eq "RT_System") ? q(因 "逾期" 而被系統) :
    "被 $Name ";
} }駁回)

{ $Requestor } 您好：

您所申請的表單目前已於處理過程中{ $T::Actor }駁回。評論內容如下：

{ $Note }

以下為您所申請的表單資訊：
' . $TicketString
    },
    {  Queue       => '___Approvals',
       Name        => "Approval Rejected 2",    # loc
       Description =>
         "Notify Owner of their rejected ticket", # loc
       Content => 'Subject: 表單遭{ eval {
    my $Name = $Approval->OwnerObj->Name;
    ($Name eq q(Nobody)) ? q(系統程序) :
    ($Transaction->CreatorObj->Name eq "RT_System") ? q("簽核逾期"系統程序) :
    $Name;
} }的駁回

{ $Requestor } 您好：

您所申請的表單目前已於處理過程中{ eval {
    my $Name = $Approval->OwnerObj->Name;
    ($Name eq q(Nobody)) ? q(被 系統程序 ) :
    ($Transaction->CreatorObj->Name eq "RT_System") ? q(因 "逾期" 而被系統) :
    "被 $Name ";
} }駁回。評論內容如下：

{ $Note }

'
    },
    {  Queue       => '___Approvals',
       Name        => "Approval Overdue",    # loc
       Description =>
         "Notify Approvers of overdue approvals", # loc
       Content => 'Subject: 簽核單逾期通知: { ($myname=$Ticket->OwnerObj->Name ,$Ticket = $Approving) ? "" : "" }{ $Ticket->QueueObj->Name }(申請者：{ $Ticket->RequestorNames })

{ $myname }您好：

{ $Ticket->RequestorNames } 於 { $Ticket->CreatedObj->AsDate } 所提出之申請單 ({ $Ticket->QueueObj->Name } - 表單編號：{ $Ticket->Id })
己超過系統簽核期限，請儘速審核該申請單，以免影響他人權益，謝謝！

表單資訊如下：
' . $TicketString . '

您可點選下列連結，登入系統進行簽核：
    { $RT::ExternalURL }

' . $OwnerString
    },
    {  Queue       => '___Approvals',
       Name        => "Approver Correspondence",    # loc
       Description =>
         "Notify Requestors of Approver's replies", # loc
       Content     => 'Subject: { $Ticket->QueueObj->Name } -- 申請單回覆(暫不處理)
RT-Attach-Message: yes

{
    die if RT::Queue->IsInactiveStatus($Ticket->Status);
    ($Ticket = $Ticket->OriginObj) ? "" : "";
}
{ $Ticket->FirstRequestor->Name } 您好：
{
    my $name = eval { $Transaction->CreatorObj->Name };
    die if $name eq "RT_System"; $name;
} 已針對您所申請的表單({ $Ticket->QueueObj->Name }-{ $Ticket->Id })提出回覆：

{$Transaction->Content()}

目前此申請單設定為「暫不處理」，若有疑問請與簽核者連絡，謝謝！

以下為您所申請的表單資訊：
' . $TicketString . '

您可點選下列連結，登入系統查詢表單處理的狀態：
    { $RT::ExternalURL }

謝謝
'
    },
);

# }}}
#Scrips {{{
@Scrips = (
    {  ScripCondition => 'On Correspond',
       ScripAction    => 'Open Tickets',
       Template       => 'Blank' },
    {  ScripCondition => 'On Owner Change',
       ScripAction    => 'Notify Owner',
       Template       => 'Transaction' },
    {  ScripCondition => 'On Create',
       ScripAction    => 'AutoReply To Requestors',
       Template       => 'AutoReply' },
    {  ScripCondition => 'On Create',
       ScripAction    => 'Notify AdminCcs',
       Template       => 'Transaction' },
    {  ScripCondition => 'On Correspond',
       ScripAction    => 'Notify AdminCcs',
       Template       => 'Admin Correspondence' },
    {  ScripCondition => 'On Correspond',
       ScripAction    => 'Notify Requestors And Ccs',
       Template       => 'Correspondence' },
    {  ScripCondition => 'On Correspond',
       ScripAction    => 'Notify Other Recipients',
       Template       => 'Correspondence' },
    {  ScripCondition => 'On Comment',
       ScripAction    => 'Notify AdminCcs As Comment',
       Template       => 'Admin Comment' },
    {  ScripCondition => 'On Comment',
       ScripAction    => 'Notify Other Recipients As Comment',
       Template       => 'Correspondence' },
    {  ScripCondition => 'On Resolve',
       ScripAction    => 'Notify Requestors',
       Template       => 'Resolved' },
    {  Description => "When an approval ticket is created, notify the Owner and AdminCc of the item awaiting their approval",    # loc
       Queue          => '___Approvals',
       ScripCondition => 'User Defined',
       CustomIsApplicableCode => q[
	    $self->TicketObj->Type eq 'approval'	and
	    $self->TransactionObj->Field eq 'Status'	and
	    $self->TransactionObj->NewValue eq 'open'   and
	    $T::Approving = $self->TicketObj->OriginObj
       ],
       ScripAction    => 'Notify Owner',
       Template       => 'New Pending Approval' },
    {  Description => "When an approval ticket is stalled, notify the Approver that it's overdue",    # loc
       Queue          => '___Approvals',
       ScripCondition => 'User Defined',
       CustomIsApplicableCode => q[
	    $self->TicketObj->Type eq 'approval'	and
	    $self->TransactionObj->Field eq 'Status'	and
	    $self->TransactionObj->NewValue eq 'stalled'and
	    $T::Approving = $self->TicketObj->OriginObj
       ],
       ScripAction    => 'Notify Owner',
       Template       => 'Approval Overdue' },
    {  Description => "When the Approver chooses not to resolve/reject the ticket, notify the Requestor of the correspondence",    # loc
       Queue          => '___Approvals',
       ScripCondition => 'On Correspond',
       ScripAction    => 'Notify Requestors',
       Template       => 'Approver Correspondence' },
    {  Description       => "If an approval is rejected, reject the original and delete pending approvals",    # loc
       Queue             => '___Approvals',
       ScripCondition    => 'On Status Change',
       ScripAction       => 'User Defined',
       CustomPrepareCode => 'use RT::Workflow::Run (Rejected => $self); return $::RV;',
       CustomCommitCode  => '"never needed"',
       Template          => 'Approval Rejected', },
    {  Description => "When a ticket has been approved by any approver, add correspondence to the original ticket", # loc
       Queue             => '___Approvals',
       ScripCondition    => 'On Resolve',
       ScripAction       => 'User Defined',
       CustomPrepareCode => 'use RT::Workflow::Run (AnyApproved => $self); return $::RV;',
       CustomCommitCode  => '"never needed"',
       Template => 'Approval Passed' },
    {  Description => "When a ticket has been approved by all approvers, add correspondence to the original ticket", # loc
       Queue             => '___Approvals',
       ScripCondition    => 'On Resolve',
       ScripAction       => 'User Defined',
       CustomPrepareCode => 'use RT::Workflow::Run (AllApproved => $self); return $::RV;',
       CustomCommitCode  => '"never needed"',
       Template => 'All Approvals Passed', },

);
# }}}
# ACL {{{
@ACL = (
    { UserId => 'Nobody',      # - principalId
      Right  => 'OwnTicket', },

    { UserId => 'root',        # - principalid
      Right  => 'SuperUser', },

);
# }}}
