Skip to content

Commit

Permalink
hotfix
Browse files Browse the repository at this point in the history
  • Loading branch information
y-soy-loco committed Dec 22, 2024
1 parent 2f70a03 commit 37963ce
Show file tree
Hide file tree
Showing 14 changed files with 220 additions and 56 deletions.
25 changes: 8 additions & 17 deletions app/Filament/Resources/HelpdeskResource.php
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@
use Filament\Forms\Components\TextInput;
use Filament\Forms\Components\Select;
use App\Filament\Resources\HelpdeskResource\RelationManagers\MessagesRelationManager;
use Filament\Forms\Components\Textarea;
use Filament\Forms\Components\Hidden;

class HelpdeskResource extends Resource
{
Expand All @@ -25,25 +27,15 @@ public static function form(Form $form): Form
{
return $form
->schema([
Select::make('user_id')
->relationship('user', 'email')
->required()
->label('Użytkownik'),
TextInput::make('title')
->label('Temat zgłoszenia')
->required(),
TextInput::make('ticket_id')
->label('Numer zgłoszenia')
->required(),
Select::make('status')
->label('Status')
->options([
'new' => 'Nowe',
'waiting_for_support' => 'Oczekuje na helpdesk',
'waiting_for_customer' => 'Oczekuje na klienta',
'closed' => 'Zamknięte'
])
->required(),
Hidden::make('user_id')
->default(fn() => auth()->id()),
Hidden::make('status')
->default('new'),
Hidden::make('ticket_id')
->default('TIC-' . \Illuminate\Support\Str::random(8))
]);
}

Expand Down Expand Up @@ -97,7 +89,6 @@ public static function getPages(): array
];
}


public static function getEloquentQuery(): \Illuminate\Database\Eloquent\Builder
{
$query = parent::getEloquentQuery();
Expand Down
13 changes: 13 additions & 0 deletions app/Filament/Resources/HelpdeskResource/Pages/CreateHelpdesk.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,21 @@

use App\Filament\Resources\HelpdeskResource;
use Filament\Resources\Pages\CreateRecord;
use Filament\Notifications\Notification;

class CreateHelpdesk extends CreateRecord
{
protected static string $resource = HelpdeskResource::class;

protected function afterCreate(): void
{
Notification::make()
->success()
->title('Utworzono zgłoszenie')
->body('Kliknij na "Odpowiedz" by dodać pierwszą wiadomość')
->persistent()
->send();

$this->redirect($this->getResource()::getUrl('view', ['record' => $this->record]));
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,17 @@

use App\Filament\Resources\HelpdeskResource;
use Filament\Resources\Pages\ListRecords;
use Filament\Actions;

class ListHelpdesks extends ListRecords
{
protected static string $resource = HelpdeskResource::class;

protected function getHeaderActions(): array
{
return [
Actions\CreateAction::make()
->label('Nowe zgłoszenie')
];
}
}
19 changes: 15 additions & 4 deletions app/Filament/Resources/PaymentResource.php
Original file line number Diff line number Diff line change
Expand Up @@ -60,12 +60,24 @@ public static function table(Table $table): Table
TextColumn::make('received_at')
->label('Data wpłynięcia')
->dateTime('d.m.Y H:i')
->sortable(),
->sortable()
->searchable(),

TextColumn::make('user.name')
->label('Imię i nazwisko')
->visible(fn() => auth()->user()->isAdmin())
->searchable(),

TextColumn::make('user.email')
->label('Email')
->visible(fn() => auth()->user()->isAdmin())
->searchable(),

TextColumn::make('amount')
->label('Kwota')
->money('pln')
->sortable(),
->sortable()
->searchable(),

TextColumn::make('payment_type')
->label('Metoda płatności')
Expand Down Expand Up @@ -98,8 +110,7 @@ public static function table(Table $table): Table
Tables\Actions\DeleteBulkAction::make()
->label('Usuń zaznaczone'),
]),
]);
}
]); }

public static function getPages(): array
{
Expand Down
18 changes: 5 additions & 13 deletions app/Filament/Resources/UserResource.php
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
use Filament\Forms\Components\Checkbox;
use Filament\Forms\Components\Toggle;
use App\Filament\Resources\UserResource\Pages;
use STS\FilamentImpersonate\Tables\Actions\Impersonate;

class UserResource extends Resource
{
Expand All @@ -23,30 +24,21 @@ class UserResource extends Resource
protected static ?string $navigationLabel = 'Użytkownicy';
protected static ?string $modelLabel = 'Użytkownik';
protected static ?string $pluralModelLabel = 'Użytkownicy';

public static function table(Table $table): Table
{
return $table
->columns([
TextColumn::make('name')
->label('Nazwa')
->searchable(),
TextColumn::make('email')
->label('Email')
->searchable(),
TextColumn::make('name')->label('Nazwa'),
TextColumn::make('email')->label('Email'),
IconColumn::make('is_admin')
->boolean()
->label('Administrator'),
])
->actions([
Action::make('impersonate')
->label('Zaloguj jako')
->icon('heroicon-o-identification')
->action(fn (User $user) => auth()->login($user))
->visible(fn () => auth()->user()->isAdmin())
Impersonate::make(),
]);
}

public static function getNavigationGroup(): ?string
{
return 'Administracja';
Expand Down
12 changes: 12 additions & 0 deletions app/Filament/Resources/UserResource/Pages/EditUser.php
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,19 @@
use App\Filament\Resources\UserResource;
use Filament\Resources\Pages\EditRecord;

use STS\FilamentImpersonate\Pages\Actions\Impersonate;

class EditUser extends EditRecord
{
protected static string $resource = UserResource::class;

protected function getActions(): array
{
return [
Impersonate::make()->record($this->getRecord())
];
}
}



1 change: 0 additions & 1 deletion app/Models/Helpdesk.php
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@ class Helpdesk extends Model

protected $fillable = [
'title',
'content',
'ticket_id',
'status',
'conversation'
Expand Down
2 changes: 1 addition & 1 deletion app/Models/Message.php
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ class Message extends Model
protected $fillable = [
'subject_id',
'content',
'direction', // incoming/outgoing
'direction',
'email'
];

Expand Down
11 changes: 11 additions & 0 deletions app/Models/User.php
Original file line number Diff line number Diff line change
Expand Up @@ -71,4 +71,15 @@ public function isAdmin(): bool
{
return $this->is_admin;
}


public function canImpersonate()
{
return $this->isAdmin();
}

public function canBeImpersonated()
{
return true;
}
}
1 change: 1 addition & 0 deletions composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
"filament/filament": "^3.2",
"laravel/framework": "^11.9",
"laravel/tinker": "^2.9",
"stechstudio/filament-impersonate": "^3.15",
"webklex/laravel-imap": "^4.1"
},
"require-dev": {
Expand Down
111 changes: 110 additions & 1 deletion composer.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading

0 comments on commit 37963ce

Please sign in to comment.