diff --git a/app/Http/Controllers/StudentController.php b/app/Http/Controllers/StudentController.php
index 4c21b21..90faf62 100644
--- a/app/Http/Controllers/StudentController.php
+++ b/app/Http/Controllers/StudentController.php
@@ -13,7 +13,7 @@ class StudentController extends Controller
*/
public function index()
{
- $students = Auth::user()->students();
+ $students = Auth::user()->students;
return view('students.index',['students' => $students]);
}
diff --git a/app/Models/Student.php b/app/Models/Student.php
index 03fabf4..51ce1ec 100644
--- a/app/Models/Student.php
+++ b/app/Models/Student.php
@@ -21,4 +21,10 @@ class Student extends Model
return $this->hasManyThrough(User::class, School::class);
}
+ public function full_name(Bool $last_name_first = false): String
+ {
+ if ($last_name_first) return $this->last_name . ', ' . $this->first_name;
+ return $this->first_name . ' ' . $this->last_name;
+ }
+
}
diff --git a/app/Models/User.php b/app/Models/User.php
index 20dcae4..faf010d 100644
--- a/app/Models/User.php
+++ b/app/Models/User.php
@@ -53,8 +53,9 @@ class User extends Authenticatable implements MustVerifyEmail
];
}
- public function full_name(): string
+ public function full_name(Bool $last_name_first = false): String
{
+ if ($last_name_first) return $this->last_name . ', ' . $this->first_name;
return $this->first_name . ' ' . $this->last_name;
}
@@ -71,7 +72,7 @@ class User extends Authenticatable implements MustVerifyEmail
public function students(): HasManyThrough
{
- return $this->hasManyThrough(Student::class, School::class);
+ return $this->hasManyThrough(Student::class, School::class, 'id','school_id','school_id','id');
}
diff --git a/resources/views/components/badge_pill.blade.php b/resources/views/components/badge_pill.blade.php
new file mode 100644
index 0000000..b4b528d
--- /dev/null
+++ b/resources/views/components/badge_pill.blade.php
@@ -0,0 +1,2 @@
+@php($classes = "inline-flex items-center rounded-full bg-indigo-50 px-2 py-1 text-xs font-medium text-indigo-700 ring-1 ring-inset ring-indigo-700/10")
+merge(['class' => $classes]) }}>{{ $slot }}
diff --git a/resources/views/components/table/body.blade.php b/resources/views/components/table/body.blade.php
new file mode 100644
index 0000000..4bbe5f6
--- /dev/null
+++ b/resources/views/components/table/body.blade.php
@@ -0,0 +1,3 @@
+
merge(['class' => "divide-y divide-gray-200 bg-white" ]) }}>
+ {{ $slot }}
+
diff --git a/resources/views/components/table/container.blade.php b/resources/views/components/table/container.blade.php
new file mode 100644
index 0000000..7b9b06a
--- /dev/null
+++ b/resources/views/components/table/container.blade.php
@@ -0,0 +1,3 @@
+merge(['class' => 'px-4 sm:px-6 lg:px-8']) }}>
+ {{ $slot }}
+
diff --git a/resources/views/components/table/table.blade.php b/resources/views/components/table/table.blade.php
new file mode 100644
index 0000000..20f89c9
--- /dev/null
+++ b/resources/views/components/table/table.blade.php
@@ -0,0 +1,11 @@
+
diff --git a/resources/views/components/table/table_header_row.blade.php b/resources/views/components/table/table_header_row.blade.php
new file mode 100644
index 0000000..7620fb1
--- /dev/null
+++ b/resources/views/components/table/table_header_row.blade.php
@@ -0,0 +1,5 @@
+
+
+ {{ $slot }}
+
+
diff --git a/resources/views/components/table/td.blade.php b/resources/views/components/table/td.blade.php
new file mode 100644
index 0000000..21c05ee
--- /dev/null
+++ b/resources/views/components/table/td.blade.php
@@ -0,0 +1,7 @@
+@props(['first' => false, 'emphasis'=> false])
+@php
+ $td_classes = "whitespace-nowrap py-4 text-sm";
+ $td_classes .= $first ? ' pl-4 pr-3 sm:pl-6':' px-3';
+ $td_classes .= $emphasis ? ' text-gray-900 font-medium':' text-gray-500';
+@endphp
+merge(['class'=>$td_classes]) }}>{{ $slot }} |
diff --git a/resources/views/components/table/td_right_link.blade.php b/resources/views/components/table/td_right_link.blade.php
new file mode 100644
index 0000000..f9d2fd9
--- /dev/null
+++ b/resources/views/components/table/td_right_link.blade.php
@@ -0,0 +1,17 @@
+@props(['sr_text' => false,'button' => false,'a' => false])
+@php $td_class = "relative whitespace-nowrap py-4 pl-3 pr-4 text-right text-sm font-medium sm:pr-6"; @endphp
+@php $link_class = "text-indigo-600 hover:text-indigo-900"; @endphp
+merge(['class' => $td_class]) }}>
+ @if($a)
+ attributes->merge(['class' => $link_class]) }}>
+ {{ $a }}@if($sr_text){{ $sr_text }}@endif
+
+ @elseif($button)
+ @php($aria_label = $button . $sr_text)
+
+ @else
+ {{ $slot }}{{ $sr_text ? '' . $sr_text . '' : '' }}
+ @endif
+ |
diff --git a/resources/views/components/table/th.blade.php b/resources/views/components/table/th.blade.php
new file mode 100644
index 0000000..1cf001a
--- /dev/null
+++ b/resources/views/components/table/th.blade.php
@@ -0,0 +1,8 @@
+@props(['first' => false, 'placeholder' => false])
+@php
+ $th_classes = "py-3.5 text-left text-sm font-semibold text-gray-900";
+ $th_classes .= $first ? ' pl-4 pr-3 sm:pl-6':' px-3';
+ if($placeholder) $th_classes = "relative py-3.5 pl-3 pr-4 sm:pr-6";
+@endphp
+
+merge(['scope' =>'col','class' => $th_classes]) }}>{{ $slot }} |
diff --git a/resources/views/components/table/title_above_table.blade.php b/resources/views/components/table/title_above_table.blade.php
new file mode 100644
index 0000000..6825f8a
--- /dev/null
+++ b/resources/views/components/table/title_above_table.blade.php
@@ -0,0 +1,17 @@
+@props(['title' => false,'subtitle' => false, 'button' => false])
+
+
+ @if($title)
+
attributes->merge(['class' => 'text-base font-semibold leading-6 text-gray-900']) }}>{{ $title }}
+ @endif
+ @if($subtitle)
+
attributes->merge(['class' => 'mt-2 text-sm text-gray-700']) }}>{{ $subtitle }}
+ @endif
+
+
+ @if($button)
+ @php $button_classes = 'block rounded-md bg-indigo-600 px-3 py-2 text-center text-sm font-semibold text-white shadow-sm hover:bg-indigo-500 focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-indigo-600'; @endphp
+
+ @endif
+
+
diff --git a/resources/views/students/index.blade.php b/resources/views/students/index.blade.php
index c807e7c..b22e414 100644
--- a/resources/views/students/index.blade.php
+++ b/resources/views/students/index.blade.php
@@ -1,5 +1,33 @@
@php use Illuminate\Support\Facades\Auth; @endphp
Students
- {{ dd(Auth::user()->students) }}
+
+
+
+ Students {{ $students->count() }}
+ Before submitting entries, you must enter your students
+ Add Student
+
+
+
+
+ Name
+ Grade
+
+ Edit
+
+
+ @foreach($students as $student)
+
+ {{ $student->full_name(true) }}
+ {{ $student->grade }}
+
+ Edit
+
+
+ @endforeach
+
+
+
+