├── public ├── favicon.ico ├── robots.txt ├── images │ ├── login-office.jpeg │ ├── create-account-office.jpeg │ └── forgot-password-office.jpeg ├── .htaccess ├── js │ └── init-alpine.js └── index.php ├── database ├── .gitignore ├── seeders │ ├── LabelsSeeder.php │ ├── RolesSeeder.php │ ├── CategoriesSeeder.php │ └── DatabaseSeeder.php ├── migrations │ ├── 2022_11_05_121601_add_assigned_to_column_into_tickets_table.php │ ├── 2022_10_19_181857_create_label_ticket_table.php │ ├── 2022_10_19_181855_create_labels_table.php │ ├── 2022_10_19_181856_create_category_ticket_table.php │ ├── 2022_10_19_181854_create_categories_table.php │ ├── 2022_10_19_181853_create_messages_table.php │ ├── 2022_11_07_114458_add_event_column_to_activity_log_table.php │ ├── 2022_11_07_114459_add_batch_uuid_column_to_activity_log_table.php │ ├── 2014_10_12_100000_create_password_resets_table.php │ ├── 2014_10_12_000000_create_users_table.php │ ├── 2019_08_19_000000_create_failed_jobs_table.php │ ├── 2022_11_07_114457_create_activity_log_table.php │ ├── 2019_12_14_000001_create_personal_access_tokens_table.php │ ├── 2022_11_07_130044_create_media_table.php │ └── 2022_10_19_181852_create_tickets_table.php └── factories │ └── UserFactory.php ├── bootstrap ├── cache │ └── .gitignore └── app.php ├── storage ├── logs │ └── .gitignore ├── app │ ├── public │ │ └── .gitignore │ └── .gitignore ├── debugbar │ └── .gitignore └── framework │ ├── testing │ └── .gitignore │ ├── views │ └── .gitignore │ ├── cache │ ├── data │ │ └── .gitignore │ └── .gitignore │ ├── sessions │ └── .gitignore │ └── .gitignore ├── postcss.config.js ├── resources ├── css │ └── app.css ├── views │ ├── components │ │ ├── input-label.blade.php │ │ ├── auth-session-status.blade.php │ │ ├── text-input.blade.php │ │ ├── input-error.blade.php │ │ ├── dropdown-link.blade.php │ │ ├── auth-card.blade.php │ │ ├── primary-button.blade.php │ │ ├── nav-link.blade.php │ │ ├── responsive-nav-link.blade.php │ │ ├── dropdown.blade.php │ │ └── application-logo.blade.php │ ├── layouts │ │ ├── guest.blade.php │ │ ├── app.blade.php │ │ └── top-menu.blade.php │ ├── labels │ │ ├── create.blade.php │ │ ├── edit.blade.php │ │ └── index.blade.php │ ├── categories │ │ ├── create.blade.php │ │ ├── edit.blade.php │ │ └── index.blade.php │ ├── auth │ │ ├── confirm-password.blade.php │ │ ├── forgot-password.blade.php │ │ ├── verify-email.blade.php │ │ ├── reset-password.blade.php │ │ ├── login.blade.php │ │ ├── profile.blade.php │ │ └── register.blade.php │ ├── activities │ │ └── index.blade.php │ ├── users │ │ ├── create.blade.php │ │ ├── edit.blade.php │ │ └── index.blade.php │ ├── tickets │ │ ├── show.blade.php │ │ └── create.blade.php │ └── dashboard.blade.php └── js │ ├── app.js │ └── bootstrap.js ├── tests ├── TestCase.php ├── Unit │ └── ExampleTest.php ├── Feature │ ├── ExampleTest.php │ └── Auth │ │ ├── RegistrationTest.php │ │ ├── AuthenticationTest.php │ │ ├── PasswordConfirmationTest.php │ │ ├── EmailVerificationTest.php │ │ └── PasswordResetTest.php └── CreatesApplication.php ├── .gitattributes ├── .gitignore ├── vite.config.js ├── app ├── Http │ ├── Controllers │ │ ├── DownloadAttachmentController.php │ │ ├── ActivityController.php │ │ ├── Controller.php │ │ ├── DashboardController.php │ │ ├── Auth │ │ │ ├── EmailVerificationPromptController.php │ │ │ ├── EmailVerificationNotificationController.php │ │ │ ├── VerifyEmailController.php │ │ │ ├── ConfirmablePasswordController.php │ │ │ ├── AuthenticatedSessionController.php │ │ │ ├── PasswordResetLinkController.php │ │ │ ├── RegisteredUserController.php │ │ │ └── NewPasswordController.php │ │ ├── ProfileController.php │ │ ├── MessageController.php │ │ ├── LabelController.php │ │ ├── CategoryController.php │ │ └── UserController.php │ ├── Middleware │ │ ├── EncryptCookies.php │ │ ├── VerifyCsrfToken.php │ │ ├── PreventRequestsDuringMaintenance.php │ │ ├── TrustHosts.php │ │ ├── TrimStrings.php │ │ ├── Authenticate.php │ │ ├── ValidateSignature.php │ │ ├── TrustProxies.php │ │ └── RedirectIfAuthenticated.php │ ├── Requests │ │ ├── MessageRequest.php │ │ ├── StoreUserRequest.php │ │ ├── LabelRequest.php │ │ ├── CategoryRequest.php │ │ ├── ProfileUpdateRequest.php │ │ ├── EditUserRequest.php │ │ ├── TicketRequest.php │ │ └── Auth │ │ │ └── LoginRequest.php │ └── Kernel.php ├── View │ └── Components │ │ ├── AppLayout.php │ │ └── GuestLayout.php ├── helpers.php ├── Providers │ ├── BroadcastServiceProvider.php │ ├── AuthServiceProvider.php │ ├── AppServiceProvider.php │ ├── EventServiceProvider.php │ └── RouteServiceProvider.php ├── Models │ ├── Label.php │ ├── Category.php │ ├── Ticket.php │ └── User.php ├── Console │ └── Kernel.php ├── Notifications │ ├── NewTicketCreatedNotification.php │ ├── AssignedTicketNotification.php │ └── CommentEmailNotification.php ├── Policies │ └── TicketPolicy.php └── Exceptions │ └── Handler.php ├── package.json ├── lang └── en │ ├── pagination.php │ ├── auth.php │ └── passwords.php ├── routes ├── channels.php ├── api.php ├── console.php ├── web.php └── auth.php ├── config ├── cors.php ├── services.php ├── view.php ├── hashing.php ├── broadcasting.php ├── sanctum.php ├── filesystems.php ├── laravel_ticket.php ├── queue.php ├── cache.php ├── mail.php ├── auth.php └── logging.php ├── README.md ├── phpunit.xml ├── .env.example ├── artisan └── composer.json /public/favicon.ico: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /database/.gitignore: -------------------------------------------------------------------------------- 1 | *.sqlite* 2 | -------------------------------------------------------------------------------- /bootstrap/cache/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore 3 | -------------------------------------------------------------------------------- /storage/logs/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore 3 | -------------------------------------------------------------------------------- /public/robots.txt: -------------------------------------------------------------------------------- 1 | User-agent: * 2 | Disallow: 3 | -------------------------------------------------------------------------------- /storage/app/public/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore 3 | -------------------------------------------------------------------------------- /storage/debugbar/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore 3 | -------------------------------------------------------------------------------- /storage/app/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !public/ 3 | !.gitignore 4 | -------------------------------------------------------------------------------- /storage/framework/testing/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore 3 | -------------------------------------------------------------------------------- /storage/framework/views/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore 3 | -------------------------------------------------------------------------------- /storage/framework/cache/data/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore 3 | -------------------------------------------------------------------------------- /storage/framework/sessions/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !.gitignore 3 | -------------------------------------------------------------------------------- /storage/framework/cache/.gitignore: -------------------------------------------------------------------------------- 1 | * 2 | !data/ 3 | !.gitignore 4 | -------------------------------------------------------------------------------- /postcss.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | plugins: { 3 | tailwindcss: {}, 4 | autoprefixer: {}, 5 | }, 6 | }; 7 | -------------------------------------------------------------------------------- /public/images/login-office.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LaravelDaily/Laravel-Demo-Support-Tickets/HEAD/public/images/login-office.jpeg -------------------------------------------------------------------------------- /public/images/create-account-office.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LaravelDaily/Laravel-Demo-Support-Tickets/HEAD/public/images/create-account-office.jpeg -------------------------------------------------------------------------------- /public/images/forgot-password-office.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LaravelDaily/Laravel-Demo-Support-Tickets/HEAD/public/images/forgot-password-office.jpeg -------------------------------------------------------------------------------- /resources/css/app.css: -------------------------------------------------------------------------------- 1 | @import 'tailwindcss/base'; 2 | @import 'tailwindcss/components'; 3 | @import 'tailwindcss/utilities'; 4 | 5 | @import "filepond/dist/filepond.min.css"; 6 | -------------------------------------------------------------------------------- /storage/framework/.gitignore: -------------------------------------------------------------------------------- 1 | compiled.php 2 | config.php 3 | down 4 | events.scanned.php 5 | maintenance.php 6 | routes.php 7 | routes.scanned.php 8 | schedule-* 9 | services.json 10 | -------------------------------------------------------------------------------- /resources/views/components/input-label.blade.php: -------------------------------------------------------------------------------- 1 | @props(['value']) 2 | 3 | 6 | -------------------------------------------------------------------------------- /tests/TestCase.php: -------------------------------------------------------------------------------- 1 | merge(['class' => 'font-medium text-sm text-green-600']) }}> 5 | {{ $status }} 6 | 7 | @endif 8 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | * text=auto 2 | 3 | *.blade.php diff=html 4 | *.css diff=css 5 | *.html diff=html 6 | *.md diff=markdown 7 | *.php diff=php 8 | 9 | /.github export-ignore 10 | CHANGELOG.md export-ignore 11 | .styleci.yml export-ignore 12 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /public/build 3 | /public/hot 4 | /public/storage 5 | /storage/*.key 6 | /vendor 7 | .env 8 | .env.backup 9 | .phpunit.result.cache 10 | Homestead.json 11 | Homestead.yaml 12 | auth.json 13 | npm-debug.log 14 | yarn-error.log 15 | /.idea 16 | /.vscode 17 | -------------------------------------------------------------------------------- /resources/views/components/text-input.blade.php: -------------------------------------------------------------------------------- 1 | @props(['disabled' => false]) 2 | 3 | merge(['class' => 'mt-1 border-gray-300 rounded-md shadow-sm focus:border-primary-300 focus:ring focus:ring-primary-200 focus:ring-opacity-50 focus-within:text-primary-600']) !!}> 4 | -------------------------------------------------------------------------------- /resources/views/components/input-error.blade.php: -------------------------------------------------------------------------------- 1 | @props(['messages']) 2 | 3 | @if ($messages) 4 |
| Description | 14 |Subject ID | 15 |Subject Type | 16 |Causer | 17 |Created At | 18 |
|---|---|---|---|---|
| 24 | {{ $activity->description }} 25 | | 26 |27 | {{ $activity->subject_id }} 28 | | 29 |30 | {{ $activity->subject_type }} 31 | | 32 |33 | {{ $activity?->causer()->first()->name }} 34 | | 35 |36 | {{ $activity->created_at }} 37 | | 38 |
| No activities found. | 42 |||||
{{ $message }}
20 |66 | {{ __('Already registered?') }} 68 |
69 || Name | 20 |Role | 22 |23 | | |
|---|---|---|---|
| 29 | {{ $user->name }} 30 | | 31 |32 | {{ $user->email }} 33 | | 34 |35 | {{ $user->roles()->first()->name }} 36 | | 37 |38 | 39 | {{ __('Edit') }} 40 | 41 | 42 | 49 | | 50 |
| Name | 20 |Slug | 21 |Is visible | 22 |23 | |
|---|---|---|---|
| 29 | {{ $label->name }} 30 | | 31 |32 | {{ $label->slug }} 33 | | 34 |35 | {{ $label->is_visible ? 'Yes' : 'No' }} 36 | | 37 |38 | 39 | {{ __('Edit') }} 40 | 41 | 42 | 49 | | 50 |
| No labels found. | 54 ||||
| Name | 20 |Slug | 21 |Is visible | 22 |23 | |
|---|---|---|---|
| 29 | {{ $category->name }} 30 | | 31 |32 | {{ $category->slug }} 33 | | 34 |35 | {{ $category->is_visible ? 'Yes' : 'No' }} 36 | | 37 |38 | 39 | {{ __('Edit') }} 40 | 41 | 42 | 49 | | 50 |
| No categories found. | 54 ||||
39 | {{ $ticket->message }} 40 |
41 |51 | {{ $media->file_name }} 52 |
53 | @endforeach 54 |{{ $message->message }}
82 | @empty 83 |84 | No messages found. 85 |
86 | @endforelse 87 |17 | Total tickets 18 |
19 |20 | {{ $totalTickets }} 21 |
22 |36 | Open tickets 37 |
38 |39 | {{ $openTickets }} 40 |
41 |55 | Closed tickets 56 |
57 |58 | {{ $closedTickets }} 59 |
60 |