Compare commits
No commits in common. "da48d1a986b3c44835b9057c97d8c9d7446761e4" and "fabe26bc09860d1a93e2c66811f13e516052b6fb" have entirely different histories.
da48d1a986
...
fabe26bc09
@ -4,13 +4,10 @@ namespace App\Filament\Imports;
|
||||
|
||||
use App\Models\Student;
|
||||
use App\Models\User;
|
||||
use Carbon\Carbon;
|
||||
use Filament\Actions\Imports\ImportColumn;
|
||||
use Filament\Actions\Imports\Importer;
|
||||
use Filament\Actions\Imports\Models\Import;
|
||||
use Filament\Actions\Imports\Exceptions\RowImportFailedException;
|
||||
use Filament\Notifications\Notification;
|
||||
use Spatie\Permission\Models\Role;
|
||||
|
||||
class StudentImporter extends Importer
|
||||
{
|
||||
@ -68,31 +65,6 @@ class StudentImporter extends Importer
|
||||
throw new RowImportFailedException('Email sudah digunakan');
|
||||
}
|
||||
|
||||
$parentRole = Role::where('name', 'parent')->first();
|
||||
|
||||
$birthDate = Carbon::parse($this->data['birth_date']);
|
||||
$password = $birthDate->format('dmY') . $this->data['nis'];
|
||||
|
||||
$parentUser = User::updateOrCreate(
|
||||
['email' => $this->data['email']],
|
||||
[
|
||||
'name' => $this->data['parent_name'],
|
||||
'password' => bcrypt($password),
|
||||
'phone' => $this->data['parent_phone'],
|
||||
]
|
||||
);
|
||||
|
||||
$parentUser->assignRole($parentRole);
|
||||
|
||||
$recipient = auth()->user();
|
||||
if ($recipient) {
|
||||
Notification::make()
|
||||
->title('Impor Siswa Berhasil')
|
||||
->body('Siswa baru dengan NIS ' . $this->data['nis'] . ' dan orang tua ' . $this->data['parent_name'] . ' berhasil diimpor.')
|
||||
->success()
|
||||
->sendToDatabase($recipient);
|
||||
}
|
||||
|
||||
return new Student();
|
||||
}
|
||||
|
||||
|
||||
@ -5,7 +5,6 @@ namespace App\Filament\Resources;
|
||||
use App\Filament\Resources\AcademicYearResource\Pages;
|
||||
use App\Filament\Resources\AcademicYearResource\RelationManagers;
|
||||
use App\Models\AcademicYear;
|
||||
use App\Models\ClassSubject;
|
||||
use Filament\Forms;
|
||||
use Filament\Forms\Form;
|
||||
use Filament\Notifications\Notification;
|
||||
@ -71,9 +70,7 @@ class AcademicYearResource extends Resource
|
||||
Tables\Filters\TrashedFilter::make(),
|
||||
])
|
||||
->actions([
|
||||
Tables\Actions\EditAction::make()->visible(fn () => auth()->user()->hasRole('admin')),
|
||||
Tables\Actions\DeleteAction::make()->visible(fn () => auth()->user()->hasRole('admin')),
|
||||
Tables\Actions\RestoreAction::make()->visible(fn (AcademicYear $record) => auth()->user()->hasRole('admin') && $record->trashed()),
|
||||
Tables\Actions\EditAction::make(),
|
||||
Tables\Actions\Action::make('toggleActive')
|
||||
->label('Toggle Active')
|
||||
->icon('heroicon-o-power')
|
||||
@ -93,8 +90,13 @@ class AcademicYearResource extends Resource
|
||||
])
|
||||
->bulkActions([
|
||||
Tables\Actions\BulkActionGroup::make([
|
||||
Tables\Actions\DeleteBulkAction::make()->visible(fn () => auth()->user()->hasRole('admin')),
|
||||
Tables\Actions\DeleteBulkAction::make(),
|
||||
Tables\Actions\ForceDeleteBulkAction::make(),
|
||||
Tables\Actions\RestoreBulkAction::make(),
|
||||
]),
|
||||
])
|
||||
->emptyStateActions([
|
||||
Tables\Actions\CreateAction::make(),
|
||||
]);
|
||||
}
|
||||
|
||||
|
||||
@ -35,4 +35,13 @@ class EditAcademicYear extends EditRecord
|
||||
|
||||
return $data;
|
||||
}
|
||||
|
||||
protected function getHeaderActions(): array
|
||||
{
|
||||
return [
|
||||
Actions\DeleteAction::make(),
|
||||
Actions\ForceDeleteAction::make(),
|
||||
Actions\RestoreAction::make(),
|
||||
];
|
||||
}
|
||||
}
|
||||
|
||||
@ -7,7 +7,6 @@ use App\Filament\Resources\AssessmentResource\RelationManagers;
|
||||
use App\Models\Assessment;
|
||||
use App\Models\AssessmentComponent;
|
||||
use App\Models\ClassStudent;
|
||||
use App\Models\ExtracurricularAssessment;
|
||||
use App\Models\HomeRoomTeacher;
|
||||
use App\Models\Student;
|
||||
use App\Models\TeacherSubject;
|
||||
@ -180,31 +179,13 @@ class AssessmentResource extends Resource
|
||||
->getOptionLabelFromRecordUsing(fn (TeacherSubject $record) =>
|
||||
$record->teacher->name . ' - ' . $record->subject->name)
|
||||
->preload(),
|
||||
|
||||
Tables\Columns\TextColumn::make('created_at')
|
||||
->dateTime()
|
||||
->sortable()
|
||||
->toggleable(isToggledHiddenByDefault: true),
|
||||
Tables\Columns\TextColumn::make('updated_at')
|
||||
->dateTime()
|
||||
->sortable()
|
||||
->toggleable(isToggledHiddenByDefault: true),
|
||||
Tables\Columns\TextColumn::make('deleted_at') // Add this column to show deleted timestamp
|
||||
->dateTime()
|
||||
->sortable()
|
||||
->toggleable(isToggledHiddenByDefault: true),
|
||||
])
|
||||
->filters([
|
||||
Tables\Filters\TrashedFilter::make()->label('Tampilkan Data yang Dihapus'),
|
||||
])
|
||||
->actions([
|
||||
Tables\Actions\EditAction::make()->visible(fn () => auth()->user()->hasRole('admin')),
|
||||
Tables\Actions\DeleteAction::make()->visible(fn () => auth()->user()->hasRole('admin')),
|
||||
Tables\Actions\RestoreAction::make()->visible(fn (Assessment $record) => auth()->user()->hasRole('admin') && $record->trashed()),
|
||||
Tables\Actions\EditAction::make(),
|
||||
])
|
||||
->bulkActions([
|
||||
Tables\Actions\BulkActionGroup::make([
|
||||
Tables\Actions\DeleteBulkAction::make()->visible(fn () => auth()->user()->hasRole('admin')),
|
||||
Tables\Actions\DeleteBulkAction::make()->visible(fn () => auth()->user()->hasRole('admin') || auth()->user()->hasRole('teacher')),
|
||||
]),
|
||||
]);
|
||||
}
|
||||
|
||||
@ -3,7 +3,6 @@
|
||||
namespace App\Filament\Resources;
|
||||
|
||||
use App\Filament\Resources\AttendancesResource\Pages;
|
||||
use App\Models\Assessment;
|
||||
use App\Models\Attendances;
|
||||
use App\Models\ClassRoom;
|
||||
use App\Models\ClassStudent;
|
||||
@ -233,32 +232,19 @@ class AttendancesResource extends Resource
|
||||
->getOptionLabelFromRecordUsing(fn (TeacherSubject $record) =>
|
||||
$record->teacher->name . ' - ' . $record->subject->name)
|
||||
->preload(),
|
||||
Tables\Columns\TextColumn::make('created_at')
|
||||
->dateTime()
|
||||
->sortable()
|
||||
->toggleable(isToggledHiddenByDefault: true),
|
||||
Tables\Columns\TextColumn::make('updated_at')
|
||||
->dateTime()
|
||||
->sortable()
|
||||
->toggleable(isToggledHiddenByDefault: true),
|
||||
Tables\Columns\TextColumn::make('deleted_at') // Add this column to show deleted timestamp
|
||||
->dateTime()
|
||||
->sortable()
|
||||
->toggleable(isToggledHiddenByDefault: true),
|
||||
])
|
||||
->filters([
|
||||
Tables\Filters\TrashedFilter::make()->label('Tampilkan Data yang Dihapus'),
|
||||
])
|
||||
->actions([
|
||||
Tables\Actions\EditAction::make()->visible(fn () => auth()->user()->hasRole('admin')),
|
||||
Tables\Actions\DeleteAction::make()->visible(fn () => auth()->user()->hasRole('admin')),
|
||||
Tables\Actions\RestoreAction::make()->visible(fn (Attendances $record) => auth()->user()->hasRole('admin') && $record->trashed()),
|
||||
Tables\Actions\EditAction::make()
|
||||
->iconButton(),
|
||||
Tables\Actions\DeleteAction::make()
|
||||
->iconButton(),
|
||||
])
|
||||
->bulkActions([
|
||||
Tables\Actions\BulkActionGroup::make([
|
||||
Tables\Actions\DeleteBulkAction::make()->visible(fn () => auth()->user()->hasRole('admin')),
|
||||
Tables\Actions\DeleteBulkAction::make()->visible(fn () => auth()->user()->hasRole('admin') || auth()->user()->hasRole('teacher')),
|
||||
]),
|
||||
])
|
||||
// ->defaultSort('teacherSubject.academicYear.name', 'desc')
|
||||
->groups([
|
||||
Tables\Grouping\Group::make('teacherSubject.subject.name')
|
||||
->label('Mapel')
|
||||
|
||||
@ -5,7 +5,6 @@ namespace App\Filament\Resources;
|
||||
use App\Filament\Resources\ClassRoomResource\Pages;
|
||||
use App\Filament\Resources\ClassRoomResource\RelationManagers;
|
||||
use App\Models\ClassRoom;
|
||||
use App\Models\Extracurricular;
|
||||
use Filament\Forms;
|
||||
use Filament\Forms\Form;
|
||||
use Filament\Resources\Resource;
|
||||
@ -56,7 +55,6 @@ class ClassRoomResource extends Resource
|
||||
->searchable(),
|
||||
Tables\Columns\TextColumn::make('class_level')
|
||||
->searchable(),
|
||||
|
||||
Tables\Columns\TextColumn::make('created_at')
|
||||
->dateTime()
|
||||
->sortable()
|
||||
@ -65,23 +63,22 @@ class ClassRoomResource extends Resource
|
||||
->dateTime()
|
||||
->sortable()
|
||||
->toggleable(isToggledHiddenByDefault: true),
|
||||
Tables\Columns\TextColumn::make('deleted_at') // Add this column to show deleted timestamp
|
||||
->dateTime()
|
||||
->sortable()
|
||||
->toggleable(isToggledHiddenByDefault: true),
|
||||
])
|
||||
->filters([
|
||||
Tables\Filters\TrashedFilter::make()->label('Tampilkan Data yang Dihapus'),
|
||||
Tables\Filters\TrashedFilter::make(),
|
||||
])
|
||||
->actions([
|
||||
Tables\Actions\EditAction::make()->visible(fn () => auth()->user()->hasRole('admin')),
|
||||
Tables\Actions\DeleteAction::make()->visible(fn () => auth()->user()->hasRole('admin')),
|
||||
Tables\Actions\RestoreAction::make()->visible(fn (ClassRoom $record) => auth()->user()->hasRole('admin') && $record->trashed()),
|
||||
Tables\Actions\EditAction::make(),
|
||||
Tables\Actions\DeleteAction::make(),
|
||||
Tables\Actions\RestoreAction::make(),
|
||||
])
|
||||
->bulkActions([
|
||||
Tables\Actions\BulkActionGroup::make([
|
||||
Tables\Actions\DeleteBulkAction::make()->visible(fn () => auth()->user()->hasRole('admin')),
|
||||
Tables\Actions\DeleteBulkAction::make(),
|
||||
]),
|
||||
])
|
||||
->emptyStateActions([
|
||||
Tables\Actions\CreateAction::make(),
|
||||
]);
|
||||
}
|
||||
|
||||
|
||||
@ -14,4 +14,10 @@ class EditClassRoom extends EditRecord
|
||||
{
|
||||
return 'Edit Kelas';
|
||||
}
|
||||
protected function getHeaderActions(): array
|
||||
{
|
||||
return [
|
||||
Actions\DeleteAction::make(),
|
||||
];
|
||||
}
|
||||
}
|
||||
|
||||
@ -18,9 +18,7 @@ class ListClassRooms extends ListRecords
|
||||
protected function getHeaderActions(): array
|
||||
{
|
||||
return [
|
||||
Actions\CreateAction::make()
|
||||
->label('Tambah Kelas')
|
||||
->icon('heroicon-o-user-group'),
|
||||
Actions\CreateAction::make(),
|
||||
];
|
||||
}
|
||||
}
|
||||
|
||||
@ -90,6 +90,9 @@ class ClassStudentResource extends Resource
|
||||
Tables\Actions\BulkActionGroup::make([
|
||||
Tables\Actions\DeleteBulkAction::make(),
|
||||
]),
|
||||
])
|
||||
->emptyStateActions([
|
||||
Tables\Actions\CreateAction::make(),
|
||||
]);
|
||||
}
|
||||
|
||||
|
||||
@ -18,9 +18,7 @@ class ListClassStudents extends ListRecords
|
||||
protected function getHeaderActions(): array
|
||||
{
|
||||
return [
|
||||
Actions\CreateAction::make()
|
||||
->label('Tambah Kelas per-Siswa')
|
||||
->icon('heroicon-o-user-group'),
|
||||
Actions\CreateAction::make(),
|
||||
];
|
||||
}
|
||||
}
|
||||
|
||||
@ -4,7 +4,6 @@ namespace App\Filament\Resources;
|
||||
|
||||
use App\Filament\Resources\ClassSubjectResource\Pages;
|
||||
use App\Filament\Resources\ClassSubjectResource\RelationManagers;
|
||||
use App\Models\ClassRoom;
|
||||
use App\Models\ClassSubject;
|
||||
use Filament\Forms;
|
||||
use Filament\Forms\Form;
|
||||
@ -51,31 +50,17 @@ class ClassSubjectResource extends Resource
|
||||
->columns([
|
||||
TextColumn::make('class.class_name')->label('Kelas')->sortable()->searchable(),
|
||||
TextColumn::make('subject.name')->label('Mata Pelajaran')->sortable()->searchable(),
|
||||
|
||||
Tables\Columns\TextColumn::make('created_at')
|
||||
->dateTime()
|
||||
->sortable()
|
||||
->toggleable(isToggledHiddenByDefault: true),
|
||||
Tables\Columns\TextColumn::make('updated_at')
|
||||
->dateTime()
|
||||
->sortable()
|
||||
->toggleable(isToggledHiddenByDefault: true),
|
||||
Tables\Columns\TextColumn::make('deleted_at') // Add this column to show deleted timestamp
|
||||
->dateTime()
|
||||
->sortable()
|
||||
->toggleable(isToggledHiddenByDefault: true),
|
||||
TextColumn::make('academicYear.name')->label('Tahun Ajaran')->sortable(),
|
||||
])
|
||||
->filters([
|
||||
Tables\Filters\TrashedFilter::make()->label('Tampilkan Data yang Dihapus'),
|
||||
//
|
||||
])
|
||||
->actions([
|
||||
Tables\Actions\EditAction::make()->visible(fn () => auth()->user()->hasRole('admin')),
|
||||
Tables\Actions\DeleteAction::make()->visible(fn () => auth()->user()->hasRole('admin')),
|
||||
Tables\Actions\RestoreAction::make()->visible(fn (ClassSubject $record) => auth()->user()->hasRole('admin') && $record->trashed()),
|
||||
Tables\Actions\EditAction::make(),
|
||||
])
|
||||
->bulkActions([
|
||||
Tables\Actions\BulkActionGroup::make([
|
||||
Tables\Actions\DeleteBulkAction::make()->visible(fn () => auth()->user()->hasRole('admin')),
|
||||
Tables\Actions\DeleteBulkAction::make(),
|
||||
]),
|
||||
]);
|
||||
}
|
||||
|
||||
@ -14,4 +14,11 @@ class EditClassSubject extends EditRecord
|
||||
{
|
||||
return 'Edit Mata Pelajaran per-Kelas';
|
||||
}
|
||||
|
||||
protected function getHeaderActions(): array
|
||||
{
|
||||
return [
|
||||
Actions\DeleteAction::make(),
|
||||
];
|
||||
}
|
||||
}
|
||||
|
||||
@ -18,9 +18,7 @@ class ListClassSubjects extends ListRecords
|
||||
protected function getHeaderActions(): array
|
||||
{
|
||||
return [
|
||||
Actions\CreateAction::make()
|
||||
->label('Tambah Mata Pelajaran per-Kelas')
|
||||
->icon('heroicon-o-user-group'),
|
||||
Actions\CreateAction::make(),
|
||||
];
|
||||
}
|
||||
}
|
||||
|
||||
@ -103,6 +103,9 @@ class CompetencyAchievementResource extends Resource
|
||||
Tables\Actions\BulkActionGroup::make([
|
||||
Tables\Actions\DeleteBulkAction::make()->visible(fn () => auth()->user()->hasRole('admin') || auth()->user()->hasRole('teacher')),
|
||||
]),
|
||||
])
|
||||
->emptyStateActions([
|
||||
Tables\Actions\CreateAction::make(),
|
||||
]);
|
||||
}
|
||||
|
||||
|
||||
@ -5,7 +5,6 @@ namespace App\Filament\Resources;
|
||||
use App\Filament\Resources\ExtracurricularAssessmentResource\Pages;
|
||||
use App\Filament\Resources\ExtracurricularAssessmentResource\RelationManagers;
|
||||
use App\Models\ClassStudent;
|
||||
use App\Models\ClassSubject;
|
||||
use App\Models\Extracurricular;
|
||||
use App\Models\ExtracurricularAssessment;
|
||||
use App\Models\HomeRoomTeacher;
|
||||
@ -117,32 +116,20 @@ class ExtracurricularAssessmentResource extends Resource
|
||||
|
||||
Tables\Columns\TextColumn::make('description')
|
||||
->label('Description'),
|
||||
|
||||
Tables\Columns\TextColumn::make('created_at')
|
||||
->dateTime()
|
||||
->sortable()
|
||||
->toggleable(isToggledHiddenByDefault: true),
|
||||
Tables\Columns\TextColumn::make('updated_at')
|
||||
->dateTime()
|
||||
->sortable()
|
||||
->toggleable(isToggledHiddenByDefault: true),
|
||||
Tables\Columns\TextColumn::make('deleted_at') // Add this column to show deleted timestamp
|
||||
->dateTime()
|
||||
->sortable()
|
||||
->toggleable(isToggledHiddenByDefault: true),
|
||||
])
|
||||
->filters([
|
||||
Tables\Filters\TrashedFilter::make()->label('Tampilkan Data yang Dihapus'),
|
||||
//
|
||||
])
|
||||
->actions([
|
||||
Tables\Actions\EditAction::make()->visible(fn () => auth()->user()->hasRole('admin')),
|
||||
Tables\Actions\DeleteAction::make()->visible(fn () => auth()->user()->hasRole('admin')),
|
||||
Tables\Actions\RestoreAction::make()->visible(fn (ExtracurricularAssessment $record) => auth()->user()->hasRole('admin') && $record->trashed()),
|
||||
Tables\Actions\EditAction::make(),
|
||||
])
|
||||
->bulkActions([
|
||||
Tables\Actions\BulkActionGroup::make([
|
||||
Tables\Actions\DeleteBulkAction::make()->visible(fn () => auth()->user()->hasRole('admin')),
|
||||
Tables\Actions\DeleteBulkAction::make()->visible(fn () => auth()->user()->hasRole('admin') || auth()->user()->hasRole('teacher')),
|
||||
]),
|
||||
])
|
||||
->emptyStateActions([
|
||||
Tables\Actions\CreateAction::make(),
|
||||
]);
|
||||
}
|
||||
|
||||
|
||||
@ -14,4 +14,11 @@ class EditExtracurricularAssessment extends EditRecord
|
||||
{
|
||||
return 'Edit Penilaian Ektrakurikuler';
|
||||
}
|
||||
|
||||
protected function getHeaderActions(): array
|
||||
{
|
||||
return [
|
||||
Actions\DeleteAction::make(),
|
||||
];
|
||||
}
|
||||
}
|
||||
|
||||
@ -37,9 +37,7 @@ class ListExtracurricularAssessments extends ListRecords
|
||||
protected function getHeaderActions(): array
|
||||
{
|
||||
return [
|
||||
Actions\CreateAction::make()
|
||||
->label('Tambah Penilaian Ekstrakurikuler')
|
||||
->icon('heroicon-o-user-group'),
|
||||
Actions\CreateAction::make(),
|
||||
];
|
||||
}
|
||||
}
|
||||
|
||||
@ -4,7 +4,6 @@ namespace App\Filament\Resources;
|
||||
|
||||
use App\Filament\Resources\ExtracurricularResource\Pages;
|
||||
use App\Models\Extracurricular;
|
||||
use App\Models\Student;
|
||||
use Filament\Forms;
|
||||
use Filament\Forms\Form;
|
||||
use Filament\Resources\Resource;
|
||||
@ -50,30 +49,20 @@ class ExtracurricularResource extends Resource
|
||||
->limit(50),
|
||||
|
||||
Tables\Columns\TextColumn::make('created_at')
|
||||
->dateTime()
|
||||
->sortable()
|
||||
->toggleable(isToggledHiddenByDefault: true),
|
||||
Tables\Columns\TextColumn::make('updated_at')
|
||||
->dateTime()
|
||||
->sortable()
|
||||
->toggleable(isToggledHiddenByDefault: true),
|
||||
Tables\Columns\TextColumn::make('deleted_at') // Add this column to show deleted timestamp
|
||||
->dateTime()
|
||||
->sortable()
|
||||
->toggleable(isToggledHiddenByDefault: true),
|
||||
->label('Created at')
|
||||
->dateTime('d M Y'),
|
||||
])
|
||||
->filters([
|
||||
Tables\Filters\TrashedFilter::make()->label('Tampilkan Data yang Dihapus'),
|
||||
])
|
||||
->actions([
|
||||
Tables\Actions\EditAction::make()->visible(fn () => auth()->user()->hasRole('admin')),
|
||||
Tables\Actions\DeleteAction::make()->visible(fn () => auth()->user()->hasRole('admin')),
|
||||
Tables\Actions\RestoreAction::make()->visible(fn (Extracurricular $record) => auth()->user()->hasRole('admin') && $record->trashed()),
|
||||
Tables\Actions\EditAction::make(),
|
||||
Tables\Actions\DeleteAction::make(),
|
||||
])
|
||||
->bulkActions([
|
||||
Tables\Actions\BulkActionGroup::make([
|
||||
Tables\Actions\DeleteBulkAction::make()->visible(fn () => auth()->user()->hasRole('admin')),
|
||||
]),
|
||||
Tables\Actions\DeleteBulkAction::make(),
|
||||
])
|
||||
->emptyStateActions([
|
||||
Tables\Actions\CreateAction::make(),
|
||||
]);
|
||||
}
|
||||
|
||||
|
||||
@ -14,4 +14,11 @@ class EditExtracurricular extends EditRecord
|
||||
{
|
||||
return 'Edit Ektrakuriler';
|
||||
}
|
||||
|
||||
protected function getHeaderActions(): array
|
||||
{
|
||||
return [
|
||||
Actions\DeleteAction::make(),
|
||||
];
|
||||
}
|
||||
}
|
||||
|
||||
@ -18,9 +18,7 @@ class ListExtracurriculars extends ListRecords
|
||||
protected function getHeaderActions(): array
|
||||
{
|
||||
return [
|
||||
Actions\CreateAction::make()
|
||||
->label('Tambah Ektrakurikuler')
|
||||
->icon('heroicon-o-user-group'),
|
||||
Actions\CreateAction::make()->label('Tambah Ekstrakurikuler'),
|
||||
];
|
||||
}
|
||||
}
|
||||
|
||||
@ -7,7 +7,6 @@ use App\Filament\Resources\HomeRoomTeacherResource\RelationManagers;
|
||||
use App\Models\AcademicYear;
|
||||
use App\Models\ClassRoom;
|
||||
use App\Models\HomeRoomTeacher;
|
||||
use App\Models\LearningObjective;
|
||||
use App\Models\User;
|
||||
use Filament\Forms;
|
||||
use Filament\Forms\Form;
|
||||
@ -73,23 +72,24 @@ class HomeRoomTeacherResource extends Resource
|
||||
->dateTime()
|
||||
->sortable()
|
||||
->toggleable(isToggledHiddenByDefault: true),
|
||||
Tables\Columns\TextColumn::make('deleted_at') // Add this column to show deleted timestamp
|
||||
Tables\Columns\TextColumn::make('deleted_at')
|
||||
->dateTime()
|
||||
->sortable()
|
||||
->toggleable(isToggledHiddenByDefault: true),
|
||||
])
|
||||
->filters([
|
||||
Tables\Filters\TrashedFilter::make()->label('Tampilkan Data yang Dihapus'),
|
||||
//
|
||||
])
|
||||
->actions([
|
||||
Tables\Actions\EditAction::make()->visible(fn () => auth()->user()->hasRole('admin')),
|
||||
Tables\Actions\DeleteAction::make()->visible(fn () => auth()->user()->hasRole('admin')),
|
||||
Tables\Actions\RestoreAction::make()->visible(fn (HomeRoomTeacher $record) => auth()->user()->hasRole('admin') && $record->trashed()),
|
||||
Tables\Actions\EditAction::make(),
|
||||
])
|
||||
->bulkActions([
|
||||
Tables\Actions\BulkActionGroup::make([
|
||||
Tables\Actions\DeleteBulkAction::make()->visible(fn () => auth()->user()->hasRole('admin')),
|
||||
Tables\Actions\DeleteBulkAction::make(),
|
||||
]),
|
||||
])
|
||||
->emptyStateActions([
|
||||
Tables\Actions\CreateAction::make(),
|
||||
]);
|
||||
}
|
||||
|
||||
|
||||
@ -39,4 +39,10 @@ class EditHomeRoomTeacher extends EditRecord
|
||||
return $data;
|
||||
}
|
||||
|
||||
protected function getHeaderActions(): array
|
||||
{
|
||||
return [
|
||||
Actions\DeleteAction::make(),
|
||||
];
|
||||
}
|
||||
}
|
||||
|
||||
@ -18,9 +18,7 @@ class ListHomeRoomTeachers extends ListRecords
|
||||
protected function getHeaderActions(): array
|
||||
{
|
||||
return [
|
||||
Actions\CreateAction::make()
|
||||
->label('Tambah Wali Kelas')
|
||||
->icon('heroicon-o-user-group'),
|
||||
Actions\CreateAction::make(),
|
||||
];
|
||||
}
|
||||
}
|
||||
|
||||
@ -7,7 +7,6 @@ use App\Filament\Resources\LearningObjectiveResource\RelationManagers;
|
||||
use App\Models\ClassRoom; // Import ClassRoom model
|
||||
use App\Models\LearningObjective;
|
||||
use App\Models\Subject; // Import Subject model
|
||||
use App\Models\TeacherSubject;
|
||||
use Filament\Forms;
|
||||
use Filament\Forms\Components\Select;
|
||||
use Filament\Forms\Form;
|
||||
@ -74,6 +73,7 @@ class LearningObjectiveResource extends Resource
|
||||
->tooltip(fn (LearningObjective $record): string => $record->description) // Show full text on hover
|
||||
->sortable(),
|
||||
|
||||
// Standard timestamp columns
|
||||
Tables\Columns\TextColumn::make('created_at')
|
||||
->dateTime()
|
||||
->sortable()
|
||||
@ -82,22 +82,26 @@ class LearningObjectiveResource extends Resource
|
||||
->dateTime()
|
||||
->sortable()
|
||||
->toggleable(isToggledHiddenByDefault: true),
|
||||
Tables\Columns\TextColumn::make('deleted_at') // Add this column to show deleted timestamp
|
||||
Tables\Columns\TextColumn::make('deleted_at')
|
||||
->dateTime()
|
||||
->sortable()
|
||||
->toggleable(isToggledHiddenByDefault: true),
|
||||
->toggleable(isToggledHiddenByDefault: true), // Show deleted_at if soft deletes are used
|
||||
])
|
||||
->filters([
|
||||
Tables\Filters\TrashedFilter::make()->label('Tampilkan Data yang Dihapus'),
|
||||
// TrashedFilter works with SoftDeletes trait on the model
|
||||
Tables\Filters\TrashedFilter::make(),
|
||||
])
|
||||
->actions([
|
||||
Tables\Actions\EditAction::make()->visible(fn () => auth()->user()->hasRole('admin')),
|
||||
Tables\Actions\DeleteAction::make()->visible(fn () => auth()->user()->hasRole('admin')),
|
||||
Tables\Actions\RestoreAction::make()->visible(fn (LearningObjective $record) => auth()->user()->hasRole('admin') && $record->trashed()),
|
||||
Tables\Actions\EditAction::make(),
|
||||
Tables\Actions\DeleteAction::make(), // For soft deleting records
|
||||
Tables\Actions\RestoreAction::make(), // For restoring soft-deleted records
|
||||
Tables\Actions\ForceDeleteAction::make(), // For permanently deleting records
|
||||
])
|
||||
->bulkActions([
|
||||
Tables\Actions\BulkActionGroup::make([
|
||||
Tables\Actions\DeleteBulkAction::make()->visible(fn () => auth()->user()->hasRole('admin')),
|
||||
Tables\Actions\DeleteBulkAction::make(),
|
||||
Tables\Actions\ForceDeleteBulkAction::make(),
|
||||
Tables\Actions\RestoreBulkAction::make(),
|
||||
]),
|
||||
]);
|
||||
}
|
||||
|
||||
@ -14,4 +14,13 @@ class EditLearningObjective extends EditRecord
|
||||
{
|
||||
return 'Edit Tujuan Pembelajaran';
|
||||
}
|
||||
|
||||
protected function getHeaderActions(): array
|
||||
{
|
||||
return [
|
||||
Actions\DeleteAction::make(),
|
||||
Actions\ForceDeleteAction::make(),
|
||||
Actions\RestoreAction::make(),
|
||||
];
|
||||
}
|
||||
}
|
||||
|
||||
@ -35,9 +35,7 @@ class ListLearningObjectives extends ListRecords
|
||||
protected function getHeaderActions(): array
|
||||
{
|
||||
return [
|
||||
Actions\CreateAction::make()
|
||||
->label('Tambah Tujuan Pembelajaran')
|
||||
->icon('heroicon-o-user-group'),
|
||||
Actions\CreateAction::make()->label('Tambah Tujuan Pembelajaran Baru'),
|
||||
];
|
||||
}
|
||||
|
||||
|
||||
@ -5,7 +5,6 @@ namespace App\Filament\Resources;
|
||||
use App\Filament\Resources\StudentResource\Pages;
|
||||
use App\Models\ClassRoom;
|
||||
use App\Models\Student;
|
||||
use App\Models\Subject;
|
||||
use Filament\Forms;
|
||||
use Filament\Forms\Form;
|
||||
use Filament\Resources\Resource;
|
||||
@ -126,27 +125,21 @@ class StudentResource extends Resource
|
||||
->dateTime()
|
||||
->sortable()
|
||||
->toggleable(isToggledHiddenByDefault: true),
|
||||
Tables\Columns\TextColumn::make('updated_at')
|
||||
->dateTime()
|
||||
->sortable()
|
||||
->toggleable(isToggledHiddenByDefault: true),
|
||||
Tables\Columns\TextColumn::make('deleted_at') // Add this column to show deleted timestamp
|
||||
->dateTime()
|
||||
->sortable()
|
||||
->toggleable(isToggledHiddenByDefault: true),
|
||||
])
|
||||
->filters([
|
||||
Tables\Filters\TrashedFilter::make()->label('Tampilkan Data yang Dihapus'),
|
||||
//
|
||||
])
|
||||
->actions([
|
||||
Tables\Actions\EditAction::make()->visible(fn () => auth()->user()->hasRole('admin')),
|
||||
Tables\Actions\DeleteAction::make()->visible(fn () => auth()->user()->hasRole('admin')),
|
||||
Tables\Actions\RestoreAction::make()->visible(fn (Student $record) => auth()->user()->hasRole('admin') && $record->trashed()),
|
||||
Tables\Actions\ViewAction::make(),
|
||||
Tables\Actions\EditAction::make(),
|
||||
])
|
||||
->bulkActions([
|
||||
Tables\Actions\BulkActionGroup::make([
|
||||
Tables\Actions\DeleteBulkAction::make()->visible(fn () => auth()->user()->hasRole('admin')),
|
||||
Tables\Actions\DeleteBulkAction::make(),
|
||||
]),
|
||||
])
|
||||
->emptyStateActions([
|
||||
Tables\Actions\CreateAction::make(),
|
||||
]);
|
||||
}
|
||||
|
||||
|
||||
@ -48,4 +48,18 @@ class EditStudent extends EditRecord
|
||||
|
||||
return $data;
|
||||
}
|
||||
|
||||
protected function getHeaderActions(): array
|
||||
{
|
||||
return [
|
||||
Actions\DeleteAction::make()
|
||||
->before(function (Actions\DeleteAction $action) {
|
||||
$student = $this->record;
|
||||
|
||||
if ($student->email) {
|
||||
User::where('email', $student->email)->delete();
|
||||
}
|
||||
}),
|
||||
];
|
||||
}
|
||||
}
|
||||
|
||||
@ -18,9 +18,7 @@ class ListStudents extends ListRecords
|
||||
protected function getHeaderActions(): array
|
||||
{
|
||||
return [
|
||||
Actions\CreateAction::make()
|
||||
->label('Tambah Siswa')
|
||||
->icon('heroicon-o-user-group'),
|
||||
Actions\CreateAction::make(),
|
||||
Actions\ImportAction::make('importBrands')
|
||||
->importer(StudentImporter::class),
|
||||
];
|
||||
|
||||
@ -5,7 +5,6 @@ namespace App\Filament\Resources;
|
||||
use App\Filament\Resources\SubjectResource\Pages;
|
||||
use App\Filament\Resources\SubjectResource\RelationManagers;
|
||||
use App\Models\Subject;
|
||||
use App\Models\User;
|
||||
use Filament\Forms;
|
||||
use Filament\Forms\Form;
|
||||
use Filament\Resources\Resource;
|
||||
@ -68,23 +67,20 @@ class SubjectResource extends Resource
|
||||
->dateTime()
|
||||
->sortable()
|
||||
->toggleable(isToggledHiddenByDefault: true),
|
||||
Tables\Columns\TextColumn::make('deleted_at') // Add this column to show deleted timestamp
|
||||
->dateTime()
|
||||
->sortable()
|
||||
->toggleable(isToggledHiddenByDefault: true),
|
||||
])
|
||||
->filters([
|
||||
Tables\Filters\TrashedFilter::make()->label('Tampilkan Data yang Dihapus'),
|
||||
//
|
||||
])
|
||||
->actions([
|
||||
Tables\Actions\EditAction::make()->visible(fn () => auth()->user()->hasRole('admin')),
|
||||
Tables\Actions\DeleteAction::make()->visible(fn () => auth()->user()->hasRole('admin')),
|
||||
Tables\Actions\RestoreAction::make()->visible(fn (Subject $record) => auth()->user()->hasRole('admin') && $record->trashed()),
|
||||
Tables\Actions\EditAction::make(),
|
||||
])
|
||||
->bulkActions([
|
||||
Tables\Actions\BulkActionGroup::make([
|
||||
Tables\Actions\DeleteBulkAction::make()->visible(fn () => auth()->user()->hasRole('admin')),
|
||||
Tables\Actions\DeleteBulkAction::make(),
|
||||
]),
|
||||
])
|
||||
->emptyStateActions([
|
||||
Tables\Actions\CreateAction::make(),
|
||||
]);
|
||||
}
|
||||
|
||||
|
||||
@ -14,4 +14,11 @@ class EditSubject extends EditRecord
|
||||
{
|
||||
return 'Edit Mata Pelajaran';
|
||||
}
|
||||
|
||||
protected function getHeaderActions(): array
|
||||
{
|
||||
return [
|
||||
Actions\DeleteAction::make(),
|
||||
];
|
||||
}
|
||||
}
|
||||
|
||||
@ -18,9 +18,7 @@ class ListSubjects extends ListRecords
|
||||
protected function getHeaderActions(): array
|
||||
{
|
||||
return [
|
||||
Actions\CreateAction::make()
|
||||
->label('Tambah Mata Pelajaran')
|
||||
->icon('heroicon-o-user-group'),
|
||||
Actions\CreateAction::make()->label('Tambah Mata Pelajaran'),
|
||||
];
|
||||
}
|
||||
}
|
||||
|
||||
@ -112,31 +112,19 @@ class TeacherSubjectResource extends Resource
|
||||
->relationship('class', 'class_name')
|
||||
->searchable()
|
||||
->preload(),
|
||||
Tables\Columns\TextColumn::make('created_at')
|
||||
->dateTime()
|
||||
->sortable()
|
||||
->toggleable(isToggledHiddenByDefault: true),
|
||||
Tables\Columns\TextColumn::make('updated_at')
|
||||
->dateTime()
|
||||
->sortable()
|
||||
->toggleable(isToggledHiddenByDefault: true),
|
||||
Tables\Columns\TextColumn::make('deleted_at') // Add this column to show deleted timestamp
|
||||
->dateTime()
|
||||
->sortable()
|
||||
->toggleable(isToggledHiddenByDefault: true),
|
||||
])
|
||||
->filters([
|
||||
Tables\Filters\TrashedFilter::make()->label('Tampilkan Data yang Dihapus'),
|
||||
|
||||
])
|
||||
->actions([
|
||||
Tables\Actions\EditAction::make()->visible(fn () => auth()->user()->hasRole('admin')),
|
||||
Tables\Actions\DeleteAction::make()->visible(fn () => auth()->user()->hasRole('admin')),
|
||||
Tables\Actions\RestoreAction::make()->visible(fn (TeacherSubject $record) => auth()->user()->hasRole('admin') && $record->trashed()),
|
||||
Tables\Actions\EditAction::make(),
|
||||
Tables\Actions\DeleteAction::make(),
|
||||
])
|
||||
->bulkActions([
|
||||
Tables\Actions\BulkActionGroup::make([
|
||||
Tables\Actions\DeleteBulkAction::make()->visible(fn () => auth()->user()->hasRole('admin')),
|
||||
Tables\Actions\DeleteBulkAction::make(),
|
||||
]),
|
||||
])
|
||||
->emptyStateActions([
|
||||
Tables\Actions\CreateAction::make(),
|
||||
]);
|
||||
}
|
||||
|
||||
|
||||
@ -14,4 +14,11 @@ class EditTeacherSubject extends EditRecord
|
||||
{
|
||||
return 'Edit Guru per-Mapel';
|
||||
}
|
||||
|
||||
protected function getHeaderActions(): array
|
||||
{
|
||||
return [
|
||||
Actions\DeleteAction::make(),
|
||||
];
|
||||
}
|
||||
}
|
||||
|
||||
@ -18,9 +18,7 @@ class ListTeacherSubjects extends ListRecords
|
||||
protected function getHeaderActions(): array
|
||||
{
|
||||
return [
|
||||
Actions\CreateAction::make()
|
||||
->label('Tambah Guru per-Mapel')
|
||||
->icon('heroicon-o-user-group'),
|
||||
Actions\CreateAction::make(),
|
||||
];
|
||||
}
|
||||
}
|
||||
|
||||
@ -109,23 +109,20 @@ class UserResource extends Resource
|
||||
->dateTime()
|
||||
->sortable()
|
||||
->toggleable(isToggledHiddenByDefault: true),
|
||||
Tables\Columns\TextColumn::make('deleted_at') // Add this column to show deleted timestamp
|
||||
->dateTime()
|
||||
->sortable()
|
||||
->toggleable(isToggledHiddenByDefault: true),
|
||||
])
|
||||
->filters([
|
||||
Tables\Filters\TrashedFilter::make()->label('Tampilkan Data yang Dihapus'),
|
||||
//
|
||||
])
|
||||
->actions([
|
||||
Tables\Actions\EditAction::make()->visible(fn () => auth()->user()->hasRole('admin')),
|
||||
Tables\Actions\DeleteAction::make()->visible(fn () => auth()->user()->hasRole('admin')),
|
||||
Tables\Actions\RestoreAction::make()->visible(fn (User $record) => auth()->user()->hasRole('admin') && $record->trashed()),
|
||||
])
|
||||
->bulkActions([
|
||||
Tables\Actions\BulkActionGroup::make([
|
||||
Tables\Actions\DeleteBulkAction::make()->visible(fn () => auth()->user()->hasRole('admin')),
|
||||
// Tables\Actions\DeleteBulkAction::make()->visible(fn () => auth()->user()->hasRole('admin')),
|
||||
]),
|
||||
])
|
||||
->emptyStateActions([
|
||||
Tables\Actions\CreateAction::make(),
|
||||
]);
|
||||
}
|
||||
|
||||
@ -159,13 +156,4 @@ class UserResource extends Resource
|
||||
{
|
||||
return 'Pengguna';
|
||||
}
|
||||
|
||||
// This method is required to apply the SoftDeletingScope to the query
|
||||
public static function getEloquentQuery(): Builder
|
||||
{
|
||||
return parent::getEloquentQuery()
|
||||
->withoutGlobalScopes([
|
||||
SoftDeletingScope::class,
|
||||
]);
|
||||
}
|
||||
}
|
||||
|
||||
@ -13,7 +13,7 @@ class EditUser extends EditRecord
|
||||
protected function getHeaderActions(): array
|
||||
{
|
||||
return [
|
||||
// Actions\DeleteAction::make(),
|
||||
Actions\DeleteAction::make(),
|
||||
];
|
||||
}
|
||||
|
||||
|
||||
@ -18,9 +18,7 @@ class ListUsers extends ListRecords
|
||||
protected function getHeaderActions(): array
|
||||
{
|
||||
return [
|
||||
Actions\CreateAction::make()
|
||||
->label('Tambah Pengguna')
|
||||
->icon('heroicon-o-user'),
|
||||
Actions\CreateAction::make()->label('Tambah Pengguna'),
|
||||
];
|
||||
}
|
||||
}
|
||||
|
||||
@ -1,44 +0,0 @@
|
||||
<?php
|
||||
|
||||
namespace App\Filament\Widgets;
|
||||
|
||||
use App\Models\Student;
|
||||
use Filament\Tables;
|
||||
use Filament\Tables\Table;
|
||||
use Filament\Widgets\TableWidget as BaseWidget;
|
||||
|
||||
class AdminRankingWidgets extends BaseWidget
|
||||
{
|
||||
protected static ?int $sort = 2;
|
||||
public static function canView(): bool
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
// protected int | string | array $columnSpan = 'full'; // Atur lebar widget jika perlu
|
||||
|
||||
protected function getHeading(): string
|
||||
{
|
||||
return 'Ranking';
|
||||
}
|
||||
|
||||
public function table(Table $table): Table
|
||||
{
|
||||
return $table
|
||||
->query(
|
||||
Student::select('students.id', 'students.full_name')
|
||||
->join('assessments', 'students.id', '=', 'assessments.student_id')
|
||||
->selectRaw('AVG(assessments.score) as average_score')
|
||||
->groupBy('students.id', 'students.full_name')
|
||||
->orderByDesc('average_score')
|
||||
)
|
||||
->columns([
|
||||
Tables\Columns\TextColumn::make('full_name')
|
||||
->label('Nama Siswa'),
|
||||
Tables\Columns\TextColumn::make('average_score')
|
||||
->label('Rata-rata Nilai')
|
||||
->sortable()
|
||||
->formatStateUsing(fn ($state) => number_format($state, 2)),
|
||||
]);
|
||||
}
|
||||
}
|
||||
@ -1,43 +0,0 @@
|
||||
<?php
|
||||
|
||||
namespace App\Filament\Widgets;
|
||||
|
||||
use App\Models\ClassRoom;
|
||||
use App\Models\Student;
|
||||
use App\Models\Subject;
|
||||
use App\Models\User;
|
||||
use Filament\Widgets\StatsOverviewWidget as BaseWidget;
|
||||
use Filament\Widgets\StatsOverviewWidget\Stat;
|
||||
|
||||
class AdminStatsWidgets extends BaseWidget
|
||||
{
|
||||
protected function getColumns(): int
|
||||
{
|
||||
return 4;
|
||||
}
|
||||
|
||||
protected function getStats(): array
|
||||
{
|
||||
$studnet = count(Student::where('is_active', true)
|
||||
->get()
|
||||
->toArray()
|
||||
);
|
||||
|
||||
$teacher = count(User::role('teacher')->get()->toArray());
|
||||
|
||||
$classRoom = Classroom::count();
|
||||
|
||||
$subject = Subject::count();
|
||||
|
||||
$nonTeacherUser = User::whereDoesntHave('roles', function ($query) {
|
||||
$query->where('name', 'teacher');
|
||||
})->count();
|
||||
|
||||
return [
|
||||
Stat::make('Total Siswa', $studnet),
|
||||
Stat::make('Total Guru ', $teacher),
|
||||
Stat::make('Total Kelas ', $classRoom),
|
||||
Stat::make('Total Mapel ', $subject),
|
||||
];
|
||||
}
|
||||
}
|
||||
@ -1,14 +0,0 @@
|
||||
<?php
|
||||
|
||||
namespace App\Filament\Widgets;
|
||||
|
||||
use App\Models\ClassRoom;
|
||||
use App\Models\Student;
|
||||
use App\Models\Subject;
|
||||
use App\Models\User;
|
||||
use Filament\Widgets\StatsOverviewWidget as BaseWidget;
|
||||
use Filament\Widgets\StatsOverviewWidget\Stat;
|
||||
|
||||
class AdminWidgets extends BaseWidget
|
||||
{
|
||||
}
|
||||
@ -3,12 +3,9 @@
|
||||
namespace App\Models;
|
||||
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\SoftDeletes;
|
||||
|
||||
class Assessment extends Model
|
||||
{
|
||||
use SoftDeletes;
|
||||
|
||||
protected $fillable = [
|
||||
'teacher_subject_id',
|
||||
'student_id',
|
||||
|
||||
@ -4,12 +4,9 @@ namespace App\Models;
|
||||
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\Relations\BelongsTo;
|
||||
use Illuminate\Database\Eloquent\SoftDeletes;
|
||||
|
||||
class AssessmentLearningObjective extends Model
|
||||
{
|
||||
use SoftDeletes;
|
||||
|
||||
protected $fillable = [
|
||||
'teacher_subject_id',
|
||||
'student_id',
|
||||
|
||||
@ -3,12 +3,9 @@
|
||||
namespace App\Models;
|
||||
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\SoftDeletes;
|
||||
|
||||
class Attendances extends Model
|
||||
{
|
||||
use SoftDeletes;
|
||||
|
||||
protected $fillable = ['student_id', 'teacher_subject_id', 'date', 'status', 'recorded_by', 'semester', 'notes'];
|
||||
|
||||
public function student()
|
||||
|
||||
@ -5,12 +5,9 @@ namespace App\Models;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\Relations\BelongsTo;
|
||||
use Illuminate\Database\Eloquent\Relations\HasMany;
|
||||
use Illuminate\Database\Eloquent\SoftDeletes;
|
||||
|
||||
class ClassSubject extends Model
|
||||
{
|
||||
use SoftDeletes;
|
||||
|
||||
protected $fillable = ['class_room_id', 'subject_id', 'academic_year_id'];
|
||||
|
||||
public function subject(): BelongsTo
|
||||
|
||||
@ -3,11 +3,9 @@
|
||||
namespace App\Models;
|
||||
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\SoftDeletes;
|
||||
|
||||
class Extracurricular extends Model
|
||||
{
|
||||
use SoftDeletes;
|
||||
protected $fillable = ['name', 'description'];
|
||||
|
||||
public function assessments()
|
||||
|
||||
@ -3,12 +3,9 @@
|
||||
namespace App\Models;
|
||||
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\SoftDeletes;
|
||||
|
||||
class ExtracurricularAssessment extends Model
|
||||
{
|
||||
use SoftDeletes;
|
||||
|
||||
protected $fillable = [
|
||||
'class_student_id',
|
||||
'extracurricular_id',
|
||||
|
||||
@ -3,12 +3,9 @@
|
||||
namespace App\Models;
|
||||
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\SoftDeletes;
|
||||
|
||||
class Student extends Model
|
||||
{
|
||||
use SoftDeletes;
|
||||
|
||||
protected $fillable = [
|
||||
'nis',
|
||||
'nisn',
|
||||
|
||||
@ -4,12 +4,9 @@ namespace App\Models;
|
||||
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\Relations\HasMany;
|
||||
use Illuminate\Database\Eloquent\SoftDeletes;
|
||||
|
||||
class Subject extends Model
|
||||
{
|
||||
use SoftDeletes;
|
||||
|
||||
protected $fillable = ['name', 'is_religious', 'category'];
|
||||
|
||||
public function scopes()
|
||||
|
||||
@ -5,12 +5,9 @@ namespace App\Models;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
use Illuminate\Database\Eloquent\Relations\BelongsTo;
|
||||
use Illuminate\Database\Eloquent\Relations\HasMany;
|
||||
use Illuminate\Database\Eloquent\SoftDeletes;
|
||||
|
||||
class TeacherSubject extends Model
|
||||
{
|
||||
use SoftDeletes;
|
||||
|
||||
protected $fillable = ['teacher_id', 'subject_id', 'class_id', 'academic_year_id'];
|
||||
|
||||
public function teacher(): BelongsTo
|
||||
|
||||
@ -7,7 +7,6 @@ use Filament\Models\Contracts\FilamentUser;
|
||||
use Filament\Panel;
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Database\Eloquent\Relations\HasMany;
|
||||
use Illuminate\Database\Eloquent\SoftDeletes;
|
||||
use Illuminate\Foundation\Auth\User as Authenticatable;
|
||||
use Illuminate\Notifications\Notifiable;
|
||||
use Spatie\Permission\Traits\HasRoles;
|
||||
@ -16,7 +15,6 @@ class User extends Authenticatable implements FilamentUser
|
||||
{
|
||||
/** @use HasFactory<\Database\Factories\UserFactory> */
|
||||
use HasFactory, Notifiable, HasRoles;
|
||||
use SoftDeletes;
|
||||
|
||||
/**
|
||||
* The attributes that are mass assignable.
|
||||
|
||||
@ -2,7 +2,6 @@
|
||||
|
||||
namespace App\Providers\Filament;
|
||||
|
||||
use App\Filament\Widgets\AdminStatsWidgets;
|
||||
use Filament\Http\Middleware\Authenticate;
|
||||
use Filament\Http\Middleware\AuthenticateSession;
|
||||
use Filament\Http\Middleware\DisableBladeIconComponents;
|
||||
@ -38,9 +37,8 @@ class AdminPanelProvider extends PanelProvider
|
||||
])
|
||||
->discoverWidgets(in: app_path('Filament/Widgets'), for: 'App\\Filament\\Widgets')
|
||||
->widgets([
|
||||
// Widgets\AccountWidget::class,
|
||||
// Widgets\FilamentInfoWidget::class,
|
||||
AdminStatsWidgets::class,
|
||||
Widgets\AccountWidget::class,
|
||||
Widgets\FilamentInfoWidget::class,
|
||||
])
|
||||
->middleware([
|
||||
EncryptCookies::class,
|
||||
@ -59,7 +57,6 @@ class AdminPanelProvider extends PanelProvider
|
||||
->plugins([
|
||||
\BezhanSalleh\FilamentShield\FilamentShieldPlugin::make(),
|
||||
])
|
||||
->databaseNotifications()
|
||||
->brandName('Sistem Akademik Sekolah');
|
||||
}
|
||||
}
|
||||
|
||||
@ -24,7 +24,6 @@ return new class extends Migration
|
||||
$table->string('password');
|
||||
$table->rememberToken();
|
||||
$table->timestamps();
|
||||
$table->softDeletes();
|
||||
});
|
||||
|
||||
Schema::create('password_reset_tokens', function (Blueprint $table) {
|
||||
|
||||
@ -19,7 +19,6 @@ return new class extends Migration
|
||||
$table->timestamps();
|
||||
|
||||
$table->unique(['name', 'is_religious', 'category']);
|
||||
$table->softDeletes();
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
@ -16,7 +16,6 @@ return new class extends Migration
|
||||
$table->string('name');
|
||||
$table->text('description')->nullable();
|
||||
$table->timestamps();
|
||||
$table->softDeletes();
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
@ -20,7 +20,6 @@ return new class extends Migration
|
||||
$table->timestamps();
|
||||
|
||||
$table->unique(['teacher_id', 'subject_id', 'class_id', 'academic_year_id']);
|
||||
$table->softDeletes();
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
@ -23,7 +23,6 @@ return new class extends Migration
|
||||
$table->timestamps();
|
||||
|
||||
$table->unique(['teacher_subject_id', 'student_id', 'date', 'semester']);
|
||||
$table->softDeletes();
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
@ -20,7 +20,6 @@ return new class extends Migration
|
||||
$table->timestamps();
|
||||
|
||||
$table->unique(['teacher_subject_id', 'student_id', 'semester']);
|
||||
$table->softDeletes();
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
@ -20,7 +20,6 @@ return new class extends Migration
|
||||
$table->string('semester');
|
||||
|
||||
$table->timestamps();
|
||||
$table->softDeletes();
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
@ -15,7 +15,7 @@ return new class extends Migration
|
||||
$table->uuid('id')->primary();
|
||||
$table->string('type');
|
||||
$table->morphs('notifiable');
|
||||
$table->jsonb('data');
|
||||
$table->text('data');
|
||||
$table->timestamp('read_at')->nullable();
|
||||
$table->timestamps();
|
||||
});
|
||||
|
||||
@ -18,8 +18,6 @@ return new class extends Migration
|
||||
$table->foreignId('learning_objective_id')->constrained('learning_objectives')->onDelete('cascade');
|
||||
$table->enum('type', ['highest', 'lower']);
|
||||
$table->timestamps();
|
||||
|
||||
$table->softDeletes();
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
@ -70,7 +70,7 @@ class UserSeeder extends Seeder
|
||||
'guard_name' => 'web',
|
||||
]);
|
||||
|
||||
// $teacher->syncPermissions($rolePermissions);
|
||||
$teacher->syncPermissions($rolePermissions);
|
||||
|
||||
$role->syncPermissions($rolePermissions);
|
||||
|
||||
@ -78,8 +78,8 @@ class UserSeeder extends Seeder
|
||||
$admin->assignRole($role);
|
||||
}
|
||||
|
||||
// if (!$user->hasRole($teacher)) {
|
||||
// $user->assignRole($teacher);
|
||||
// }
|
||||
if (!$user->hasRole($teacher)) {
|
||||
$user->assignRole($teacher);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user