File: //var/www/html/owlcrm/resources/views/users/task/edit.blade.php
@extends('adminlte::page')
@section('title', 'Dashboard')
@section('content_header')
<h1>Task</h1>
<small>Manage Task</small>
@stop
@section('content')
<div class="card card-dark">
<div class="card-header">
<h3 class="card-title"> Edit Task</h3>
</div>
@if (session('error'))
<h6 class="alert alert-danger">
{{ session('error') }}
</h6>
@endif
@if ($errors->any())
<div class="alert alert-danger">
<ul>
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
@endif
<form method="POST" id="add_task" role="form" action="{{ route('task.update', $task->id) }}"
class="jqueryValidation">
@csrf
@method('PATCH')
<div class="card-body">
<div class=" form-group">
<label for="subject">Subject</label>
<x-adminlte-input class="form-control" id="subject" name="subject" placeholder="Enter Subject"
value="{{ $task->subject }}" required />
</div>
<div class=" form-group">
<label for="start_date">Start Date</label>
<x-adminlte-input type="date" class="form-control" id="start_date " name="start_date"
placeholder="Enter Start Date"
value="{{ old('start_date', $task->start_date ? \Carbon\Carbon::parse($task->start_date)->format('Y-m-d') : '') }}"
required />
</div>
<div class="
form-group">
<label for="due_date">Due Date</label>
<x-adminlte-input type="date" class="form-control" id="due_date " name="due_date"
placeholder="Enter Due Date"
value="{{ old('due_date', $task->due_date ? \Carbon\Carbon::parse($task->due_date)->format('Y-m-d') : '') }}"
required />
</div>
<div class=" form-group">
<label for="priority">Priority</label>
<select name="priority" id="priority" class="form-control" required>
@foreach (App\Models\Task::PRIORITIES as $key => $priority)
<option
value="{{ $key }}"{{ old('priority', $task->priority ?? '0') == $key ? 'selected' : '' }}>
{{ $priority }}</option>
@endforeach
</select>
</div>
<div class="form-group">
<label for="assigned_to">Assign to</label>
<select class="form-control" name="assigned_to" id="" required>
<option value="">--Select--</option>
@foreach ($users as $user)
<option value="{{ $user->id }}"{{ $task->assigned_to == $user->id ? 'selected' : '' }}>
{{ $user->first_name . $user->last_name }}</option>
@endforeach
</select>
</div>
<div class="form-group">
<label for="entity_type"> Entity Type </label>
<select name="entity_type" id="entity_type" class="form-control" required>
<option value="">--Select--</option>
@foreach (App\Models\Task::Entity as $key => $entity)
<option
value="{{ $key }}"{{ old('entity_type', $task->entity_type ?? '') == $key ? 'selected' : '' }}>
{{ $entity }}</option>
@endforeach
</select>
</div>
<div class="form-group">
<label for="entity_id"> Entity Id </label>
<select name="entity_id" id="entity_id" class="form-control" required>
<option value="">--Select--</option>
<option
value="{{ $key }}"{{ old('entity_id', $task->entity_id ?? '') == $key ? 'selected' : '' }}>
{{ $task->entity_id }}</option>
</select>
</div>
<div class=" form-group">
<label for="description">Description</label>
<textarea class="form-control" id="description" name="description" rows="4" placeholder="Enter Description"
required>{{ old('description', $task->description) }}</textarea>
</div>
<div class="form-group">
<label for="state"> State </label>
<select name="state" id="state" class="form-control" required>
@foreach (App\Models\task::States as $key => $state)
<option value="{{ $key }}"
{{ old('state', $task->state ?? 'pending') == $key ? 'selected' : '' }}>
{{ $state }}</option>
@endforeach
</select>
</div>
<div class="form-group">
<input type="checkbox" id="is_active" name="is_active" value="1"
{{ $task->status == 1 ? 'checked' : '' }}>
<label for="is_active">Is Active</label>
</div>
<div class="card-footer d-flex justify-content-end">
<a href="{{ route('task.index') }}" class="btn btn-danger mx-1">Cancel</a>
<button type="submit" class="btn btn-dark mx-1">Update</button>
</div>
</form>
</div>
@push('js')
<script>
// for Entity_type and entity_id
$(document).ready(function() {
$('#entity_type').on('change', function() {
let entityType = $(this).val();
console.log('Selected entity type:', entityType);
if (entityType) {
$.ajax({
url: '/task/create',
type: 'GET',
data: {
entity_type: entityType
},
dataType: 'json',
success: function(response) {
console.log('Response:', response);
let entityIdSelect = $('#entity_id');
entityIdSelect.empty();
entityIdSelect.append('<option value="">Select</option>');
if (response.success) {
$.each(response.entities, function(index, entity) {
entityIdSelect.append('<option value="' + entity
.id + '">' + entity.first_name + entity
.last_name + '</option>');
});
} else {
alert(response.message);
}
},
error: function(xhr, status, error) {
console.error('Error fetching entity IDs:', error);
}
});
} else {
$('#entity_id').empty().append('<option value="">Select Entity Id</option>');
}
});
});
// End Entity_type and entity_id
</script>
@endpush
@stop