Placement Application Guide

@if (!$showGuide) Choose placement → Email employer → Prepare interview → Receive documents → Submit for approval → Confirm details @else Follow these steps to complete your placement application submission. @endif

@if ($showGuide)
1

Choose Your Preferred Placement

  • Search for suitable internship opportunities related to your course.
  • You may use platforms such as Indeed, JobStreet, LinkedIn, or any other trusted source.

Recommended Internship Platforms:

2

Send an Email Inquiry to the Employer

Email your internship inquiry to the chosen company. Attach the following documents in your email:

  • Resume / Curriculum Vitae (CV)
  • Partial Academic transcript
  • Reply Form (Student Information section completed)
  • Student Application Letter (SAL)

💡 Tip: Write a polite and professional email. Ensure all attachments are clearly named.

3

Prepare for Interview

  • Be ready for potential interviews.
  • Research the company background to prepare yourself better.
4

Documents You Should Receive from the Employer

Once the company confirms your placement, ensure you receive:

  1. Reply Form – filled by the employer (includes placement details, job description, and supervisor information)
  2. Official Company Offer Letter – printed on company letterhead
5

Submit for Faculty Approval

Submit both documents (Reply Form and Offer Letter) at placement application to obtain approval from the FK LI Committee.

File naming convention:
For PDF: {{ Auth::user()->student->studentID ?? 'matricID' }}_ReplyForm.pdf and {{ Auth::user()->student->studentID ?? 'matricID' }}_OfferLetter.pdf
For ZIP: {{ Auth::user()->student->studentID ?? 'matricID' }}_PlacementDocuments.zip

6

Confirm Important Details Before Final Decision

Before accepting your internship placement, please ensure the following are verified:

  • ✅ Relevance to your course/program
  • ✅ Faculty approval obtained
  • ✅ Suitable working hours
  • ✅ Feasible transportation and accommodation arrangements
  • ✅ Allowance (if any) is clearly stated
@endif
@if (!$hasCourseVerification)

Course Verification Required

You must have an approved course verification before applying for internship placement.

@endif @if ($hasAcceptedApplication && !$canApply)
🔒

Application Restriction

You already have an accepted placement application. To submit a new application, you must first request a placement change.

Use the "Request Change" button on your accepted application to begin the process.

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

{{ session('message') }}

@endif @if (session()->has('error')) @php $errorMessage = session('error'); $isRedundantError = str_contains($errorMessage, 'already have an accepted placement application') && ($hasAcceptedApplication && !$canApply); @endphp @if (!$isRedundantError)

{{ $errorMessage }}

@endif @endif @if ($analytics)
📊

Total Applications

{{ $analytics['total_applications'] }}

Pending Review

{{ $analytics['pending_applications'] }}

Approved

{{ $analytics['approved_applications'] }}

Rejected

{{ $analytics['rejected_applications'] }}

@endif

Your Applications

@if ($canApply) @endif
@forelse ($applications as $application) @empty @endforelse
ID Company Name Position Application Date Status Remarks Actions
#{{ $application->applicationID }} {{ $application->companyName }} {{ $application->position }} {{ $application->applicationDate->format('M d, Y') }}
Committee: {{ $application->committeeStatus }}
Coordinator: {{ $application->coordinatorStatus }}
@if ($application->remarks)
{{ $application->remarks }}
@else - @endif
@if ($application->can_accept && !$hasAcceptedApplication) @elseif ($application->studentAcceptance) {{ $application->studentAcceptance }} @endif @if ($application->committeeStatus === 'Pending' && $application->coordinatorStatus === 'Pending') @else @endif @if ($application->overall_status === 'Approved' && $application->studentAcceptance === 'Accepted') @php $hasChangeRequests = $application->changeRequests->count() > 0; $hasPendingChangeRequest = $application->changeRequests ->where(function ($cr) { return $cr->committeeStatus === 'Pending' || $cr->coordinatorStatus === 'Pending'; }) ->count() > 0; $hasApprovedChangeRequest = $application->changeRequests ->where(function ($cr) { return $cr->committeeStatus === 'Approved' && $cr->coordinatorStatus === 'Approved'; }) ->count() > 0; @endphp @if (!$hasPendingChangeRequest && !$hasApprovedChangeRequest) @endif @if ($hasChangeRequests) @endif @endif

No applications found

You haven't submitted any internship applications yet.

@if ($canApply) @endif
@if ($applications->hasPages())
{{ $applications->links() }}
@endif
@if ($showForm)

{{ $editingId ? 'Edit Application' : 'New Internship Application' }}

{{ $editingId ? 'Updating application...' : 'Submitting application...' }}
@if (!$editingId)

📝 Before you start, make sure you have:

  • Company's complete contact information and address
  • Official offer letter or acceptance form
  • Clear job scope and responsibilities
  • Confirmed internship start and end dates
  • Supporting documents in PDF or ZIP files
@endif

Company Information

@if (!$isNewCompany)
@if ($selectedCompanyId && $companyName)

Selected: {{ $companyName }}

@endif
@else
Entering new company
@endif
@error('companyName')

{{ $message }}

@enderror
@error('companyEmail')

{{ $message }}

@enderror

Company Address

@error('companyAddressLine')

{{ $message }}

@enderror
@error('companyCity')

{{ $message }}

@enderror
@error('companyPostcode')

{{ $message }}

@enderror
@error('companyState')

{{ $message }}

@enderror
@error('companyCountry')

{{ $message }}

@enderror
@error('companyNumber')

{{ $message }}

@enderror
@error('allowance')

{{ $message }}

@enderror

Leave blank if no allowance provided

Industry Supervisor Information

@error('industrySupervisorName')

{{ $message }}

@enderror
@error('industrySupervisorContact')

{{ $message }}

@enderror
@error('industrySupervisorEmail')

{{ $message }}

@enderror

Position Details

@error('position')

{{ $message }}

@enderror
@error('methodOfWork')

{{ $message }}

@enderror
@error('jobscope')

{{ $message }}

@enderror

Be specific and detailed about your responsibilities

Internship Duration

@error('startDate')

{{ $message }}

@enderror

Internship start date

@error('endDate')

{{ $message }}

@enderror

Internship end date (must be after start date)

Supporting Documents

Documents:

  • Offer Letter from the company
  • Reply Form
  • Student Application Letter (SAL)

Accepted formats: PDF, DOC, DOCX, JPG, JPEG, PNG • Max: 10MB per file

@error('applicationFiles.*')

{{ $message }}

@enderror
@if ($editingId && !empty($existingFiles))

Current Files:

@foreach ($existingFiles as $file)
📄 {{ $file['original_name'] ?? 'File' }} ({{ number_format($file['file_size'] / 1024, 1) }} KB)
@endforeach

Note: Uploading new files will replace existing files.

@endif
@endif @if ($showViewModal && $viewingApplication)

Application #{{ $viewingApplication->applicationID }} - Details

📖 Read-Only View

Company Information

Company Name: {{ $viewingApplication->companyName }}

Email: {{ $viewingApplication->companyEmail }}

Phone: {{ $viewingApplication->companyNumber }}

Address: {{ $viewingApplication->company_full_address }}

@if ($viewingApplication->has_geocoding)

Coordinates: {{ $viewingApplication->companyLatitude }}, {{ $viewingApplication->companyLongitude }}

@endif

Industry Supervisor Information

Name: {{ $viewingApplication->industrySupervisorName ?? 'Not provided' }}

Contact: {{ $viewingApplication->industrySupervisorContact ?? 'Not provided' }}

Email: {{ $viewingApplication->industrySupervisorEmail ?? 'Not provided' }}

Position Details

Position: {{ $viewingApplication->position }}

Method of Work: {{ $viewingApplication->methodOfWorkDisplay }}

Allowance: {{ $viewingApplication->allowance ? 'RM ' . number_format($viewingApplication->allowance, 2) : 'Not specified' }}

Duration: {{ $viewingApplication->startDate->format('M d, Y') }} - {{ $viewingApplication->endDate->format('M d, Y') }}

Application Date: {{ $viewingApplication->applicationDate->format('M d, Y') }}

Approval Status

Committee: {{ $viewingApplication->committeeStatus }}
Coordinator: {{ $viewingApplication->coordinatorStatus }}
Overall Status: {{ $viewingApplication->overall_status }}
@if ($viewingApplication->studentAcceptance)
Your Response: {{ $viewingApplication->studentAcceptance }}
@endif

Reviewers

@if ($viewingApplication->committee)

Committee Member: {{ $viewingApplication->committee->user->name }}

@endif @if ($viewingApplication->coordinator)

Coordinator: {{ $viewingApplication->coordinator->user->name }}

@endif

Job Scope

{{ $viewingApplication->jobscope }}
@if ($viewingApplication->files->count() > 0)

Submitted Files

@foreach ($viewingApplication->files as $file)
📄

{{ $file->original_name }}

{{ $file->mime_type }} • {{ number_format($file->file_size / 1024, 1) }} KB

View File
@endforeach
@endif @if ($viewingApplication->remarks)

Lecturer Remarks

{{ $viewingApplication->remarks }}
@endif
ℹ️

Editing Restrictions:

@if ($viewingApplication->committeeStatus !== 'Pending' || $viewingApplication->coordinatorStatus !== 'Pending')

This application cannot be edited because it has been reviewed by committee or coordinator. You can only edit applications that are still pending review by both parties.

@endif
@endif @if ($showChangeRequestForm)

Request Application Change

Application #{{ $changeRequestApplicationID }} - {{ $selectedApplicationForChange?->companyName ?? '' }}

@if ($selectedApplicationForChange)

Current Application Details

Company: {{ $selectedApplicationForChange->companyName }}
Position: {{ $selectedApplicationForChange->position }}
Method: {{ $selectedApplicationForChange->methodOfWork }}
Duration: {{ $selectedApplicationForChange->startDate->format('M d, Y') }} - {{ $selectedApplicationForChange->endDate->format('M d, Y') }}
@endif
@error('changeRequestReason')

{{ $message }}

@enderror

Minimum 20 characters, maximum 1000 characters

Upload documents supporting your change request (PDF, DOC, DOCX, JPG, PNG). Max 10MB each.

@error('changeRequestFiles.*')

{{ $message }}

@enderror @if ($changeRequestFiles)

Files to upload:

@foreach ($changeRequestFiles as $file)
📄 {{ $file->getClientOriginalName() }} ({{ number_format($file->getSize() / 1024, 1) }} KB)
@endforeach
@endif
⚠️

Important Notice:

  • Change requests require approval from both committee and coordinator
  • If approved, you will need to submit a new placement application
  • Your current application will remain active until the new one is approved
  • Approval is not guaranteed - provide strong justification
@endif @if ($viewingChangeRequests && $selectedApplicationForChange)

Change Request History

Application #{{ $selectedApplicationForChange->applicationID }} - {{ $selectedApplicationForChange->companyName }}

@if ($selectedApplicationForChange->changeRequests->count() > 0)
@foreach ($selectedApplicationForChange->changeRequests as $changeRequest)

Change Request #{{ $changeRequest->justificationID }}

Submitted: {{ $changeRequest->requestDate->format('F d, Y') }}

{{ $changeRequest->overall_status }}
Reason:

{{ $changeRequest->reason }}

Committee: {{ $changeRequest->committeeStatus }}
Coordinator: {{ $changeRequest->coordinatorStatus }}
@if ($changeRequest->files->count() > 0)
Supporting Documents:
@foreach ($changeRequest->files as $file) @endforeach
@endif @if ($changeRequest->remarks)
Reviewer Remarks:
{{ $changeRequest->remarks }}
@endif @if ($changeRequest->decisionDate)
Decision Date: {{ $changeRequest->decisionDate->format('F d, Y') }}
@endif @if ($changeRequest->overall_status === 'Approved')

Change Request Approved!

You can now submit a new placement application with your requested changes.

@endif
@endforeach
@else

No change requests found for this application.

@endif
@endif