@if (session()->has('success'))

{{ session('success') }}

@endif @if (session()->has('error'))

{{ session('error') }}

@endif @if (session()->has('info'))

{{ session('info') }}

@endif @if ($latestWeightsData)

Current Active Weights

Created by: {{ $latestWeightsData['creator_name'] }} on {{ $latestWeightsData['created_at'] }}

Consistency Ratio
{{ number_format($latestWeightsData['consistency_ratio'], 4) }}
@foreach (['course_match', 'preference_match', 'distance_score', 'workload_score'] as $criterion)
{{ ucfirst(str_replace('_', ' ', $criterion)) }}
{{ number_format(($latestWeightsData['weights'][$criterion] ?? 0) * 100, 1) }}%
@endforeach
@endif

Weight Configuration

Adjust the sliders to set the importance of each factor. Weights will automatically normalize to 100%.

@foreach (['course_match' => 'Course Match', 'preference_match' => 'Preference Match', 'distance_score' => 'Distance Score', 'workload_score' => 'Workload Score'] as $key => $label)
{{ number_format($directWeights[$key] ?? 0, 1) }}%
0% 50% 100%

@if ($key === 'course_match') How important is matching the student's program with the supervisor's program? @elseif($key === 'preference_match') How important is matching the supervisor's travel preference with the placement location? @elseif($key === 'distance_score') How important is the distance between supervisor and placement location? @elseif($key === 'workload_score') How important is the supervisor's current workload (availability)? @endif

@endforeach
Total Weight: {{ number_format(array_sum($directWeights), 1) }}%

Weights are automatically normalized to 100% total

Calculated Weights

@if (!empty($calculatedWeights))
@foreach (['course_match', 'preference_match', 'distance_score', 'workload_score'] as $criterion)
{{ ucfirst(str_replace('_', ' ', $criterion)) }} {{ $this->getWeightPercentage($criterion) }}
@endforeach

Weights automatically normalize to ensure consistency

@else

Enter pairwise comparisons to calculate weights

@endif

Instructions

  1. Use the sliders to adjust the importance of each factor
  2. You can also type values directly in the number inputs
  3. Keep the total weight at 100% or less for best results
  4. Weights automatically normalize to 100% total if needed
  5. The system converts your weights to an AHP-compatible format
  6. Click "Save Weights" to apply for supervisor assignments

💡 Tip: Start with equal weights (25% each) and adjust based on your priorities