45 lines
1.3 KiB
JavaScript
45 lines
1.3 KiB
JavaScript
/**
|
|
* @name Grid
|
|
* @author Julie Blanc <contact@julie-blanc.fr>
|
|
* @see { @link https://gitlab.com/csspageweaver/plugins/grid/ }
|
|
*/
|
|
|
|
|
|
export default function gridEvents(){
|
|
let body = cssPageWeaver.ui.body;
|
|
let fileTitle = cssPageWeaver.docTitle;
|
|
|
|
let grid = {};
|
|
|
|
// valeur par défaut → grille désactivée
|
|
grid.default = {
|
|
toggle: 'no-grid'
|
|
};
|
|
|
|
grid.toggle = {};
|
|
grid.toggle.input = cssPageWeaver.ui.grid.toggleInput;
|
|
grid.toggle.label = cssPageWeaver.ui.grid.toggleLabel;
|
|
|
|
/* Récupération de la session précédente */
|
|
grid.toggle.value = localStorage.getItem('gridToggle_' + fileTitle) || grid.default.toggle;
|
|
|
|
if(grid.toggle.value === "grid"){
|
|
body.classList.add('grid'); // on indique qu'il y a la grille
|
|
grid.toggle.input.checked = true;
|
|
} else {
|
|
body.classList.remove('grid'); // grille désactivée
|
|
grid.toggle.input.checked = false;
|
|
}
|
|
|
|
/* Événement toggle */
|
|
grid.toggle.input.addEventListener("input", (e) => {
|
|
if(e.target.checked){
|
|
body.classList.add('grid'); // grille activée
|
|
localStorage.setItem('gridToggle_' + fileTitle, 'grid');
|
|
} else {
|
|
body.classList.remove('grid'); // grille désactivée
|
|
localStorage.setItem('gridToggle_' + fileTitle, 'no-grid');
|
|
}
|
|
});
|
|
}
|
|
|