/* vim: set ts=4 sw=4 et : */
require_once __DIR__ . "/auto_common.php";
(function () use ($r, $id, $title, $subtitle, &$num_rows, $top, $bottom, $alwaysbottom, $off, $order, $checkboxes, $links, $rowcallback, $norefresh, $editable, $types, $entrytable, $callback, $callback_heading, $json, $jsoncallback, $pii, $nospinner, $ajax, $sql, $colsql, $makeseq, $thdef, $nochosen, $idcell, $idcellreal, $nofilter, $getthdef, $insert, $noautolinks, $nodefaultlinks) {
if (!isset($id) || $id == "") {
$pwsql = stristr($sql, ' WHERE ', true);
if ($pwsql === false || $pwsql === '') {
$pwsql = $sql;
}
$id = substr(sha1($pwsql), 0, 16);
}
if (!isset($order) || $order == "")
$order = '[[1, "desc"]]';
if (!isset($colsql) || $colsql == "")
$colsql = $sql . " LIMIT 1";
if (!isset($nospinner))
$nospinner = false;
if (!isset($ajax))
$ajax = false;
if (!isset($thdef))
$thdef = false;
if (!isset($nochosen))
$nochosen = false;
if (!isset($nofilter))
$nofilter = false;
if (!$nospinner)
include_once __DIR__ . '/loading_modal.php';
if (!isset($editable))
$editable = [];
if (!isset($types))
$types = [];
if (!isset($json))
$json = [];
if (!isset($off))
$off = false;
if (!isset($makeseq))
$makeseq = false;
if (!isset($alwaysbottom))
$alwaysbottom = false;
$pii = getPii($pii);
if (!isset($nodefaultlinks))
$nodefaultlinks = false;
if (!$nodefaultlinks)
$links = getLinks($links);
if (!isset($idcell))
$idcell = false;
if (!isset($idcellreal))
$idcellreal = $idcell;
if (isset($getthdef) && $getthdef) {
global $mysqli;
$stmt = $mysqli->prepare($sql);
$stmt->execute();
$r = $stmt->get_result();
}
if (!isset($noautolinks))
$noautolinks = false;
if (!isset($insert))
$insert = pathinfo(basename(__FILE__), PATHINFO_FILENAME);
?>
if (isset($title)) {
?>
=$title?>
id="=$id?>Table_off" class="fas fa-toggle-on">
id="=$id?>Table_on" class="fas fa-toggle-off">
}
?>
id="=$id?>Table">
if (isset($subtitle)) { ?>
=$subtitle?>
} ?>
Keine Ergebnisse!
if (isset($top)) echo $top;
if ((!($ajax && $thdef)) && ($r->num_rows < 1)) {
?>
Keine Ergebnisse!
if ($alwaysbottom) {
?>
=$bottom?>
}
?>
} else {
if (!$norefresh) {
?>
Spalten neu geordnet. Für die Filterfunktionen muss anschließend die
if ($checkboxes) { ?>
} ?>
include __DIR__ . '/autotable_fontsettings.php';
include __DIR__ . '/autotable_explain.php';
?>
}
?>
if ($checkboxes || $ajax) {
?>
|
}
if ($makeseq) {
?>
# |
}
$autotable_i = 0;
if (!$thdef) {
$l = $r->fetch_object();
foreach ($l as $k => $v) {
$bk = str_replace(' ', '
', $k);
if (substr($k, 0, 1) === '%') {
$k = substr($k, 1);
}
if ($editable[$k]) {
?>
=$bk?>✎ |
} else {
?>
=$bk?> if (in_array($k, $editable)) { ?>✎ } ?> |
}
}
if ($callback) {
?>
=$callback_heading?> |
}
} else {
foreach ($thdef as $k) {
$bk = str_replace(' ', '
', $k);
if ($editable[$k]) {
?>
=$bk?>✎ |
} else {
?>
=$bk?> if (in_array($k, $editable)) { ?>✎ } ?> |
}
}
}
?>
if (!$ajax) { ?>
do {
$autotable_i++;
if (!$nospinner && $autotable_i % 100 == 0) {
?>
}
if (!$nospinner && $autotable_i % 100 == 0 && $autotable_i + 350 >= $r->num_rows) {
?>
}
if (!$nospinner && $autotable_i == $r->num_rows) {
?>
}
if ($nospinner) {
?>
}
$dataid = "";
if ($idcell) $dataid = $l->$idcell;
else if (isset($l->ID)) $dataid = $l->ID;
else if (isset($l->uid)) $dataid = $l->uid;
else if (isset($l->UID)) $dataid = $l->UID;
else if (isset($l->id)) $dataid = $l->id;
else if (isset($l->PersID)) $dataid = $l->PersID;
else if (isset($l->StipID)) $dataid = $l->StipID;
else if (isset($l->EventID)) $dataid = $l->EventID;
else if (isset($l->FoerdID)) $dataid = $l->FoerdID;
else if (isset($l->OrgaID)) $dataid = $l->OrgaID;
else if (isset($l->NotizID)) $dataid = $l->NotizID;
else if (isset($l->EmailID)) $dataid = $l->EmailID;
else if (isset($l->AppNewsID)) $dataid = $l->AppNewsID;
else if (isset($l->AppSettingID)) $dataid = $l->AppSettingID;
else if (isset($l->AppProfileID)) $dataid = $l->AppProfileID;
else if (isset($l->ETID)) $dataid = $l->ETID;
if ($makeseq) $dataid = $autotable_i;
$persid = "";
if (isset($l->PersID)) $persid = $l->PersID;
$stipid = "";
if (isset($l->StipID)) $stipid = $l->StipID;
$orgaid = "";
if (isset($l->OrgaID)) $orgaid = $l->OrgaID;
$foerdid = "";
if (isset($l->FoerdID)) $foerdid = $l->FoerdID;
$eventid = "";
if (isset($l->EventID)) $eventid = $l->EventID;
?>
if ($checkboxes) {
?>
|
}
if ($makeseq) {
?>
=$autotable_i?> |
}
foreach ($l as $k => $v) {
if (substr($k, 0, 1) === '%') {
$v = utf8_encode(urldecode($v));
$k = substr($k, 1);
}
if (isset($links[$k])) {
?>
if ($v != 0 || $v != '') { ?>=$v?> } ?> |
} else {
?>
" data-n=" if ($editable && $editable[$k]) { echo $editable[$k]; } else { echo $k; } ?>">
if (in_array($k, $editable) || $editable[$k]) {
if (!isset($types[$k])) {
?>
=$v?>
} else if ($types[$k] == 'date') {
?>
=$v?>
} else if ($types[$k] == 'checkbox') {
?>
>=$v?>
} else if ($types[$k] == 'checkboxinverse') {
?>
>=$v?>
} else if (is_array($types[$k])) {
?>
}
} else if (in_array($k, $json)) {
$jsoncallback($k, json_decode($v));
} else {
?>
=$v?>
}
?>
|
}
}
if ($callback) {
?>
$callback($dataid);
?>
|
}
?>
} while (($l = $r->fetch_object()))
?>
} else { /* !$ajax */ ?>
} ?>
if (isset($bottom)) echo $bottom;
?>
}
$num_rows = -1;
if (isset($r) && isset($r->num_rows))
$num_rows = $r->num_rows;
if (isset($stmt))
$stmt->reset();
})();
?>