laravel-tickets
laravel-tickets copied to clipboard
Simple but effective solutions to provide support
Laravel Tickets
Simple but effective solution to provide support. Due to its lightweight construction, it fits into any project. In addition, it offers a wide range of configuration options from the start and is therefore suitable for any area.
Features
- Highly configurable
- auto closing
- file upload support
- permission support
- ticket categories
- priority
- easy to customize
- uuid support
- declare ticket reference
- multiple language support
Preview
Ticket list:
Ticket creation:
Ticket show:
Todos
- Improve documentation
- tailwind and vue frontend
- admin ticket scaffold
- unit tests
- uuid:
- rule,
- migrations
- controller stuff
Installation
You can install the package via composer:
composer require rexlmanu/laravel-tickets
After the installation
php artisan vendor:publish --provider=RexlManu\LaravelTickets\LaravelTicketsServiceProvider
Documentation
Currently the views are only implemented for bootstrap. After publishing, you should implement the layouts.
The trait HasTickets
should be added to the user model
use RexlManu\LaravelTickets\Traits\HasTickets;
class User
{
use HasTickets; // important for laravel-tickets
}
The ticket routes can be implemented via the macro
use Illuminate\Routing\Controller;
use RexlManu\LaravelTickets\Controllers\TicketControllable;
class TicketController extends Controller {
use TicketControllable;
}
Route::tickets( TicketController::class );
For ticket referneces
use Illuminate\Database\Eloquent\Model;
use RexlManu\LaravelTickets\Interfaces\TicketReference;
use RexlManu\LaravelTickets\Traits\HasTicketReference;
class ExampleModel extends Model implements TicketReference {
use HasTicketReference;
// Check if user has access to this model
function hasReferenceAccess() : bool {
return request()->user()->user_id == $this->user_id;
}
}
Add this model to the list of reference models now and Then you should see this model as reference
Config: All points of the configuration are documented.
Testing
composer test
Contributing
Please see CONTRIBUTING for details.
Security
If you discover any security related issues, please email [email protected] instead of using the issue tracker.
Credits
- Emmanuel Lampe
- René Roscher
- All Contributors
License
The MIT License (MIT). Please see License File for more information.