@extends('layouts.app') @section('title', 'Import Users') @section('content')

Import Users

Back
@if($errors->any())
@endif
Upload CSV
@csrf
Maximum 2 MB.
Used for any row that leaves the password column blank. Defaults to trace{{ date('Y') }}.
Download template
Expected columns
nameRequired
emailRequired, must be unique
rolesRequired, separate with |
passwordOptional
student_idOptional
intakeOptional — created if new
semesterOptional — students only
Available roles:
@foreach($roles as $r) {{ $r }} @endforeach
Semester values
Give either the number (2) or the full name (Year 2 – Semester 4). Leave blank to import without one.

Rows with a duplicate email, an unknown role, an unknown semester or a missing name are skipped and reported back — the rest still import.

@endsection