Skip to content

Commit

Permalink
wip
Browse files Browse the repository at this point in the history
  • Loading branch information
lam0819 committed Oct 17, 2024
1 parent 8200b62 commit c363284
Show file tree
Hide file tree
Showing 2 changed files with 38 additions and 2 deletions.
22 changes: 21 additions & 1 deletion src/Components/PanOverview.php
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,9 @@
use Filament\Forms\Components\Checkbox;
use Filament\Widgets\TableWidget as BaseWidget;
use Filament\Tables\Actions\Action;
use Filament\Tables\Actions\CreateAction;
use Filament\Tables\Actions\DeleteAction;
use Filament\Tables\Actions\ForceDeleteAction;
use Pan\PanConfiguration;
use SolutionForest\FilamentPanphp\Models\PanAnalytics;

Expand All @@ -25,8 +28,23 @@ public function table(Table $table): Table
TextColumn::make('hovers')->sortable(),
TextColumn::make('clicks')->sortable()
])
->actions([
DeleteAction::make()
])
->headerActions([
CreateAction::make()
->disableLabel()
->icon('heroicon-o-plus-circle')
->model(PanAnalytics::class)
->form([
TextInput::make('name')
->required()
->unique('pan_analytics', 'name')
->maxLength(255),
]),
Action::make('Config')
->disableLabel()
->icon('heroicon-o-adjustments-horizontal')
->form([
Checkbox::make('unlimitedAnalytics')
->inline()
Expand All @@ -42,7 +60,9 @@ public function table(Table $table): Table
->label('Allowed Analytics')
->separator(',')
->default($currentPanConfiguration['allowed_analytics'])
])->modalCancelAction(false)->modalSubmitAction(false)
])
->modalCancelAction(false)
->modalSubmitAction(false)
// ->action(function (array $data): void {
// $unlimitedAnalytics = $data['unlimitedAnalytics'] ?? false;
// $maxAnalytics = $data['maxAnalytics'] ?? 50;
Expand Down
18 changes: 17 additions & 1 deletion src/Models/PanAnalytics.php
Original file line number Diff line number Diff line change
Expand Up @@ -2,17 +2,33 @@

namespace SolutionForest\FilamentPanphp\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Support\Facades\Validator;

class PanAnalytics extends Model
{
use HasFactory;

protected $table = 'pan_analytics';

protected $fillable = [
'name',
'impressions',
'hovers',
'clicks',
];

public $timestamps = false;
public $rules = [
'name' => 'required|unique:pan_analytics|max:255',
];

public static function boot()
{
parent::boot();

static::saving(function ($model) {
Validator::make($model->toArray(), $model->rules)->validate();
});
}
}

0 comments on commit c363284

Please sign in to comment.