Barksalot: KW als Spalte einfügen

Beitrag lesen

Hallo Regina,

/**
 * Formatiere das HTML Fragment für einen Kalendertag
 * 
 * @param  \mysqli $mysqli        mysqli-Objekt für Datenbeschaffung
 * @param  string  $date          Anfragedatum, yyyy-mm-tt
 * @param  bool    $aktuellerTag  True um Tag als aktuelles Datum zu formatieren
 * @return string
 */
function formatiere_tag($thisMonth, $day_count, $day, $today, $mysqli, $teile25)
{
    if ($day < 1 || $day > $day_count) 
    {
        return "<td class='emptyDay'></td>";
    }

    $date = $thisMonth . sprintf('-%02d', $day);

    // Daten beschaffen
    $datumTermine = kalender_termine($mysqli, $date, $teile25, 3);
    $anzTermineGesamt = count_alle_kalender_termine($mysqli, $date, $teile25);
    
    $dayClasses = ($date == $today ? "today " : "");
    $dayHtml = "<td class='$dayClasses calendarDay'>"
             . formatiere_tag_header($date, $day, $anzTermineGesamt);
    
    foreach ($datumTermine as $termin)
    {
        $dayHtml .= formatiere_termin($termin);
    }

    return $dayHtml . '</td>';
}

function Count_Alle_Kalender_Termine($mysqli, $datum, $teile25) {
// Bis eine bessere Abfrage bereitstelt, auf die alte Technik der unlimitierten
// Abfrage zurückfallen
   $termine = Kalender_Termine($mysqli, $datum, $teile25);
   return count($termine);
}

function formatiere_termin($termin) {
    // Formatiere_Datenblatt_Link wählt k/f-Bezeichnung automatisch aus.
    // Formatiere_JobNr_und_Zeit gibt nur ein <span> aus wenn die JobNr 
    //     gefüllt oder ein Zeitraum angefordert ist. Sonst kommt '' zurück.
    if ($termin["kt_datum"] == $termin["k_datum_von"])
    {
        if ($termin["k_ganztags"] == "0")
        {
            $terminHoehe = '';
            $terminInhalt = formatiere_datenblatt_link($termin) . formatiere_jobNr_und_zeit($termin, true);
        }
        else
        {
            $terminHoehe = 'min-height: 37px;';
            $terminInhalt = formatiere_datenblatt_link($termin) . formatiere_jobNr_und_zeit($termin, false);
        }
    }
    else
    {
        $terminHoehe = 'height: 37px;';
        // Wochentag des Termindatums prüfen
        $datum = getdate(strtotime($termin["kt_datum"]));
        if ($datum['wday'] == 1)    // Montag
        {
            $terminInhalt = formatiere_datenblatt_link($termin) . formatiere_jobNr_und_zeit($termin, false);
        }
        else
        {
            $terminInhalt = '';
        }
    }
    return '<div style="background:'.$termin["ka_farbe"].'; margin-bottom:5px; padding-left:8px;'.$terminHoehe.'">' 
         . $terminInhalt 
         . '</div>';
}

function Formatiere_Datenblatt_Link($termin)
{
    $text  = ($termin["k_auto"] == "") ? $termin["k_bezeichnung"] : $termin["f_bezeichnung"];
    $url   = '/kalender-datenblatt.php?code='.$termin["k_code"];
    $farbe = 'color:'.$termin["kf_color"];
            
    return '<a href="'.$url.'" style="'.$farbe.'">'.shortText($text, 15).'</a>';
    //return '<span style="color:'.$termin["kf_color"].'"><a href="'.$url.'" style="'.$farbe.'">'.shortText($text, 15).'</a></span>';
}

/**
 * Formatiere JobNr und Zeitraum eines Termineintrags.
 * 
 * Ist die JobNr leer und kein Zeitraum gefordert, wird ein Leerstring zurückgegeben.
 * 
 * Ist die JobNr bestückt und ein Zeitraum gefordert, werden beide durch " - " getrennt.
 * 
 * Das Ergebnis wird in einen span mit style-Attribut eingehüllt, das die Farbe gemäß
 * Datenbank setzt. TODO: Unnötige Styles ins CSS verlegen!
 * 
 * @param  array $termin       Terminzeile aus dem SQL Ergebnis
 * @param  bool  $mitZeitraum  true übergeben um auch den Zeitraum auszugeben
 * 
 * @return string              HTML-Text mit span Element, das die Werte enthält
 */
function Formatiere_JobNr_und_Zeit($termin, $mitZeitraum)
{
    $parts = [];
    if ($termin['k_jobNr'] != '')
    {
        $parts[] = $termin['k_jobNr'];
    }
    if ($mitZeitraum)
    {
        $parts[] = $termin['k_von'].' bis '.$termin['k_bis'].' Uhr';
    }
    if (count($parts) == 0)
    {
        return '';
    }
    return '<span style="color:'.$termin["kf_color"].'; font-size:10px; display: block; padding-bottom: 2px;">'
           . implode(' - ', $parts)
           . '</span>';
}

Bis bald!
Bernd

0 117

KW als Spalte einfügen

Barksalot
  • php
  1. 1
    Regina Schaukrug
    1. 0
      Barksalot
      1. 0
        Regina Schaukrug
        1. 0
          Barksalot
          1. 1
            Regina Schaukrug
            1. 0
              Barksalot
              1. 1
                Regina Schaukrug
                1. 0
                  Barksalot
              2. 0
                Rolf B
                • php
                • programmiertechnik
                1. 0
                  Barksalot
                  1. 0
                    Rolf B
                    1. 0
                      beatovich
                2. 0
                  Barksalot
                  1. 0
                    Rolf B
                    1. 0
                      Barksalot
                      1. 0
                        Rolf B
                      2. 1
                        Rolf B
                        1. 0
                          Barksalot
                      3. 0

                        Hier mal meine Vorgehensweise

                        Regina Schaukrug
                        1. 0

                          (Fortsetzung)

                          Regina Schaukrug
                        2. 0

                          2. Fortsetzung: Termine

                          Regina Schaukrug
                          1. 0
                            Barksalot
                            1. 0
                              Regina Schaukrug
                              1. 0
                                Barksalot
                                1. 0
                                  Regina Schaukrug
                                  1. 0
                                    Barksalot
                                    1. 0
                                      Regina Schaukrug
                                      1. 0
                                        Barksalot
                                        1. 0
                                          Regina Schaukrug
                                    2. 0
                                      Rolf B
                              2. 0
                                beatovich
                                1. 0
                                  Regina Schaukrug
                                  1. 0
                                    beatovich
                              3. 0
                                Regina Schaukrug
                              4. 0
                                Rolf B
                  2. 2
                    Rolf B
                  3. 2
                    Rolf B
                    1. 0
                      MudGuard
                      1. 0
                        Rolf B
                        1. 0
                          dedlfix
                      2. 0
                        Regina Schaukrug
                    2. 0
                      Barksalot
                      1. 0
                        Regina Schaukrug
                        1. 0
                          Barksalot
                          1. 0
                            Regina Schaukrug
                            1. 0
                              Barksalot
                      2. 0
                        Rolf B
                        1. 0
                          Barksalot
                          1. 0
                            Rolf B
                            1. 0
                              Barksalot
                              1. 0
                                Regina Schaukrug
                                1. 0
                                  Barksalot
                                  1. 0
                                    Regina Schaukrug
                                    1. 0
                                      Barksalot
                                      1. 0
                                        Regina Schaukrug
                                        1. 0
                                          Barksalot
                                          1. 0
                                            Regina Schaukrug
                                            1. 0
                                              Barksalot
                                              1. 0
                                                Regina Schaukrug
                                                1. 0
                                                  Barksalot
                                                  1. 0
                                                    Regina Schaukrug
                                                    1. 0
                                                      Barksalot
                                                      1. 0
                                                        Regina Schaukrug
                                                        1. 0
                                                          Barksalot
                                                          1. 0
                                                            Regina Schaukrug
                                                            1. 0
                                                              Barksalot
                                                              1. 0

                                                                Anmerkung zu $mysqli: KW als Spalte einfügen

                                                                Barksalot
                                                                1. 0
                                                                  Regina Schaukrug
                                                                  1. 0
                                                                    Barksalot
                                                                    1. 0
                                                                      Regina Schaukrug
                                                                      1. 0
                                                                        Barksalot
                                                                        1. 0
                                                                          Rolf B
                                                                        2. 0
                                                                          Regina Schaukrug
                                                                          1. 0
                                                                            Barksalot
                                                                            1. 0
                                                                              Regina Schaukrug
                                                                              1. 0
                                                                                Barksalot
                                                                                1. 0
                                                                                  Regina Schaukrug
                                                                                  1. 0
                                                                                    Barksalot
                                                                                2. 0
                                                                                  Barksalot
                                                                                  1. 0
                                                                                    Rolf B
                                                                                    1. 0
                                                                                      Barksalot
                                                                                      1. 1
                                                                                        Regina Schaukrug
                                                                                        1. 0
                                                                                          Barksalot
                                                                                          1. 0
                                                                                            Rolf B
                                                                                      2. 0
                                                                                        Rolf B
                                                                                        1. 0
                                                                                          Barksalot
                                                                                  2. 0
                                                                                    Regina Schaukrug
                                                                                    1. 0
                                                                                      Barksalot
                                                                                      1. 0
                                                                                        Regina Schaukrug
                                                                                        1. 0
                                                                                          Barksalot
                                                                                          1. 0
                                                                                            Regina Schaukrug
                                                                                            1. 0
                                                                                              Barksalot
                                                                                              1. 0
                                                                                                Rolf B
                                                                                              2. 0
                                                                                                Regina Schaukrug
                                                                2. 0
                                                                  Rolf B
                                                                  1. 0
                                                                    Barksalot
                                                                    1. 0
                                                                      Rolf B
                3. 0
                  pl
                  • perl
                  • programmiertechnik
                  1. 0
                    Rolf B
                    1. 0
                      pl
                    2. 0
                      pl
          2. 0

            Einträge anordnen

            Barksalot
            1. 0
              pl
              1. 0
                Barksalot
                1. 0
                  Rolf B
                  1. 0
                    pl
  2. 1

    Danke!

    Barksalot
    1. 1
      Rolf B
      1. 0
        Barksalot
        1. 0
          Rolf B
          1. 0

            Grundsatzdiskussion bind ./. fetch_assoc und prepare ./. mysqli_real_escape_string

            Regina Schaukrug
            1. 0
              Rolf B
              1. 0
                Barksalot
                1. 0
                  Regina Schaukrug
                  1. 0
                    Rolf B
                    1. 0

                      Humor...

                      Regina Schaukrug
                      • menschelei