Welcome to the LimeSurvey Community Forum

Ask the community, share ideas, and connect with other LimeSurvey users!

Calcul entre deux dates

More
1 month 5 days ago #271486 by Reynald
Bonjour,

Je souhaiterais pouvoir afficher un message d'alerte a l'issue d'un calcul entre deux dates comprenant la date du jour et une date saisie (type date).
Le résultat du calcul ne doit pas excéder 72h sinon, le message s'affiche.

J'ai essayé de traiter ce calcul dans une zone texte long avec ce script:

Code:// Récupérer la date de référence
var dateReference = $("#question{date_reference} input.datepicker").val();
 
// Récupérer la date du jour
var dateDuJour = new Date ();
 
// Convertir la date de référence en objet Date
var dateRef = new Date (dateReference);
 
// Calculer la différence en heures
var diffHeures = (dateDuJour - dateRef) / (1000 * 60 * 60);
 
// Vérifier si la différence dépasse 72 heures
if (diffHeures > 72) {
// Afficher un message d'alerte
alert("Attention : La date de référence dépasse 72 heures par rapport à la date du jour.");
}
Étape 3 : Personnaliser le message d'alerte

Mais il me renvoi ce message:
Internal error from saveFormWithAjax: no data.responseJSON found

Auriez-vous une autre idée de script ou solution plus simple?

Merci d'avance 

Please Log in to join the conversation.

More
1 month 5 days ago #271487 by Joffm
Replied by Joffm on topic Calcul entre deux dates
Bonjour,
Que doit-il se passer ?
Souhaitez-vous simplement avertir ?
Le participant doit-il être empêché de continuer ?
Ou doit-il quitter l'enquête ?

Quelques possibilités :
1: Paramètre "Date minimum "
 
2: Équation de validation de question
 
3: Bootstrap alert
 
Code:
 
{if(!is_empty(self) and (strtotime(date('Y-m-d'))-strtotime(self))/(24*3600)>3,'<div class="alert alert-danger alert-dismissible fade show" role="alert"><strong>Attention :</strong> La date de référence dépasse 72 heures par rapport à la date du jour.<button type="button" class="btn-close" data-bs-dismiss="alert" aria-label="Close"></button></div>','')}

4. Quota

Joffm

Volunteers are not paid.
Not because they are worthless, but because they are priceless

Please Log in to join the conversation.

More
1 month 4 days ago - 1 month 4 days ago #271490 by Reynald
Replied by Reynald on topic Calcul entre deux dates
Bonjour Joffm,

Merci pour ce retour.
Pour répondre aux questions:

Que doit-il se passer ? juste un message d'alerte
Souhaitez-vous simplement avertir ? Oui
Le participant doit-il être empêché de continuer ? Non
Ou doit-il quitter l'enquête ? pas d'arrêt.

Je vois que tu me proposes de choses précises, merci mais j'ai quelques questions afin de bien comprendre:

- Dans le cadre de l'étape 1, il y a deux zones dates minimum et maximum. La première qui est je pense être ma date de saisie, dois-je intégrer ton code ("3-days") dans la zone Équation de validation de question ?
- A quoi me sert la date maximum, surement pas besoin sachant que je ne saisie pas de date maximum et que dans mon cas, je me réfère a la date du jour ?

Sur l'étape 2:
- Dois-je bien créer une question équation et lui coller ton code (is_empty....) dans la zone Équation de validation de question et le contenu qui suit dans le texte de la même question ?

Merci beaucoup pour tes éclaircissements.

Cordialement
 
Last edit: 1 month 4 days ago by Reynald.

Please Log in to join the conversation.

More
1 month 4 days ago #271498 by Joffm
Replied by Joffm on topic Calcul entre deux dates
Il ne s'agissait pas de trois étapes, mais de trois options différentes.
Vous pouvez choisir celle qui vous convient le mieux.

 

Volunteers are not paid.
Not because they are worthless, but because they are priceless

Please Log in to join the conversation.

More
1 month 4 days ago #271549 by Reynald
Replied by Reynald on topic Calcul entre deux dates
Re-Bonjour Joffm

Merci pour cette information.
J'ai essayé les deux premières solutions mais sans succès, je faire à coté.

Première solution: Dans ma question date qui se nome G2Q00019 j'ai implémenté le code "-3 days" dans Équation de validation de question, rien ne se passe quelque soit la date renseigné dans le calendrier

Seconde solution: Dans ma question Date G2Q00019 et lui ai implémenté votre code:
if(!is_empty(self) and (strtotime(date('Y-m-d'))-strtotime(self))/(24*3600)<4) dans Équation de validation de question,
Seul le message "test d'alerte" s'affiche avant même avoir choisi la date dans le calendrier

Je dois passé a coté d'un truc que je n'ai pas compris, désolé

Cordialement.

Please Log in to join the conversation.

More
1 month 3 days ago #271615 by cyril.pereira
Bonjour Reynald, je cherche à faire exactement la même chose, mais je n'ai jamais réussi.

Please Log in to join the conversation.

More
1 month 3 days ago - 1 month 3 days ago #271887 by Joffm
Replied by Joffm on topic Calcul entre deux dates

date qui se nome G2Q00019 j'ai implémenté le code "-3 days" dans Équation de validation de question, rien ne se passe quelque soit la date renseigné dans le calendrier

Qui a écrit qu'il fallait saisir cette information lors de la "equation de validation de question" ?
Vous avez déjà vu une capture d'écran où cette information est saisie.
 

Volunteers are not paid.
Not because they are worthless, but because they are priceless
Last edit: 1 month 3 days ago by Joffm.

Please Log in to join the conversation.

More
1 month 3 days ago - 1 month 3 days ago #271891 by Reynald
Replied by Reynald on topic Calcul entre deux dates
Bonjour Joffm

Au temps pour moi, je l'ai positionné dans "Équation" mais cela ne change rien, désolé.

Cordialement.
Last edit: 1 month 3 days ago by Reynald.

Please Log in to join the conversation.

More
1 month 3 days ago - 1 month 3 days ago #271903 by cyril.pereira
C'est vrai que nous demandons de l'aide mais je trouve que certaines réponses ne sont pas très diplomates...
Pour ma part je cherche depuis plusieurs mois par moi-même pour n'embêter personne, j'ai épluché les guides en ligne, les questions déjà posées, j'ai même travaillé avec ChatGPT pendant trois heures hier soir parce que parfois il trouve des très bons codages. Donc on essaie toujours de ne pas être "assisté", et si on demande de l'aide sur un forum c'est que vraiment, on est dans l'impasse. Et Joffm, vous m'aviez déjà réprimandé parce que j'avais posé la même question (sur ce même problème que Reynald) sur, à la fois, le forum français et le forum anglais, et que selon vous ça n'était pas correct. Je m'en étais excusé, mais je vois que votre réponse ici n'est pas très agréable non plus... Limesurvey n'est pas très simple à utiliser donc si on n'arrive pas à appliquer vos propositions, ce n'est pas une raison pour être brusque...

L'utilisation de "Équation de validation de question" est fonctionnel dans votre solution, mais cela bloque la saisie de la date et empêche l'utilisateur de continuer si le critère temporel n'est pas respecté.
Last edit: 1 month 3 days ago by cyril.pereira.

Please Log in to join the conversation.

More
1 week 1 day ago - 1 week 1 day ago #272689 by Reynald
Replied by Reynald on topic Calcul entre deux dates
Bonjour, 

Afin d'avancer doucement sur ce sujet de calcul entre deux dates, entre la date du jour et une date choisi dans le calendrier, je souhaite formater la date choisi dans le calendrier au forma (Y,m,a). Malheureusement quand je l'affiche dans une zone équation et en essayant de trouver des subterfuges, il affiche aussi les minutes et secondes à 00:00
Comment puis-je traiter ce cas ?

Merci d'avance

Reynald
Last edit: 1 week 1 day ago by Reynald.

Please Log in to join the conversation.

More
1 week 1 day ago #272691 by Joffm
Replied by Joffm on topic Calcul entre deux dates
Pourquoi ne montrez-vous jamais ce que vous faites réellement?

Envoyez l'export lss des questions pertinentes, svp!

Volunteers are not paid.
Not because they are worthless, but because they are priceless

Please Log in to join the conversation.

More
1 week 1 day ago #272693 by Reynald
Replied by Reynald on topic Calcul entre deux dates
Re-Bonjour,

J'essaye juste d'afficher au format (Y,m,a) la date saisie dans une question date, quand j'affiche {Date} dans le texte il m'affiche aussi les minutes et secondes.
Je veux bien vous envoyer un lss mais pour une question, ca me semble beaucoup

Cordialement.

Reynald

Please Log in to join the conversation.

More
1 week 1 day ago #272698 by Joffm
Replied by Joffm on topic Calcul entre deux dates
Pour cela, procédez comme suit :
  • Copiez l'enquête
  • Supprimez tout ce qui est inutile
  • Envoyez une exportation LSS du reste

Joffm

Volunteers are not paid.
Not because they are worthless, but because they are priceless

Please Log in to join the conversation.

More
1 week 1 day ago - 1 week 1 day ago #272700 by Reynald
Replied by Reynald on topic Calcul entre deux dates
Re-Bonjour, 

Voici le lss avec les deux questions ou je cherche a faire à terme la différence entre la date du jour bien formatée et celle du calendrier qui me renvoi les minutes et secondes.

Merci d'avance

Reynald
Last edit: 1 week 1 day ago by Reynald.

Please Log in to join the conversation.

More
1 week 1 day ago #272708 by Joffm
Replied by Joffm on topic Calcul entre deux dates
Bonjour,
1. {substr(DateCalendrier,0,10)}
o
2. {date('Y-m-d',strtotime(DateCalendrier))}

 

Joffm

Volunteers are not paid.
Not because they are worthless, but because they are priceless

Please Log in to join the conversation.

Moderators: Nickkoholchtpartner

Lime-years ahead

Online-surveys for every purse and purpose