diff --git a/resources/views/components/table-component.blade.php b/resources/views/components/table-component.blade.php new file mode 100644 index 0000000..084d33b --- /dev/null +++ b/resources/views/components/table-component.blade.php @@ -0,0 +1,786 @@ +@props([ + 'pageTitle' => 'Table', + 'data' => [], + 'columns' => [], + 'actions' => [], + 'showAddButton' => false, + 'addButtonUrl' => '#', + 'showCheckboxes' => false, + 'showBatchDelete' => false, + 'showEditModal' => false, + 'showViewModal' => false +]) + + +
+
+
{{ $pageTitle }}
+ @if ($showAddButton) + + Add {{ $pageTitle }} + + @endif +
+
+
+ +
+
+
+ + + + +
+
+
+ +
+
+ + +
+ + + + @if ($showCheckboxes) + + @endif + @foreach ($columns as $index => $column) + + @endforeach + @if (!empty($actions)) + + @endif + + + +
+ + + {{ $column['name'] }} + @if ($column['sortable']) + + @endif + Action
+
+ + +
+ @if ($showBatchDelete) +
+ +
+ @endif + +
+
+ + + +@if ($showEditModal) + +@endif + + +@if ($showViewModal) + +@endif + + + + + + \ No newline at end of file diff --git a/resources/views/pages/member management/card-member.blade.php b/resources/views/pages/member management/card-member.blade.php index 85f065a..e6dc6f0 100644 --- a/resources/views/pages/member management/card-member.blade.php +++ b/resources/views/pages/member management/card-member.blade.php @@ -1,14 +1,37 @@ @extends('layouts.app') -@section('page_title', 'Member Management') +@section('page_title', 'Card Member') @section('content') -
-
- Card Member -
-
-

This is the Card Member page content.

-
-
-@endsection + @php + $members = [ + ['id' => 1, 'cardNumber' => '1234-5678-9012-3456', 'firstName' => 'John', 'lastName' => 'Doe', 'birthday' => '1990-05-15', 'cardType' => 'Gold', 'status' => 'Active'], + ['id' => 2, 'cardNumber' => '9876-5432-1098-7654', 'firstName' => 'Jane', 'lastName' => 'Smith', 'birthday' => '1985-11-22', 'cardType' => 'Silver', 'status' => 'Inactive'], + ['id' => 3, 'cardNumber' => '4567-8901-2345-6789', 'firstName' => 'Alice', 'lastName' => 'Johnson', 'birthday' => '1992-03-10', 'cardType' => 'Platinum', 'status' => 'Active'], + ['id' => 4, 'cardNumber' => '3210-9876-5432-1098', 'firstName' => 'Bob', 'lastName' => 'Brown', 'birthday' => '1988-07-30', 'cardType' => 'Gold', 'status' => 'Active'], + ['id' => 1, 'cardNumber' => '1234-5678-9012-3456', 'firstName' => 'John', 'lastName' => 'Doe', 'birthday' => '1990-05-15', 'cardType' => 'Gold', 'status' => 'Active'], + ['id' => 2, 'cardNumber' => '9876-5432-1098-7654', 'firstName' => 'Jane', 'lastName' => 'Smith', 'birthday' => '1985-11-22', 'cardType' => 'Silver', 'status' => 'Inactive'], + ['id' => 3, 'cardNumber' => '4567-8901-2345-6789', 'firstName' => 'Alice', 'lastName' => 'Johnson', 'birthday' => '1992-03-10', 'cardType' => 'Platinum', 'status' => 'Active'], + ['id' => 4, 'cardNumber' => '3210-9876-5432-1098', 'firstName' => 'Bob', 'lastName' => 'Brown', 'birthday' => '1988-07-30', 'cardType' => 'Gold', 'status' => 'Active'] + ]; + @endphp + + @include('components.table-component', [ + 'pageTitle' => 'Card Member', + 'data' => $members, + 'columns' => [ + ['name' => 'Card Number', 'key' => 'cardNumber', 'sortable' => true], + ['name' => 'First Name', 'key' => 'firstName', 'sortable' => true], + ['name' => 'Last Name', 'key' => 'lastName', 'sortable' => true], + ['name' => 'Birthday', 'key' => 'birthday', 'sortable' => true], + ['name' => 'Card Type', 'key' => 'cardType', 'sortable' => true], + ['name' => 'Status', 'key' => 'status', 'sortable' => true] + ], + 'actions' => ['view'], + 'showAddButton' => false, + 'showCheckboxes' => false, + 'showBatchDelete' => false, + 'showEditModal' => false, + 'showViewModal' => true + ]) +@endsection \ No newline at end of file diff --git a/resources/views/pages/user-management.blade.php b/resources/views/pages/user-management.blade.php index 8db9ac3..b01cad1 100644 --- a/resources/views/pages/user-management.blade.php +++ b/resources/views/pages/user-management.blade.php @@ -3,810 +3,35 @@ @section('page_title', 'User Management') @section('content') - -
-
-
User Management
- - Add User - -
-
-
- -
-
-
- - - - -
-
-
- -
-
- - -
- - - - - - - - - - - - - - - - -
- - Username First Name Last Name User Role Email Status Action
-
- - -
-
- -
- -
-
- - - - - - - - - - - - - + @include('components.table-component', [ + 'pageTitle' => 'User Management', + 'data' => $users, + 'columns' => [ + ['name' => 'Username', 'key' => 'username', 'sortable' => true], + ['name' => 'First Name', 'key' => 'firstName', 'sortable' => true], + ['name' => 'Last Name', 'key' => 'lastName', 'sortable' => true], + ['name' => 'User Role', 'key' => 'role', 'sortable' => true], + ['name' => 'Email', 'key' => 'email', 'sortable' => true], + ['name' => 'Status', 'key' => 'status', 'sortable' => true] + ], + 'actions' => ['edit', 'view', 'delete'], + 'showAddButton' => true, + 'addButtonUrl' => '/add-user', + 'showCheckboxes' => true, + 'showBatchDelete' => true, + 'showEditModal' => true, + 'showViewModal' => true + ]) @endsection \ No newline at end of file diff --git a/routes/web.php b/routes/web.php index bd77daa..0e31d06 100644 --- a/routes/web.php +++ b/routes/web.php @@ -84,6 +84,6 @@ Route::get('/my-profile', function () { return view('pages.my-profile'); })->name('my-profile'); -Route::get('add-user', function () { +Route::get('/add-user', function () { return view('pages.user-management.add-user'); })->name('add-user'); \ No newline at end of file