Erlaube mir auch mal ein wenig in der Code-Kiste zu kramen und ein paar Snippets Online zu stellen
Da ich aktuell im Callcenter-Bereich als Programmierer tätig bin,
anbei ein paar Funktionen aus dem "täglichen Leben" - ich hoffe
gut genug kommentiert:
Vorgabe / Problemstellung:
User darf nur in einem vorgegebenem Rahmen ein Datum und eine
Uhrzeit für eine Wiedervorlage angeben, um sicherzustellen, dass der
Kunde erneut innerhalb der Geschäftszeiten kontaktiert werden kann
(Quotenfänger legen gerne mal eine WV außerhalb der Zeiten ab,
um dem "sicheren Negativ-Kontakt" zu entgehen
)
| Php: |
<?php
/**
* Funktion die das Array für die Wiedervorlage-Tage befüllt
* Der Parameter $days gibt an, wie weit die WV in die Zukunft
* gelegt werden darf.
*
* @param integer $days: Heute + $days = Max. WV-Datum - Default: 14 Tage
* @param boolean $sundays: Sollen auch Sonntage zur Auswahl stehen - Default: false
*/
function getScheduleDates($days = 14, $sundays = false)
{
// Array für die WV-Daten deklarieren
$schedule_dates = array();
// Array für die deutschen Tagesnamen-Abkürzungen deklarieren
$ger_days = array(0 => 'So.', 1 => 'Mo.', 2 => 'Di.', 3 => 'Mi.', 4 => 'Do.', 5 => 'Fr.', 6 => 'Sa.');
// Aktuelle Timestamp festhalten
// Ein Tag = 86400 Sekunden;
$one_day = 86400;
for($i = 0; $i <= $days; $i++)
{
/**
* Den Numerischen Wert des gewünschten Tages ermitteln
* 0 = Sonntag
* 1 = Montag
* 2 = Dienstag
* 3 = Mittwoch
* 4 = Donnerstag
* 5 = Freitag
* 6 = Samstag
*/
$numeric_date = date('w', $timestamp);
// Wiedervorlagedatum für die Anzeige
$sched_day = date('d.m.Y', $timestamp) . ' (' . $ger_days[$numeric_date] . ') ';
// Wiedervorlagedatum zum speichern
$sched_day_db = date('Y-m-d', $timestamp);
// Prüfen ob der gewünschte Tag ein Sonntag ist
if($numeric_date == 0)
{
// Prüfen ob Sonntage erlaubt sind
if($sundays == true)
{
$schedule_dates[$sched_day_db] = $sched_day;
}
}
else
{
$schedule_dates[$sched_day_db] = $sched_day;
}
// Timestamp erhöhen
$timestamp = $timestamp + $one_day;
} // ENDE: for($i = 0; $i <= $days; $i++)
return $schedule_dates;
} // ENDE: function getScheduleDates($days = 14, $sundays = false)
?>
|
| Php: |
<?php
/**
* Funktion die das Array für die Wiedervorlage-Uhrzeiten befüllt
* Der Parameter $start_time gibt an, um wieviel Uhr die früheste,
* $end_time wann die späteste Wiedervorlage gelegt werden darf.
*
* @param integer $start_time: früheste WV-Zeit - Default: 6 - Bsp.: 06:00:00
* @param integer $end_time: späteste WV-Zeit - Default 19 - Bsp; 19:45:00
*/
function getScheduleTimes($start_time = 6, $end_time = 19)
{
// Array deklarieren
$schedule_times = array();
for($i = $start_time; $i <= $end_time; $i++)
{
if($i <= 9)
{
$i = '0' . $i;
}
$schedule_times[] = $i . ':00:00';
$schedule_times[] = $i . ':15:00';
$schedule_times[] = $i . ':30:00';
$schedule_times[] = $i . ':45:00';
} // ENDE: for($i = $start_time; $i <= $end_time; $i++)
return $schedule_times;
} // ENDE: function getScheduleTimes($start_time = 6, $end_time = 19)
?>
|