/* --- Fonctions utilitaires --- */

function getCookie(key) {
    const split = document.cookie.split(';');
    let cookies = {};
    split.forEach(elt => {
        const val = elt.trim().split('=');
        cookies[val[0]] = val[1];
    });
    if(key !== undefined) {
        return cookies[key];
    }
    return cookies;
}

/* --- Surcharge objets --- */

String.prototype.capitalize = function() {
    return this[0].toUpperCase() + this.slice(1);
}

/* --- Initialisation modules --- */

$(document).ready(function(){
    
    // Chargement menu mobile
    $('.sidenav').sidenav();
    // Select
    $('select').formSelect();
    // Modal
    M.Modal.init($('.modal'), {
        dismissible: false,
        startingTop: '20%',
        endingTop: '25%',
        onOpenEnd: (modal) => {
            setTimeout(() => { 
                M.Modal.getInstance(modal).close();
            }, 3000);
        }
    });
    // Date picker
    M.Datepicker.init($('.datepicker'), {
        format: 'dd/mm/yyyy',
        firstDay: 1,
        yearRange: [
            new Date(Date.now()).getFullYear() - 100,
            new Date(Date.now()).getFullYear()
        ],
        i18n: {
            cancel: 'Annuler',
            clear: 'Supprimer',
            months: [
                'Janvier',
                'Fevrier',
                'Mars',
                'Avril',
                'Mai',
                'Juin',
                'Juillet',
                'Aout',
                'Septembre',
                'Octobre',
                'Novembre',
                'Decembre'
            ],
            monthsShort: [
                'Janv',
                'Fevr',
                'Mars',
                'Avr',
                'Mai',
                'Juin',
                'Juil',
                'Aout',
                'Sept',
                'Oct',
                'Nov',
                'Dec'
            ],
            weekdays: [
                'Dimanche',
                'Lundi',
                'Mardi',
                'Mercredi',
                'Jeudi',
                'Vendredi',
                'Samedi'       
            ],
            weekdaysShort: [
                'Dim',
                'Lun',
                'Mar',
                'Mer',
                'Jeu',
                'Ven',
                'Sam'
            ],
            weekdaysAbbrev:	['D','L','M','M','J','V','S']
        }
    });

});