File: /var/www/html/dashboard.orbiwheels.com/storage/framework/views/54461cc037953c0b90f0e4c2d35ebd79.php
<?php $__env->startSection('content'); ?>
<div class="right_col" role="main">
<div class="">
<div class="clearfix"></div>
<div class="row" style="display: block;">
<div class="col-md-12 col-sm-12 ">
<div class="x_panel">
<div class="x_title">
<h2>Driver <small>Edit</small></h2>
<ul class="nav navbar-right panel_toolbox">
<li><a href="<?php echo e(route('admin.driver.index')); ?>" class="closeBtn">
<i class="fa fa-arrow-left"></i> Back</a>
</li>
</ul>
<div class="clearfix"></div>
</div>
<div class="x_content">
<form class="form-label-left input_mask"
action="<?php echo e(route('admin.driver.update', $driver->id)); ?>" method="POST"
enctype="multipart/form-data">
<?php echo csrf_field(); ?>
<?php echo method_field('PUT'); ?>
<span class="section">General Details</span>
<div class="row">
<div class="col-md-3 col-sm-6 form-group">
<label for="transporter_id">Select Transporter</label>
<select name="transporter_id" id="transporter_id" class="form-control" required>
<option value="">-- Select Transporter --</option>
<?php $__currentLoopData = $transporters; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $transporter): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
<option value="<?php echo e($transporter->id); ?>"
<?php echo e($driver->transporter_id == $transporter->id ? 'selected' : ''); ?>>
<?php echo e($transporter->company_name); ?>
</option>
<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>
</select>
<?php $__errorArgs = ['transporter_id'];
$__bag = $errors->getBag($__errorArgs[1] ?? 'default');
if ($__bag->has($__errorArgs[0])) :
if (isset($message)) { $__messageOriginal = $message; }
$message = $__bag->first($__errorArgs[0]); ?>
<label class="text-danger"><?php echo e($message); ?></label>
<?php unset($message);
if (isset($__messageOriginal)) { $message = $__messageOriginal; }
endif;
unset($__errorArgs, $__bag); ?>
</div>
<div class="col-md-3 col-sm-6 form-group ">
<label for="heard">name *:</label>
<input type="text" class="form-control " id="inputSuccess4"
value="<?php echo e(old('name', $driver->name)); ?>" placeholder="Name" name="name">
<?php $__errorArgs = ['name'];
$__bag = $errors->getBag($__errorArgs[1] ?? 'default');
if ($__bag->has($__errorArgs[0])) :
if (isset($message)) { $__messageOriginal = $message; }
$message = $__bag->first($__errorArgs[0]); ?>
<label class="text-danger"><?php echo e($message); ?></label>
<?php unset($message);
if (isset($__messageOriginal)) { $message = $__messageOriginal; }
endif;
unset($__errorArgs, $__bag); ?>
</div>
<div class="col-md-3 col-sm-6 form-group ">
<label for="heard">Email *:</label>
<input type="text" class="form-control " id="inputSuccess4"
value="<?php echo e(old('email', $driver->email)); ?>" placeholder="Email" name="email">
<?php $__errorArgs = ['email'];
$__bag = $errors->getBag($__errorArgs[1] ?? 'default');
if ($__bag->has($__errorArgs[0])) :
if (isset($message)) { $__messageOriginal = $message; }
$message = $__bag->first($__errorArgs[0]); ?>
<label class="text-danger"><?php echo e($message); ?></label>
<?php unset($message);
if (isset($__messageOriginal)) { $message = $__messageOriginal; }
endif;
unset($__errorArgs, $__bag); ?>
</div>
<div class="col-md-3 col-sm-6 form-group ">
<label for="heard">Phone *:</label>
<input type="tel" class="form-control" id="inputSuccess5" placeholder="Phone"
name="phone" value="<?php echo e(old('phone', $driver->phone)); ?>">
<?php $__errorArgs = ['phone'];
$__bag = $errors->getBag($__errorArgs[1] ?? 'default');
if ($__bag->has($__errorArgs[0])) :
if (isset($message)) { $__messageOriginal = $message; }
$message = $__bag->first($__errorArgs[0]); ?>
<label class="text-danger"><?php echo e($message); ?></label>
<?php unset($message);
if (isset($__messageOriginal)) { $message = $__messageOriginal; }
endif;
unset($__errorArgs, $__bag); ?>
</div>
<div class="col-md-3 col-sm-6 form-group">
<label>Alternate Number:</label>
<input type="tel" class="form-control" name="alternate_number"
value="<?php echo e(old('alternate_number', $driver->alternate_number)); ?>">
<?php $__errorArgs = ['alternate_number'];
$__bag = $errors->getBag($__errorArgs[1] ?? 'default');
if ($__bag->has($__errorArgs[0])) :
if (isset($message)) { $__messageOriginal = $message; }
$message = $__bag->first($__errorArgs[0]); ?>
<label class="text-danger"><?php echo e($message); ?></label>
<?php unset($message);
if (isset($__messageOriginal)) { $message = $__messageOriginal; }
endif;
unset($__errorArgs, $__bag); ?>
</div>
<div class="col-md-3 col-sm-6 form-group">
<label>Age *:</label>
<input type="text" class="form-control" name="age"
value="<?php echo e(old('age', $driver->age ?? '')); ?>">
<?php $__errorArgs = ['age'];
$__bag = $errors->getBag($__errorArgs[1] ?? 'default');
if ($__bag->has($__errorArgs[0])) :
if (isset($message)) { $__messageOriginal = $message; }
$message = $__bag->first($__errorArgs[0]); ?>
<label class="text-danger"><?php echo e($message); ?></label>
<?php unset($message);
if (isset($__messageOriginal)) { $message = $__messageOriginal; }
endif;
unset($__errorArgs, $__bag); ?>
</div>
<div class="col-md-3 col-sm-6 form-group">
<label>Gender *:</label>
<select name="gender" class="form-control">
<option value="">Select Gender</option>
<option value="male"
<?php echo e(old('gender', $driver->gender) == 'male' ? 'selected' : ''); ?>>Male
</option>
<option value="female"
<?php echo e(old('gender', $driver->gender) == 'female' ? 'selected' : ''); ?>>Female
</option>
<option value="other"
<?php echo e(old('gender', $driver->gender) == 'other' ? 'selected' : ''); ?>>Other
</option>
</select>
<?php $__errorArgs = ['gender'];
$__bag = $errors->getBag($__errorArgs[1] ?? 'default');
if ($__bag->has($__errorArgs[0])) :
if (isset($message)) { $__messageOriginal = $message; }
$message = $__bag->first($__errorArgs[0]); ?>
<label class="text-danger"><?php echo e($message); ?></label>
<?php unset($message);
if (isset($__messageOriginal)) { $message = $__messageOriginal; }
endif;
unset($__errorArgs, $__bag); ?>
</div>
<div class="col-md-3 col-sm-6 form-group">
<label>Profile *</label>
<input type="file" class="form-control" name="profile_image">
<?php $__errorArgs = ['profile_image'];
$__bag = $errors->getBag($__errorArgs[1] ?? 'default');
if ($__bag->has($__errorArgs[0])) :
if (isset($message)) { $__messageOriginal = $message; }
$message = $__bag->first($__errorArgs[0]); ?>
<label class="text-danger"><?php echo e($message); ?></label>
<?php unset($message);
if (isset($__messageOriginal)) { $message = $__messageOriginal; }
endif;
unset($__errorArgs, $__bag); ?>
</div>
<div class="col-md-3 col-sm-6 form-group">
<label for="heard">Status *:</label>
<select name="status" class="form-control" id="statusInput">
<option value="active" <?php echo e($driver->status == 'active' ? 'selected' : ''); ?>>
Active</option>
<option value="inactive" <?php echo e($driver->status == 'inactive' ? 'selected' : ''); ?>>
Inactive</option>
</select>
<?php $__errorArgs = ['status'];
$__bag = $errors->getBag($__errorArgs[1] ?? 'default');
if ($__bag->has($__errorArgs[0])) :
if (isset($message)) { $__messageOriginal = $message; }
$message = $__bag->first($__errorArgs[0]); ?>
<label class="text-danger"><?php echo e($message); ?></label>
<?php unset($message);
if (isset($__messageOriginal)) { $message = $__messageOriginal; }
endif;
unset($__errorArgs, $__bag); ?>
</div>
<div class="col-md-3 col-sm-6 form-group">
<label>Experience:</label>
<input type="text" class="form-control" name="experience"
value="<?php echo e(old('experience', $driver->experience)); ?>">
<?php $__errorArgs = ['experience'];
$__bag = $errors->getBag($__errorArgs[1] ?? 'default');
if ($__bag->has($__errorArgs[0])) :
if (isset($message)) { $__messageOriginal = $message; }
$message = $__bag->first($__errorArgs[0]); ?>
<label class="text-danger"><?php echo e($message); ?></label>
<?php unset($message);
if (isset($__messageOriginal)) { $message = $__messageOriginal; }
endif;
unset($__errorArgs, $__bag); ?>
</div>
<div class="col-md-3 col-sm-6 form-group">
<label>About:</label>
<textarea class="form-control" name="about"><?php echo e(old('about', $driver->about)); ?></textarea>
<?php $__errorArgs = ['about'];
$__bag = $errors->getBag($__errorArgs[1] ?? 'default');
if ($__bag->has($__errorArgs[0])) :
if (isset($message)) { $__messageOriginal = $message; }
$message = $__bag->first($__errorArgs[0]); ?>
<label class="text-danger"><?php echo e($message); ?></label>
<?php unset($message);
if (isset($__messageOriginal)) { $message = $__messageOriginal; }
endif;
unset($__errorArgs, $__bag); ?>
</div>
<div class="col-md-3 col-sm-6 form-group mt-4">
<?php if($driver->documents->count() > 0): ?>
<div class="form-check">
<input type="checkbox" class="form-check-input verify-driver"
id="verifyDriver<?php echo e($driver->id); ?>" data-id="<?php echo e($driver->id); ?>"
<?php echo e($driver->is_verified ? 'checked' : ''); ?>>
<label class="form-check-label" for="verifyDriver<?php echo e($driver->id); ?>">
Verify Driver
</label>
</div>
<?php endif; ?>
</div>
</div>
<hr>
<span class="section">Driver Documents</span>
<div class="row">
<?php $__currentLoopData = $driver->documents; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $i => $doc): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
<div class="col-md-3 mb-3" id="doc-card-<?php echo e($doc->id); ?>">
<div class="card shadow-sm position-relative">
<button type="button"
class="btn btn-danger btn-sm position-absolute m-2 delete-doc"
style="right: 0; top: 0;" data-id="<?php echo e($doc->id); ?>">
×
</button>
<div class="card-body" style="height:150px;">
<h6 class="card-title">
<?php echo e(App\Models\Document::documentTypes($doc->doc_type)); ?>
<?php if($doc->is_verified): ?>
<span class="badge badge-success">Verified</span>
<?php else: ?>
<span class="badge badge-warning">Pending</span>
<?php endif; ?>
</h6>
<p class="mb-1"><strong>Number:</strong> <?php echo e($doc->doc_number); ?>
</p>
<?php if($doc->doc_type == 'dl' && $doc->expiry_date): ?>
<p class="mb-1"><strong>Expiry:</strong>
<?php echo e($doc->expiry_date); ?></p>
<?php endif; ?>
<?php if($doc->file_url): ?>
<a href="<?php echo e(asset('storage/' . $doc->file_url)); ?>"
class="btn btn-primary btn-sm m-2 position-absolute"
style="left: 0; bottom: 0;" target="_blank">
<i class="fa fa-eye"></i> View File
</a>
<?php endif; ?>
<?php if(!$doc->is_verified): ?>
<button type="button"
class="btn btn-success btn-sm position-absolute m-2 verify-doc"
style="right: 0; bottom: 0;" data-id="<?php echo e($doc->id); ?>">
Verify
</button>
<?php endif; ?>
</div>
</div>
</div>
<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>
</div>
<div id="documents-wrapper" class="row">
</div>
<button type="button" id="add-document" class="btn btn-primary btn-sm mt-2">+ Add
More</button>
<div class="form-group row">
<div class="col-md-9 col-sm-9 offset-md-10">
<button class="btn btn-primary" type="reset">Reset</button>
<button type="submit" class="btn btn-success">Submit</button>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
</div>
<?php $__env->stopSection(); ?>
<?php $__env->startPush('script'); ?>
<script>
let existingDocs = <?php echo json_encode($driver->documents->pluck('doc_type')->toArray(), 15, 512) ?>;
let docIndex = <?php echo e($driver->documents->count()); ?>;
let allDocTypes = {
'dl': 'Driving License',
'aadhar': 'Aadhar Card',
'pan': 'PAN Card',
'passport': 'Passport'
};
function getSelectedDocTypes() {
let selected = [...existingDocs];
$('.doc-type').each(function() {
let val = $(this).val();
if (val) selected.push(val);
});
return selected;
}
$('#add-document').click(function() {
const idx = docIndex;
let selected = getSelectedDocTypes();
let availableDocTypes = Object.keys(allDocTypes).filter(type => !selected.includes(type));
if (availableDocTypes.length === 0) {
Swal.fire('Info', 'All document types already uploaded!', 'info');
return;
}
let optionsHtml = '<option value="">Select Document Type</option>';
availableDocTypes.forEach(type => {
optionsHtml += `<option value="${type}">${allDocTypes[type]}</option>`;
});
let newRow = `
<div class="row document-row mb-2" data-index="${idx}">
<div class="col-md-3 form-group">
<label>Document Type *</label>
<select name="documents[${idx}][type]" class="form-control doc-type">
${optionsHtml}
</select>
</div>
<div class="col-md-3 form-group">
<label>Document Number *</label>
<input type="text" name="documents[${idx}][number]" class="form-control" placeholder="Document Number">
</div>
<div class="col-md-3 form-group">
<label>Document Photo *</label>
<input type="file" name="documents[${idx}][file]" class="form-control">
</div>
<div class="col-md-2 form-group expiry-date d-none">
<label>Expiry Date *</label>
<input type="date" name="documents[${idx}][expiry_date]" class="form-control">
</div>
<div class="col-md-1 form-group d-flex align-items-center mt-4">
<button type="button" class="btn btn-danger btn-sm remove-doc">X</button>
</div>
</div>`;
$('#documents-wrapper').append(newRow);
docIndex++;
});
$(document).on('click', '.remove-doc', function() {
$(this).closest('.document-row').remove();
});
$(document).on('change', '.doc-type', function() {
let row = $(this).closest('.document-row');
let type = $(this).val();
if (type == 'dl') {
row.find('.expiry-date').removeClass('d-none');
} else {
row.find('.expiry-date').addClass('d-none');
}
});
$(document).on('click', '.verify-doc', function() {
let docId = $(this).data('id');
let button = $(this);
Swal.fire({
title: 'Are you sure?',
text: "Mark this document as verified?",
icon: 'question',
showCancelButton: true,
confirmButtonText: 'Yes, verify it!'
}).then((result) => {
if (result.isConfirmed) {
$.ajax({
url: '/admin/driver/document/' + docId + '/verify',
method: 'POST',
data: {
_token: '<?php echo e(csrf_token()); ?>'
},
success: function(res) {
Swal.fire('Verified!', res.message, 'success').then(() => {
location.reload();
});
},
error: function(err) {
Swal.fire('Error', 'Something went wrong', 'error');
}
});
}
});
});
$(document).on('click', '.delete-doc', function() {
let docId = $(this).data('id');
let card = $('#doc-card-' + docId);
Swal.fire({
title: 'Are you sure?',
text: "This document will be permanently deleted!",
icon: 'warning',
showCancelButton: true,
confirmButtonColor: '#d33',
cancelButtonColor: '#6c757d',
confirmButtonText: 'Yes, delete it!',
cancelButtonText: 'Cancel'
}).then((result) => {
if (result.isConfirmed) {
$.ajax({
url: '/admin/driver/document/delete/' + docId,
type: 'DELETE',
data: {
_token: '<?php echo e(csrf_token()); ?>'
},
success: function(response) {
if (response.success) {
card.remove();
Swal.fire(
'Deleted!',
response.message,
'success'
).then(() => {
location.reload();
});
} else {
Swal.fire(
'Error!',
'Something went wrong.',
'error'
);
}
},
error: function() {
Swal.fire(
'Error!',
'Unable to delete document.',
'error'
);
}
});
}
});
});
$(document).on('change', '.verify-driver', function() {
const $checkbox = $(this);
const driverId = $checkbox.data('id');
const isChecked = $checkbox.is(':checked');
const actionText = isChecked ? 'verify' : 'unverify';
Swal.fire({
title: 'Are you sure?',
text: `Do you want to ${actionText} this driver?`,
icon: 'question',
showCancelButton: true,
confirmButtonText: `Yes, ${actionText} it!`
}).then((result) => {
if (!result.isConfirmed) {
$checkbox.prop('checked', !isChecked);
return;
}
$.ajax({
url: '/admin/driver/' + driverId + '/verify',
method: 'POST',
headers: {
'X-CSRF-TOKEN': '<?php echo e(csrf_token()); ?>'
},
data: {
status: isChecked ? 1 : 0
},
success: function(res) {
Swal.fire('Success!', res.message || 'Status updated', 'success');
},
error: function(xhr) {
let msg = 'Something went wrong';
if (xhr && xhr.responseJSON && xhr.responseJSON.message) {
msg = xhr.responseJSON.message;
} else if (xhr && xhr.responseText) {
try {
const json = JSON.parse(xhr.responseText);
if (json.message) msg = json.message;
} catch (e) {}
}
Swal.fire('Error', msg, 'error');
$checkbox.prop('checked', !isChecked);
}
});
});
});
</script>
<?php $__env->stopPush(); ?>
<?php echo $__env->make('layout.master', array_diff_key(get_defined_vars(), ['__data' => 1, '__path' => 1]))->render(); ?><?php /**PATH /var/www/html/dashboard.orbiwheels.com/resources/views/admin/driver/edit.blade.php ENDPATH**/ ?>