diff --git a/app/Http/Controllers/AdminController.php b/app/Http/Controllers/AdminController.php index 2c327ed3..cff7f589 100644 --- a/app/Http/Controllers/AdminController.php +++ b/app/Http/Controllers/AdminController.php @@ -3,6 +3,7 @@ namespace App\Http\Controllers; use Illuminate\Http\Request; +use \App\Log; class AdminController extends Controller { @@ -23,11 +24,16 @@ class AdminController extends Controller */ public function index() { + Log::saveLog('Affichage du tableau de bord'); + return view('admin.dashboard'); } public function update() { + Log::saveLog('Affichage des notes de mise a jour'); + return view('admin.update'); } + } diff --git a/app/Http/Controllers/CalendarController.php b/app/Http/Controllers/CalendarController.php new file mode 100644 index 00000000..cd894284 --- /dev/null +++ b/app/Http/Controllers/CalendarController.php @@ -0,0 +1,75 @@ +middleware('auth', ['except' => ['generate']]); + } + + /** + * Show the application dashboard. + * + * @return \Illuminate\Http\Response + */ + public function index() + { + Log::saveLog("Affichage de l'horaire"); + + return view('admin.calendar'); + } + + public function generate() + { + + setlocale(LC_ALL, "fr"); + $month = request('month'); + $year = request('year'); + + $calendar = array(); + + $dayinmonth = cal_days_in_month(CAL_GREGORIAN, $month, $year); + + $firstdaymonth = date("w", strtotime("01-".$month."-".$year)); + + $addingday = 0; + + for ($i=$firstdaymonth ; $addingday < $dayinmonth ; $i++) { + $addingday = $addingday + 1; + $calendar[$i] = $addingday; + } + + echo ''; + echo ''; + echo ''; + echo ''; + for ($i=0; $i < 6 ; $i++) + { + echo ''; + for ($a=0; $a < 7 ; $a++) + { + if (isset($calendar[(($i*7) + $a)])) + { + echo ''; + } + } + echo ''; + } + echo '
'.strftime("%B", strtotime("01-".$month."-".$year)).'
'; + $today = date("Y-m-d", strtotime($year."-".$month."-".$calendar[(($i*7) + $a)])); + echo date("j", strtotime($today)); + echo '
'; + + } + +} diff --git a/public/assets/admin/assets/scss/style.css b/public/assets/admin/assets/scss/style.css index bf9376ca..33ac74f5 100644 --- a/public/assets/admin/assets/scss/style.css +++ b/public/assets/admin/assets/scss/style.css @@ -2238,3 +2238,29 @@ header .form-inline { padding: 5px; } } /*# sourceMappingURL=style.css.map */ + +.calendar{ + margin-top: 50px; +} + +.calendar-body-column { + display: flex; +} +.calendar-container{ + height: 7.5rem; + text-align: center; + vertical-align: middle !important; + border: none !important; +} +.btn-calendar{ + height: 100px; + width: 100px; + border-radius: 50%; + background-color: #949CA0; +} +.thead-dark { + color: #fff; + background-color: #212529; + border-color: #32383e; + text-align: center; +} \ No newline at end of file diff --git a/public/assets/js/calendar/calendar.js b/public/assets/js/calendar/calendar.js new file mode 100644 index 00000000..7ffc9d6b --- /dev/null +++ b/public/assets/js/calendar/calendar.js @@ -0,0 +1,111 @@ +init(); + +function init() { + + var lastid = 99; + + (function($) { + $( document ).ajaxError(function() { + $( ".log" ).text( "Triggered ajaxError handler." ); + }); + })(jQuery); + + (function($) { + var mycalendar = $('.calendar'); + + $.post('/api/calendar/generate', { month: "7", year: "2018" } , function(data) { + mycalendar.replaceWith(data); + + console.log('Calendar Initialised'); + }); + })(jQuery); + + +} + +function calsetactive(myid) { + if (lastid != 99) { + document.getElementById(lastid).classList.toggle("calendar-btn-active"); + } + var myDate = document.getElementById(myid); + myDate.classList.toggle("calendar-btn-active"); + lastid = myid; + + if (myDate.classList.contains("calendar-nothing")) { + calendarEmptyDay(myid); + } else { + calendarOpen(myid); + } +} + +function calendarOpen(myid) { + var mydate = document.getElementById(myid).name; + $(function() { + var loadingDiv = $('#calendarmodalload'); + $.get('/adminV2/assets/lib/calendar/calendarmodal.php?date='+mydate, function(data) { + loadingDiv.replaceWith(data); + console.log("Loading day: "+mydate); + }); + }); +} + +function calendarEmptyDay(myid) { + var mydate = document.getElementById(myid).name; + $(function() { + var loadingDiv = $('#calendarmodalload'); + $.get('/adminV2/assets/lib/calendar/calendarEmptyDay.php?date='+mydate, function(data) { + loadingDiv.replaceWith(data); + console.log("Loading empty day: "+mydate); + }); + }); +} + + + +//Modal Calendar +// When the user clicks on (x), close the modal +function calendarmodalClose() { + document.getElementById('calendar-modal').style.display = "none"; +} + +// When the user clicks anywhere outside of the modal, close it +window.onclick = function(event) { + if (event.target == document.getElementById('calendar-modal')) { + document.getElementById('calendar-modal').style.display = "none"; + } +} + +// Boutton Back and Next on calendar Head +function calendarback() { + console.log("click detect"); + lastid = 99; + $(function() { + var mycalendar = $('.calendar'); + varmonth = varmonth - 1; + if (varmonth < 1) { + varyear = varyear - 1; + varmonth = 12; + } + $.get('/adminV2/assets/lib/calendar/calendar.php?month='+varmonth+'&year='+varyear, function(data) { + mycalendar.replaceWith(data); + console.log("Going next"); + }); + }); +} + +function calendarnext(){ + console.log("click detect"); + lastid = 99; + $(function() { + var mycalendar = $('.calendar'); + varmonth = varmonth + 1; + if (varmonth > 12) { + varyear = varyear + 1; + varmonth = 1; + } + $.get('/adminV2/assets/lib/calendar/calendar.php?month='+varmonth+'&year='+varyear, function(data) { + mycalendar.replaceWith(data); + console.log("Going next"); + }); + }); +} diff --git a/resources/lang/fr/admin/sidebar.php b/resources/lang/fr/admin/sidebar.php index bc426c0a..9f6adead 100644 --- a/resources/lang/fr/admin/sidebar.php +++ b/resources/lang/fr/admin/sidebar.php @@ -27,6 +27,7 @@ return [ 'public_page_edit_article' => "Modifier un article", 'public_page_delete_article' => "Supprimer un article", 'calendar_title' => "Horaire", + 'calendar_display' => "Afficher l'horaire", 'services_title' => "Services", 'stats_title' => "Statistiques", 'users_title' => "Utilisateurs", diff --git a/resources/views/admin/calendar.blade.php b/resources/views/admin/calendar.blade.php new file mode 100644 index 00000000..7eae7f3f --- /dev/null +++ b/resources/views/admin/calendar.blade.php @@ -0,0 +1,50 @@ +@extends('layouts.admin.main') + +@section('content') +
+
+
+ + +
+
+
+
+@endsection + +@section('breadcrumb') + +@endsection + +@section('custom_scripts') + +
+@endsection \ No newline at end of file diff --git a/resources/views/layouts/admin/head.blade.php b/resources/views/layouts/admin/head.blade.php index 4e82ede1..5136be26 100644 --- a/resources/views/layouts/admin/head.blade.php +++ b/resources/views/layouts/admin/head.blade.php @@ -1,6 +1,7 @@ +getLocale())) ?> C-CMS - Espace Administration diff --git a/resources/views/layouts/admin/header.blade.php b/resources/views/layouts/admin/header.blade.php index 78ee1188..cee6f52a 100644 --- a/resources/views/layouts/admin/header.blade.php +++ b/resources/views/layouts/admin/header.blade.php @@ -40,8 +40,8 @@ foreach (Auth::user()->unreadNotifications as $notification) {