89 lines
3.2 KiB
PHP
89 lines
3.2 KiB
PHP
<?php
|
|
/* Copyright (C) 2026 Eduard Wisch <data@data-it-solution.de>
|
|
*
|
|
* Stundenzettel - Library functions
|
|
*/
|
|
|
|
/**
|
|
* Prepare array of tabs for Stundenzettel card
|
|
*
|
|
* @param Stundenzettel $object Object
|
|
* @return array Array of tabs
|
|
*/
|
|
function stundenzettel_prepare_head($object)
|
|
{
|
|
global $db, $langs, $conf, $user;
|
|
|
|
$langs->load("stundenzettel@stundenzettel");
|
|
|
|
$h = 0;
|
|
$head = array();
|
|
|
|
// Tab 1: Kundenauftrag (Link zum Auftrag) - immer am Anfang
|
|
if ($object->fk_commande > 0) {
|
|
$head[$h][0] = DOL_URL_ROOT.'/commande/card.php?id='.$object->fk_commande;
|
|
$head[$h][1] = $langs->trans("Order");
|
|
$head[$h][2] = 'order';
|
|
$h++;
|
|
}
|
|
|
|
// Tab 2: Produktliste (Link zu stundenzettel_commande.php mit Produktliste aus Auftrag)
|
|
if ($object->fk_commande > 0) {
|
|
$head[$h][0] = dol_buildpath('/stundenzettel/stundenzettel_commande.php', 1).'?id='.$object->fk_commande.'&tab=products&noredirect=1&stundenzettel_id='.$object->id;
|
|
$head[$h][1] = $langs->trans("ProductList");
|
|
$head[$h][2] = 'productlist';
|
|
$h++;
|
|
}
|
|
|
|
// Tab 3: Stundenzettel (Link zum aktiven Stundenzettel - card.php)
|
|
$nbLeistungen = 0;
|
|
if (!empty($object->leistungen)) {
|
|
$nbLeistungen = count($object->leistungen);
|
|
}
|
|
$nbProducts = 0;
|
|
if (!empty($object->products)) {
|
|
$nbProducts = count($object->products);
|
|
}
|
|
$head[$h][0] = dol_buildpath('/stundenzettel/card.php', 1).'?id='.$object->id;
|
|
$head[$h][1] = $langs->trans("Stundenzettel");
|
|
$totalItems = $nbLeistungen + $nbProducts;
|
|
if ($totalItems > 0) {
|
|
$head[$h][1] .= '<span class="badge marginleftonlyshort">'.$totalItems.'</span>';
|
|
}
|
|
$head[$h][2] = 'card';
|
|
$h++;
|
|
|
|
// Tab 4: Alle Stundenzettel (Liste aller Stundenzettel für diesen Auftrag)
|
|
if ($object->fk_commande > 0) {
|
|
// Anzahl Stundenzettel für diesen Auftrag zählen
|
|
$sql = "SELECT COUNT(*) as nb FROM ".MAIN_DB_PREFIX."stundenzettel WHERE fk_commande = ".((int)$object->fk_commande);
|
|
$resql = $db->query($sql);
|
|
$nbStundenzettel = 0;
|
|
if ($resql && ($obj = $db->fetch_object($resql))) {
|
|
$nbStundenzettel = $obj->nb;
|
|
}
|
|
$head[$h][0] = dol_buildpath('/stundenzettel/stundenzettel_commande.php', 1).'?id='.$object->fk_commande.'&tab=stundenzettel&noredirect=1&stundenzettel_id='.$object->id;
|
|
$head[$h][1] = $langs->trans("StundenzettelList");
|
|
if ($nbStundenzettel > 0) {
|
|
$head[$h][1] .= '<span class="badge marginleftonlyshort">'.$nbStundenzettel.'</span>';
|
|
}
|
|
$head[$h][2] = 'stundenzettel_list';
|
|
$h++;
|
|
}
|
|
|
|
// Tab 5: Lieferauflistung (Tracking)
|
|
if ($object->fk_commande > 0) {
|
|
$head[$h][0] = dol_buildpath('/stundenzettel/stundenzettel_commande.php', 1).'?id='.$object->fk_commande.'&tab=tracking&noredirect=1&stundenzettel_id='.$object->id;
|
|
$head[$h][1] = $langs->trans("DeliveryTracking");
|
|
$head[$h][2] = 'tracking';
|
|
$h++;
|
|
}
|
|
|
|
// Tab 6: Notizen
|
|
$head[$h][0] = dol_buildpath('/stundenzettel/card.php', 1).'?id='.$object->id.'&tab=notes';
|
|
$head[$h][1] = $langs->trans("Notes");
|
|
$head[$h][2] = 'notes';
|
|
$h++;
|
|
|
|
return $head;
|
|
}
|