Update schedule editor

This commit is contained in:
Mathieu Lagace
2019-12-22 17:45:44 -05:00
parent 047633c2ce
commit 2c18dc8c1d
9 changed files with 448 additions and 79 deletions

View File

@@ -4,27 +4,27 @@
Niveau/Periode
</b>
</div>
@for($i = 1; $i <= 3; $i++)
@foreach($eventType->schedule_model['niveaux'] as $niveau)
<div class="col border-right border-bottom bg-dark text-white">
<div class="form-group label-floating">
<input type="text" placeholder="Niveau" class="form-control text-white" value="Niveau {{$i}}" />
<input type="text" placeholder="Niveau" class="form-control text-white" value="{{$niveau['name']}}" />
<span class="form-control-feedback">
<i class="material-icons">clear</i>
</span>
</div>
</div>
@endfor
@endforeach
<div class="col-1">
<button class="btn btn-primary btn-fab btn-fab-mini btn-round">
<i class="material-icons">add</i>
</button>
</div>
</div>
@for($j = 1; $j <= 3; $j++)
@foreach($eventType->schedule_model['periodes'] as $periode)
<div class="row">
<div class="col-2 d-inline border-right border-bottom bg-light">
<div class="form-group label-floating">
<input type="text" placeholder="Période" class="form-control" value="Période {{$j}}" />
<input type="text" placeholder="Période" class="form-control" value="{{$periode['name']}}" />
<span class="form-control-feedback">
<i class="material-icons">clear</i>
</span>
@@ -32,28 +32,28 @@
<div class="row">
<div class="col-6">
<div class="form-group label-floating">
<input type="time" class="form-control" value="00:00" />
<input type="time" class="form-control" value="{{$periode['begin_time']}}" />
<span class="form-control-feedback"><i class="material-icons">clear</i></span>
</div>
</div>
<div class="col-6">
<div class="form-group label-floating">
<input type="time" class="form-control" value="00:00" />
<input type="time" class="form-control" value="{{$periode['end_time']}}" />
<span class="form-control-feedback"><i class="material-icons">clear</i></span>
</div>
</div>
</div>
</div>
@for($i = 1; $i <= 3; $i++)
<div id="container-{{$i}}-{{$j}}" niveau="{{$i}}" periode="{{$j}}" class="col scheduleEditor-course">
@foreach($eventType->schedule_model['niveaux'] as $niveau)
<div id="container-{{$loop->index+1}}-{{$loop->parent->index+1}}" niveau="{{$loop->index+1}}" periode="{{$loop->parent->index+1}}" class="col scheduleEditor-course">
@loaderDot
</div>
@endfor
@endforeach
<div class="col-1">
</div>
</div>
@endfor
@endforeach
<div class="row">
<div class="col-2 p-2">
<button class="btn btn-primary btn-fab btn-fab-mini btn-round">

View File

@@ -10,21 +10,100 @@
<div class="card-body ">
<form action="/admin/schedule/event/add" method="POST">
@csrf
<div class="row">
<div class="col-md-12">
<div class="form-group">
<label for="type">Type d'événement</label>
<select class="form-control selectpicker" data-style="btn btn-link" name="type" id="type" onchange="switchType('{{$date}}')" required>
@foreach (\App\ComplementaryActivity::all() as $item)
<option value="{{$item->id}}">{{$item->name}}</option>
@endforeach
</select>
<div class="row" id="container">
<div id="accordion" class="col-12" role="tablist">
<div class="card card-collapse">
<div class="card-header" role="tab" id="headingOne">
<h5 class="mb-0">
<a data-toggle="collapse" href="#collapseOne" aria-expanded="true" aria-controls="collapseOne">
<b>Information générale</b>
<i class="material-icons">keyboard_arrow_down</i>
</a>
</h5>
</div>
<div id="collapseOne" class="collapse show" role="tabpanel" aria-labelledby="headingOne" data-parent="#accordion">
<div class="row mt-3">
<div class="col-md-12">
<div class="form-group">
<label for="name">Nom de l'événement</label>
<input type="text" name="name" id="name" class="form-control" placeholder="" aria-describedby="nameHelp" required>
<small id="nameHelp" class="text-muted">Veuillez entrer le nom de l'événement</small>
</div>
</div>
<div class="col-lg-3 col-md-4">
<div class="form-group">
<label class="label-control">Date et Heure de début</label>
<input name="begin_time" type="text" id="begin_time" class="form-control datetimepicker" required/>
</div>
</div>
<div class="col-lg-3 col-md-4">
<div class="form-group">
<label class="label-control">Date et Heure de fin</label>
<input name="end_time" type="text" id="end_time" class="form-control datetimepicker" required/>
</div>
</div>
<div class="col-lg-6 col-md-4">
<div class="form-group">
<label for="name">Lieux</label>
<input type="text" name="location" id="location" class="form-control" placeholder="" aria-describedby="nameHelp" required>
<small id="nameHelp" class="text-muted">Veuillez entrer le lieu de l'événement</small>
</div>
</div>
<div class="col-md-12 mt-4">
<label class="mb-0" for="desc">Description</label>
<div class="form-group">
<textarea class="form-control richeditor" name="admin_desc" id="admin_desc" rows="6" required></textarea>
</div>
</div>
</div>
</div>
</div>
<div class="card card-collapse" id="collmessagedelasemaine">
<div class="card-header" role="tab" id="headingTwo">
<h5 class="mb-0">
<a class="collapsed" data-toggle="collapse" href="#collapseTwo" aria-expanded="false" aria-controls="collapseTwo">
<b>Message de la semaine</b>
<i class="material-icons">keyboard_arrow_down</i>
</a>
</h5>
</div>
<div id="collapseTwo" class="collapse" role="tabpanel" aria-labelledby="headingTwo" data-parent="#accordion">
<div class="card-body">
<div class="row">
<div class="col-md-6">
<div class="form-group">
<label class="label-control">Date et heure de publication des messages de la semaine</label>
<input name="date_msg" type="text" id="weekly_msg_publication_time" class="form-control datetimepicker"/>
</div>
</div>
<div class="col-md-12">
<label class="mb-0" for="desc">Message de le semaine</label>
<div class="form-group">
<textarea class="form-control richeditor" name="msg" id="msg" rows="6">{{\App\Config::getData('default_weekly_msg')}}</textarea>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="card card-collapse" id="collschedule">
<div class="card-header" role="tab" id="headingThree">
<h5 class="mb-0">
<a class="collapsed" data-toggle="collapse" href="#collapseThree" aria-expanded="false" aria-controls="collapseThree">
<b>Horaire</b>
<i class="material-icons">keyboard_arrow_down</i>
</a>
</h5>
</div>
<div id="collapseThree" class="collapse" role="tabpanel" aria-labelledby="headingThree" data-parent="#accordion">
<div class="card-body" style="overflow: scroll">
<div id="scheduleEditor" class="m-3" style="width: 90vw">
@loaderDot
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row" id="container">
</div>
<button type="submit" class="btn btn-primary mt-5">Sauvegarder</button>
</form>
@@ -37,12 +116,21 @@
<h4 class="card-title">Options</h4>
</div>
<div class="card-body ">
<div class="form-group">
<label for="type">Type d'événement</label>
<small class="text-muted d-block">Choisir le type d'activité supprimera vos modification actuel</small>
<select class="form-control selectpicker" data-style="btn btn-link" name="type" id="type" onchange="loadEventType('{{$date}}')" required>
@foreach (\App\EventType::all() as $item)
<option value="{{$item->id}}">{{$item->name}}</option>
@endforeach
</select>
</div>
<div class="form-group">
<label class="m-0" for="type">Activité obligatoire</label>
<small class="text-muted d-block">L'activité est-elle obligatoire pour tout les cadets ?</small>
<div class="togglebutton">
<label>
<input type="checkbox" checked="">
<input id="is_mandatory" name="is_mandatory" type="checkbox">
<span class="toggle"></span>
L'activité est obligatoire
</label>
@@ -53,7 +141,7 @@
<small class="text-muted d-block">Inclure des messages de la semaine avec l'activité ?</small>
<div class="togglebutton">
<label>
<input id="msg_toggle" type="checkbox" checked="">
<input id="use_weekly_msg" type="checkbox" name="use_weekly_msg" onchange="switchUseWeeklyMsg()">
<span class="toggle"></span>
Avec message de la semaine
</label>
@@ -64,7 +152,7 @@
<small class="text-muted d-block">Inclure un horaire avec l'activité ?</small>
<div class="togglebutton">
<label>
<input type="checkbox" checked="" id="schedule_toggle">
<input type="checkbox" id="use_schedule" name="use_schedule" checked onchange="switchUseSchedule()">
<span class="toggle"></span>
Avec horaire
</label>
@@ -81,49 +169,9 @@
<script src="/js/plugins/schedule/editor.js"></script>
<script src="/js/plugins/autocomplete.js"></script>
<script>
switchType('{{$date}}')
$('.datetimepicker').datetimepicker({
icons: {
time: "fa fa-clock-o",
date: "fa fa-calendar",
up: "fa fa-chevron-up",
down: "fa fa-chevron-down",
previous: 'fa fa-chevron-left',
next: 'fa fa-chevron-right',
today: 'fa fa-screenshot',
clear: 'fa fa-trash',
close: 'fa fa-remove'
}
});
$('select').selectpicker();
</script>
<script>
$('#msg_toggle').change(
function () {
if($(this).is(":checked"))
{
$('#collmessagedelasemaine').removeClass('d-none');
}
else
{
$('#collmessagedelasemaine').addClass('d-none');
}
}
)
$('#schedule_toggle').change(
function () {
if($(this).is(":checked"))
{
$('#collschedule').removeClass('d-none');
}
else
{
$('#collschedule').addClass('d-none');
}
}
)
</script>
<script>
initScheduleEditor("scheduleEditor",3,4);
$(function () {
console.log('Document READY loading schedule editor');
loadEventType('{{$date}}');
})
</script>
@endsection