wiensa / support-ticket
Laravel 12 Support Ticket System Package
Requires
- php: ^8.2
- illuminate/database: ^12.0
- illuminate/support: ^12.0
Requires (Dev)
- laravel/framework: ^12.0
- laravel/pint: ^1.13.7
- orchestra/testbench: ^9.0
- pestphp/pest: ^2.28.1
- phpstan/phpstan: 1.10.56
- rector/rector: 0.19.5
This package is auto-updated.
Last update: 2025-04-30 13:55:19 UTC
README
Bu paket, Laravel uygulamalarınız için tam özellikli bir destek bileti sistemi sunar. Kullanıcılarınızın destek taleplerini kolayca yönetmenize olanak tanır.
Özellikler
- Kullanıcı Biletleri: Kullanıcılar destek bileti oluşturabilir, kendi biletlerini görüntüleyebilir ve bileti kapatabilir
- Admin Yönetimi: Yöneticiler tüm biletleri görüntüleyebilir, yanıtlayabilir ve durumunu değiştirebilir
- Bildirimler: E-posta ve veritabanı bildirimleri (sıraya alınabilir)
- Yetkiler: Laravel'in yerel Gate ve Policy sistemini kullanır
- Özelleştirilebilir: Görünümler, yapılandırmalar ve politikalar özelleştirilebilir
- Çok Dilli: Dil dosyaları ile çoklu dil desteği
- Morph İlişkileri: Herhangi bir kullanıcı modeli ile kullanılabilir
Kurulum
Composer aracılığıyla paketi yükleyin:
composer require wiensa/support-ticket
Paket yapılandırması, görünümleri ve migrationları yayınlamak için aşağıdaki komutu çalıştırın:
php artisan supportticket:install
Migrationları çalıştırın:
php artisan migrate
Kullanım
Rotalar
Paket, aşağıdaki rotaları ekler:
yoursite.com/support
- Kullanıcı biletleri ana sayfasıyoursite.com/support/tickets/create
- Yeni bilet oluşturma formuyoursite.com/support/tickets/{ticket}
- Bilet detayları ve yanıtlamayoursite.com/admin/support
- Yönetici bileti ana sayfasıyoursite.com/admin/support/tickets/{ticket}
- Yönetici bilet detayları ve yanıtlama
Rota önekleri config/supportticket.php
dosyasında özelleştirilebilir.
Viewlar
Viewları özelleştirmek için aşağıdaki komutu çalıştırın:
php artisan vendor:publish --tag=supportticket-views
Bu, şu görünümleri yayınlar:
resources/views/vendor/supportticket/tickets/
- Kullanıcı görünümleriresources/views/vendor/supportticket/admin/tickets/
- Yönetici görünümleri
Olaylar
Paket aşağıdaki olayları tetikler:
Wiensa\SupportTicket\Events\TicketCreated
- Yeni bilet oluşturulduğundaWiensa\SupportTicket\Events\TicketReplied
- Bilete yanıt verildiğindeWiensa\SupportTicket\Events\TicketClosed
- Bilet kapatıldığında
Yardımcı Fonksiyonlar
Paket aşağıdaki yardımcı fonksiyonları içerir:
// ID'ye göre bilet alma $ticket = support_ticket('ticket-id'); // Bilet durumu için HTML rozeti alma echo ticket_status_badge('open'); // Belirli bir duruma sahip biletlerin sayısını alma $openTickets = support_ticket_count('open'); // Bilet rotası oluşturma $url = ticket_route('tickets.show', $ticket);
Politikaları Özelleştirme
Paket politikalarını özelleştirmek için app/Policies/TicketPolicy.php
sınıfını düzenleyin. Bu sınıf, supportticket:install
komutunu çalıştırdığınızda otomatik olarak oluşturulur.
Yapılandırma
config/supportticket.php
dosyasında aşağıdaki ayarları özelleştirebilirsiniz:
routes
- Kullanıcı rotaları yapılandırmasıadmin_routes
- Yönetici rotaları yapılandırmasıpermissions
- İzin anahtarlarınotifications
- Bildirim ayarlarıevents
- Olay tetikleme ayarları
Lisans
Bu paket MIT lisansı altında lisanslanmıştır.