0 votes
in SoSci Survey (dt.) by s271156 (110 points)
edited by SoSci Survey

Hallo,

ich möchte gerne die Funktion "Datum (mit Kalender zum Auswählen)" nutzen, um Proband*innen individuell einen Start-Tag für Alltagsbefragungen festlegen zu lassen, damit die möglichen Daten übersichtlich dargestellt sind.

Mein Code (s.u.) funktioniert allerdings nur, wenn ich mögliche Daten als Dropdown- oder Auswahlfrage anbiete, da dann jede Option eine eigene Kennung hat (bspw. 1 = 10.03.24).

$times = array(
  1 => strtotime('2024-03-10 17:15:00'),
  2 => strtotime('2024-03-11 10:00:00'),
  3 => strtotime('2024-03-12 10:00:00'),
  4 => strtotime('2024-03-13 10:00:00'),
  5 => strtotime('2024-03-14 10:00:00'),
  6 => strtotime('2024-03-15 10:00:00'),
);
$start = $times[value('IN09')];

if(value('IN09') > 0){   
mailSchedule(false, 2, $start);  
mailSchedule(false, 13, ($start + 150), [
    'status' => 'no-response'
]); 
mailSchedule(false, 3, ($start + 300));
mailSchedule(false, 14, ($start + 450), [
    'status' => 'no-response'
]); 
usw.

Wie kann ich die Daten aus dem Kalender in den Code einbinden, um die Serienmails dann ab dem Start-Tag zu versenden, bzw. ist es überhaupt möglich?

Und wenn ja noch direkt eine zweite Frage dazu: Ist es möglich als frühestmögliches Datum immer automatisch den Folgetag einzustellen?

Schonmal vielen Dank und beste Grüße!

1 Answer

0 votes
by SoSci Survey (327k points)

ich möchte gerne die Funktion "Datum (mit Kalender zum Auswählen)" nutzen, um Proband*innen individuell einen Start-Tag für Alltagsbefragungen festlegen zu lassen, damit die möglichen Daten übersichtlich dargestellt sind.

Können die Befragten das Datum mehr oder weniger beliebig wählen oder sind nur die vorab von Ihnen definierten Tage möglich? Ich glaube nämlich, dass das Kalender-Element eine Beschränkung der Auswahl auf bestimmte Tage nicht erlaubt.

Wenn es um bestimmte Tage geht, wäre es vermutlich einfacher, einen Kalender für die frageliche Woche als Vektorgrafik zu bauen, und diesen über die SVG-Auswahl anzuzeigen.

Wie kann ich die Daten aus dem Kalender in den Code einbinden, um die Serienmails dann ab dem Start-Tag zu versenden, bzw. ist es überhaupt möglich?

Falls es ein beliebiges Datum sein kann:

$datum = strtotime(value('XY01_01'));
$start = strtotime('10:00:00', $datum);

Ist es möglich als frühestmögliches Datum immer automatisch den Folgetag einzustellen?

Das müsste über preset() ober der Frage funktionieren.

$nextDay = date('Y-m-d', strtotime('tomorrow'));
preset('XY01_01', $nextDay);
by SoSci Survey (327k points)
Wenn ich den Pretest-Link aufrufe, sieht es gut aus: Alles vor dem 15.3. ist da ausgegraut.
by s271156 (110 points)
Bei mir irgendwie nicht, bzw. nicht immer. Es hat gerade ein paar Mal funktioniert, als ich in Sosci auf "Fragebogen ab der aktuellen Seite testen" geklickt habe, aber dann auch wieder nicht.
Im Pretest ist es bei mir auch nicht ausgegraut.
by SoSci Survey (327k points)
Dann scheint es eine Konkurrenzsituation zwischen dem automatisch eingefügten Script und Ihrer Ergänzung zu geben. Schalten sie für das Textfeld den Kalender bitte mal aus (nur noch "Datum" als Format), und fügen Sie auf der Seite noch folgenden PHP-Code ein:

library('jQuery');
library('jQuery-ui');

Für den Kalender sorgt Ihr JavaScript von oben. Die Zeile

$("#IN07_01").datepicker("destroy");

müssten Sie allerdings noch entfernen.
by s271156 (110 points)
Das funktioniert, vielen Dank!!!

Gibt es allerdings noch eine Möglichkeit den Kalender wieder auf ein deutsches Format umzustellen? Jetzt sind die Tage von Sunday-Saturday (statt Montag-Sonntag) angeordnet und die Monate sind auch in englisch.
by SoSci Survey (327k points)
Na klar :) Dafür brauchen Sie noch mehr PHP-Code:

library('jQuery-ui-datepicker-i18n');

Die zugehörige Zeile im JavaScript-Code haben Sie bereits:

$.extend(IN07_01settings, $.datepicker.regional["de"]);

Willkommen im Online-Support von SoSci Survey.

Hier bekommen Sie schnelle und fundierte Antworten von anderen Projektleitern und direkt von SoSci Survey.

→ Eine Frage stellen


Welcome to the SoSci Survey online support.

Simply ask a question to quickly get answers from other professionals, and directly from SoSci Survey.

→ Ask a Question

...