ich brauche dringend Hilfe mangels eigener Kompetenz
Ich nutze folgendes AddOn zum zeitschalten von einzelnen Slices:
Slice Publish Date
Ein Superteil, funktioniert tadellos.
Ich habe jetzt aber die Aufgabe, diesem AddOn neben dem Datum noch die Uhrzeit mitzugeben, sodass ich nicht nur tageweise zeitschalten kann, sondern stündlich bzw. sogar minütlich...
Dazu habe ich im Code der datei "class.rex_slice_publish_date.inc" folgenden Block modifiziert - ab ca. zeile 210 => static function validateDateToTimestamp($ddmmyyyy = "")
Code: Alles auswählen
$d_arr = explode('.',$ddmmyyyy);
if(count($d_arr) != 3) return 0;
$d_arr[0] = intval($d_arr[0]);
$d_arr[1] = intval($d_arr[1]);
$d_arr[2] = intval($d_arr[2]);
if(!($d_arr[0] && $d_arr[1] && $d_arr[2])) return 0;
if(!checkdate($d_arr[1],$d_arr[0],$d_arr[2])) return 0;
return strtotime("{$d_arr[0]}-{$d_arr[1]}-{$d_arr[2]}");
Code: Alles auswählen
### Split Tag / Zeit
$datum = explode('#',$ddmmyyyy);
### Tag verarbeiten
$d_arr = explode('.',$datum[0]);
if(count($d_arr) != 3) return 0;
$d_arr[0] = intval($d_arr[0]);
$d_arr[1] = intval($d_arr[1]);
$d_arr[2] = intval($d_arr[2]);
if(!($d_arr[0] && $d_arr[1] && $d_arr[2])) return 0;
if(!checkdate($d_arr[1],$d_arr[0],$d_arr[2])) return 0;
### Tag in UNIX-Form
$daytime = strtotime("{$d_arr[0]}-{$d_arr[1]}-{$d_arr[2]}");
### Zeit verarbeiten
$t_arr = explode(':',$datum[1]);
$t_arr[0] = intval($t_arr[0]) * 3600;
$t_arr[1] = intval($t_arr[1]) * 60;
### Zeit auf UNIX-Zeitstempel addieren
$time = $daytime + $t_arr[0] + $t_arr[1];
return $time;
Problem: Ein Javascript-Alert VOR der Datetime-Übergabe zeigt mir korrekt an, dass an das Addon der Wert "31.12.2015#12:00" übermittelt wird. Die verarbeitende Funktion bekommt aber bereits einen UNIX-Zeitstempel geliefert, der meine Zeitangaben ignoriert - in der Datenbank landet also auch nur der UNIX-Zeitstempel für 31.12.2015 00:00 Uhr.
Kann mir da jemand weiterhelfen, wo ich im Code noch was anpassen muss, dass er mir die Zeit mitschleift? Es ist ja nur ein kleines Skript, das kann doch nicht so schwer sein. Ich hab aber keine Ahnung wo ich mit Debuggen anfangen soll, wenn mir beim Absenden des Formulars der richtige Wert geliefert wird, beim Skript aber der falsche Wert ankommt!?
Wäre schön, wenn da jemand eine Lösung parat hat. Ich kann doch nicht der einzige sein, der Module stündlich zeitschalten will!?
Vielen Dank und
Mit freundlichen Grüßen
Stefan / dpf_dd