https://github.com/rexlmanu/laravel-tickets
Simple but effective solutions to provide support
https://github.com/rexlmanu/laravel-tickets
laravel laravel-tickets support tickets
Last synced: 4 months ago
JSON representation
Simple but effective solutions to provide support
- Host: GitHub
- URL: https://github.com/rexlmanu/laravel-tickets
- Owner: rexlManu
- License: mit
- Created: 2020-11-16T11:19:09.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2023-07-01T14:40:49.000Z (almost 2 years ago)
- Last Synced: 2024-12-07T21:50:49.107Z (5 months ago)
- Topics: laravel, laravel-tickets, support, tickets
- Language: PHP
- Homepage:
- Size: 183 KB
- Stars: 16
- Watchers: 2
- Forks: 8
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE.md
Awesome Lists containing this project
README
# Laravel Tickets
[](https://packagist.org/packages/rexlmanu/laravel-tickets)
[](https://travis-ci.org/rexlmanu/laravel-tickets)
[](https://scrutinizer-ci.com/g/rexlmanu/laravel-tickets)
[](https://packagist.org/packages/rexlmanu/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:
```bash
composer require rexlmanu/laravel-tickets
```After the installation
```bash
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
```phpuse RexlManu\LaravelTickets\Traits\HasTickets;
class User
{
use HasTickets; // important for laravel-tickets
}
```The ticket routes can be implemented via the macro
```phpuse Illuminate\Routing\Controller;
use RexlManu\LaravelTickets\Controllers\TicketControllable;class TicketController extends Controller {
use TicketControllable;
}
Route::tickets( TicketController::class );
```For ticket referneces
```phpuse 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 referenceConfig: All points of the configuration are documented.
### Testing
``` bash
composer test
```## Contributing
Please see [CONTRIBUTING](CONTRIBUTING.md) for details.
### Security
If you discover any security related issues, please email [email protected] instead of using the issue tracker.
## Credits
- [Emmanuel Lampe](https://github.com/rexlmanu)
- [René Roscher](https://github.com/rene-roscher)
- [All Contributors](../../contributors)## License
The MIT License (MIT). Please see [License File](LICENSE.md) for more information.