This commit is contained in:
f4ilji
2024-11-07 16:11:35 +05:00
parent f01fecf1e6
commit fbea6ecd48
29 changed files with 578 additions and 89 deletions
@@ -17,7 +17,7 @@ class CreateAcademicJournal extends CreateRecord
protected function mutateFormDataBeforeCreate(array $data): array
{
$this->seoData = $this->generateSeo($data);
$data['search_data'] = $this->generateSearchData($data['about_program']);
$data['search_data'] = $this->generateSearchData($data['main_info']);
return $data;
}
@@ -17,7 +17,7 @@ class EditAcademicJournal extends EditRecord
protected function mutateFormDataBeforeSave(array $data): array
{
$this->seoData = $this->generateSeo($data);
$data['search_data'] = $this->generateSearchData($data['about_program']);
$data['search_data'] = $this->generateSearchData($data['main_info']);
return $data;
}
@@ -241,7 +241,7 @@ class EducationalProgramResource extends Resource
{
return $table
->columns([
Tables\Columns\TextColumn::make('name')->sortable(),
Tables\Columns\TextColumn::make('name')->sortable()->searchable(),
Tables\Columns\TextColumn::make('code_napr'),
Tables\Columns\TextColumn::make('directionStudy.lvl_edu')->limit(30),
])
@@ -3,10 +3,38 @@
namespace App\Filament\Resources\UserResource\Pages;
use App\Filament\Resources\UserResource;
use App\Models\User;
use Filament\Actions;
use Filament\Resources\Pages\CreateRecord;
use Illuminate\Support\Str;
class CreateUser extends CreateRecord
{
protected static string $resource = UserResource::class;
protected function mutateFormDataBeforeCreate(array $data): array
{
$data['slug'] = $this->generateUniqueSlug($data['name']);
return $data;
}
private function generateUniqueSlug(string $name): string
{
// Преобразуем имя в slug (например, заменяем пробелы на дефисы и приводим к нижнему регистру)
$slug = Str::slug($name);
// Проверяем, существует ли slug в базе данных
$count = 1;
$baseSlug = $slug;
while (User::where('slug', $slug)->exists()) {
// Если slug существует, добавляем суффикс
$slug = $baseSlug . '-' . $count;
$count++;
}
return $slug;
}
}
@@ -3,13 +3,42 @@
namespace App\Filament\Resources\UserResource\Pages;
use App\Filament\Resources\UserResource;
use App\Models\User;
use Filament\Actions;
use Filament\Resources\Pages\EditRecord;
use Illuminate\Support\Str;
class EditUser extends EditRecord
{
protected static string $resource = UserResource::class;
protected function mutateFormDataBeforeSave(array $data): array
{
$data['slug'] = $this->generateUniqueSlug($data['name']);
return $data;
}
private function generateUniqueSlug(string $name): string
{
// Преобразуем имя в slug (например, заменяем пробелы на дефисы и приводим к нижнему регистру)
$slug = Str::slug($name);
// Проверяем, существует ли slug в базе данных
$count = 1;
$baseSlug = $slug;
while (User::where('slug', $slug)->exists()) {
// Если slug существует, добавляем суффикс
$slug = $baseSlug . '-' . $count;
$count++;
}
return $slug;
}
protected function getHeaderActions(): array
{
return [