
Angel Javier
Ómicron
Verificado
Verificación en dos pasos activada
Verificado por Whatsapp
¡Ha verificado su Paypal!
Verificado por Binance
¡Usuario popular!
Holas colegas de Forobeta, estoy solicitando una ayuda con la librería JS de FullCalendar.
Tengo un calendario,, le he realizado varias modificaciones (que todas mis eventos, siempre se repiran hasta la fecha final, colores, ect).
El código superior, me funciona un 99% a lo que tengo, ya que si tengo evento para un día domingo, el mismo no lo muestra.
Vengo de Bing y ChatGPT y ambos se ponen a dar vueltas en círculo.
Los valores de mi base de datos son
due_date = fecha inicio
final_date = fecha final.
start = hora de inicio
end = hora final
dias = días que se repetirá la tarea (donde domingo es igual a 0 y así sucecivamente).
Si alguien puede darme que estoy haciendo mal, sería de gran ayuda
Tengo un calendario,, le he realizado varias modificaciones (que todas mis eventos, siempre se repiran hasta la fecha final, colores, ect).
JavaScript:
<script>
$(document).ready(function() {
// Inicializa el calendario
$('#calendar').fullCalendar({
defaultView: 'month', // Mostrar la vista mensual por defecto
header: {
left: 'prev,next today',
center: 'title',
right: 'month,agendaWeek,agendaDay' // Permitir cambiar entre las vistas de mes, semana y día
},
locale: 'es', // Establece la localización a español
events: function(start, end, timezone, callback) {
var events = [];
@foreach($events as $event)
@if($event->due_date && $event->dias)
@php
$start = \Carbon\Carbon::createFromFormat(config('panel.date_format'), $event->due_date);
$end = \Carbon\Carbon::createFromFormat(config('panel.date_format'), $event->final_date);
$currentDate = clone $start;
$dias = explode(',', $event->dias); // Convierte la cadena en un array
@endphp
@while($currentDate <= $end)
@php
$dayOfWeek = $currentDate->dayOfWeek;
@endphp
@if(in_array($dayOfWeek, $dias)) // Usa el array
events.push({
title: '{{ $event->name }} - {{ $event->grupo }}',
start: '{{$currentDate->format('Y-m-d')}}T{{ $event->start }}',
end: '{{$currentDate->format('Y-m-d')}}T{{ $event->end }}',
url: '{{ url('admin/tasks').'/'.$event->id.'/' }}',
color: '{{ $event->grupo == "infantil" ? "blue" : ($event->grupo == "adulto" ? "green" : "") }}'
});
@endif
@php
$currentDate->addDay();
@endphp
@endwhile
@endif
@endforeach
callback(events);
}
});
});
</script>
El código superior, me funciona un 99% a lo que tengo, ya que si tengo evento para un día domingo, el mismo no lo muestra.
Vengo de Bing y ChatGPT y ambos se ponen a dar vueltas en círculo.
Los valores de mi base de datos son
due_date = fecha inicio
final_date = fecha final.
start = hora de inicio
end = hora final
dias = días que se repetirá la tarea (donde domingo es igual a 0 y así sucecivamente).
Si alguien puede darme que estoy haciendo mal, sería de gran ayuda