wip: APIv2, UI rework, js cleanup
Retirer jquery etc.
This commit is contained in:
parent
37031749b4
commit
52dd5693fb
11 changed files with 126 additions and 218 deletions
32
ui/js/carousel.js
Normal file
32
ui/js/carousel.js
Normal file
|
@ -0,0 +1,32 @@
|
|||
// 2025-02 Victor Lacasse-Beaudoin, AGECEM
|
||||
//
|
||||
// Carousel d'images à afficher sur https://babillard.agecem.com/ ainsi que
|
||||
// sur la télévision du Centre-Multi Services de l'AGECEM.
|
||||
//
|
||||
// WIP
|
||||
async function getContenu() {
|
||||
const url = "/api/v2/contenu/";
|
||||
try {
|
||||
const response = await fetch(url);
|
||||
if (!response.ok) {
|
||||
//TODO start interval then refresh page to try again
|
||||
throw new Error(`Response status: ${response.status}`);
|
||||
}
|
||||
json = await response.json();
|
||||
console.log("[i] got contenu");
|
||||
console.log(json);
|
||||
|
||||
//startCarousel(json);
|
||||
}
|
||||
catch (error) {
|
||||
console.error(error.message);
|
||||
}
|
||||
}
|
||||
|
||||
function run(){
|
||||
console.log("[i] run");
|
||||
|
||||
getContenu();
|
||||
}
|
||||
|
||||
run();
|
|
@ -1,45 +0,0 @@
|
|||
var images = [];
|
||||
var indexImages = 0;
|
||||
|
||||
function afficherIndex() {
|
||||
$('#debug').text(indexImages);
|
||||
}
|
||||
|
||||
function afficherImage() {
|
||||
$('#image').attr('src', "/api/contenu/"+images[indexImages]);
|
||||
}
|
||||
|
||||
function augmenterIndex() {
|
||||
if (indexImages >= images.length - 1) {
|
||||
indexImages = 0;
|
||||
} else {
|
||||
indexImages ++;
|
||||
}
|
||||
}
|
||||
|
||||
function executionLoop(){
|
||||
//afficherIndex();
|
||||
afficherImage();
|
||||
augmenterIndex();
|
||||
}
|
||||
|
||||
function obtenirContenu(){
|
||||
var response = '';
|
||||
$.ajax({
|
||||
type: "GET",
|
||||
url: window.location.origin + "/api/contenu",
|
||||
async: false,
|
||||
success: function(text) {
|
||||
response = text;
|
||||
}
|
||||
});
|
||||
|
||||
console.log(response);
|
||||
images = response.split(';');
|
||||
console.log(images);
|
||||
}
|
||||
|
||||
$(function(){
|
||||
obtenirContenu();
|
||||
var executionInterval = setInterval(executionLoop, (Math.floor(Math.random() * 6)+15)*1000);
|
||||
});
|
|
@ -1,65 +0,0 @@
|
|||
// VARS
|
||||
// Vitesses
|
||||
var vitesseTexte = 4000; // En millisecondes
|
||||
|
||||
// Coordonnées
|
||||
var pointInitial = '100%';
|
||||
var pointDestination = '-=2000px';
|
||||
|
||||
// Messages
|
||||
var messageDiv = '#text-content div'
|
||||
var messages = [];
|
||||
var indexMessages = 0;
|
||||
|
||||
var fontSize;
|
||||
var fontSizeLength;
|
||||
|
||||
// FUNCS
|
||||
function animerTexte(){
|
||||
// Diriger le texte vers la droite jusqu'à `pointDestination'.
|
||||
// Récursivement reset la position du texte.
|
||||
$(messageDiv).animate({left: pointDestination}, vitesseTexte, 'linear', resetTexte);
|
||||
}
|
||||
|
||||
function resetTexte(){
|
||||
// Remettre le texte au point initial
|
||||
$(messageDiv).css('left', pointInitial);
|
||||
|
||||
// Récursivement animer le texte
|
||||
animerTexte();
|
||||
}
|
||||
|
||||
function updateTexte(){
|
||||
var message = messages[indexMessages];
|
||||
|
||||
$(messageDiv).text(message);
|
||||
|
||||
augmenterIndex();
|
||||
}
|
||||
|
||||
function augmenterIndex() {
|
||||
if (indexMessages >= messages.length - 1) {
|
||||
indexMessages = 0;
|
||||
} else {
|
||||
indexMessages ++;
|
||||
}
|
||||
}
|
||||
|
||||
function initialiserMessages(){
|
||||
fontSize = $(messageDiv).css('fontSize');
|
||||
fontSizeLength = fontSize.length;
|
||||
|
||||
// TODO Importer messages
|
||||
messages = ['hello, world!'];
|
||||
|
||||
|
||||
// TODO pointDestination = -1 * longueurMessage
|
||||
//pointDestination = messages[0].width * fontSize.substring(fontSize.length-2);
|
||||
pointDestination = messages[indexMessages].width;
|
||||
}
|
||||
|
||||
// EXEC
|
||||
$(function(){
|
||||
//initialiserMessages();
|
||||
resetTexte();
|
||||
});
|
Loading…
Add table
Add a link
Reference in a new issue