'Open', 'slug' => 'open', 'color' => 'blue', 'sort_order' => 10, 'is_closed' => false], ['name' => 'In Progress', 'slug' => 'in-progress', 'color' => 'amber', 'sort_order' => 20, 'is_closed' => false], ['name' => 'Waiting Customer', 'slug' => 'waiting-customer', 'color' => 'purple', 'sort_order' => 30, 'is_closed' => false], ['name' => 'Closed', 'slug' => 'closed', 'color' => 'green', 'sort_order' => 90, 'is_closed' => true], ] as $row) { Status::query()->updateOrCreate(['slug' => $row['slug']], $row); } foreach ([ ['name' => 'Low', 'slug' => 'low', 'color' => 'zinc', 'sort_order' => 10], ['name' => 'Normal', 'slug' => 'normal', 'color' => 'blue', 'sort_order' => 20], ['name' => 'High', 'slug' => 'high', 'color' => 'orange', 'sort_order' => 30], ['name' => 'Critical', 'slug' => 'critical', 'color' => 'red', 'sort_order' => 40], ] as $row) { Priority::query()->updateOrCreate(['slug' => $row['slug']], $row); } foreach (['General Support', 'Software', 'Hardware', 'Access Request', 'Incident'] as $name) { Category::query()->updateOrCreate(['slug' => Str::slug($name)], ['name' => $name, 'color' => 'blue']); } $team = Team::query()->updateOrCreate(['slug' => 'support'], [ 'name' => 'Support', 'color' => 'indigo', 'description' => 'Default support team for helpdesk tickets.', ]); Project::query()->updateOrCreate(['slug' => 'internal-helpdesk'], [ 'team_id' => $team->id, 'title' => 'Internal Helpdesk', 'color' => 'blue', 'description' => 'Default project for internal helpdesk tickets.', ]); foreach ([ ['name' => 'Ticket raised requester notice', 'event' => 'ticket.created', 'subject' => 'Ticket {{ ticket.reference }} has been raised', 'html_body' => '
Hello {{ requester.name }},
Your ticket {{ ticket.reference }} has been raised successfully.
Subject: {{ ticket.subject }}
Priority: {{ ticket.priority }}
', 'to_role' => 'requester'], ['name' => 'Ticket updated requester notice', 'event' => 'ticket.updated', 'subject' => 'Ticket {{ ticket.reference }} has been updated', 'html_body' => 'Hello {{ requester.name }},
Your ticket {{ ticket.reference }} has been updated.
Status: {{ ticket.status }}
Priority: {{ ticket.priority }}
', 'to_role' => 'requester'], ['name' => 'Ticket response requester notice', 'event' => 'ticket.commented', 'subject' => 'New response on ticket {{ ticket.reference }}', 'html_body' => 'Hello {{ requester.name }},
A new response has been added to {{ ticket.reference }}.
Subject: {{ ticket.subject }}
', 'to_role' => 'requester'], ['name' => 'Ticket closed requester notice', 'event' => 'ticket.closed', 'subject' => 'Ticket {{ ticket.reference }} has been closed', 'html_body' => 'Hello {{ requester.name }},
Your ticket {{ ticket.reference }} has been closed.
Thank you for using the support desk.
', 'to_role' => 'requester'], ] as $template) { WorkflowTemplate::query()->updateOrCreate( ['name' => $template['name'], 'event' => $template['event']], $template + ['text_body' => null, 'cc' => null, 'bcc' => null, 'is_active' => true] ); } } }