css
Some checks failed
Deploy Workshop-Wahlen (DEV / PROD) / deploy (push) Failing after 12s

This commit is contained in:
ProgrammGamer
2026-01-30 17:51:13 +01:00
parent 6203a74a2d
commit f216c558c3
3 changed files with 20 additions and 322 deletions

View File

@@ -8,12 +8,12 @@ function kc_install_tables() {
global $wpdb;
$prefix = $wpdb->prefix;
$charset_collate = $wpdb->get_charset_collate();
require_once(ABSPATH . 'wp-admin/includes/upgrade.php');
// Tables definitions
// --- Tabellen-Definitionen ---
$tables_sql = [];
// Wahl-Tabelle
$tables_sql[] = "CREATE TABLE {$prefix}kc_wahlen (
id bigint(20) unsigned NOT NULL AUTO_INCREMENT,
name varchar(191) NOT NULL,
@@ -26,6 +26,7 @@ function kc_install_tables() {
PRIMARY KEY (id)
) $charset_collate";
// Workshop-Tabelle
$tables_sql[] = "CREATE TABLE {$prefix}kc_workshops (
id bigint(20) unsigned NOT NULL AUTO_INCREMENT,
name varchar(191) NOT NULL,
@@ -35,6 +36,7 @@ function kc_install_tables() {
PRIMARY KEY (id)
) $charset_collate";
// Teamer-Tabelle
$tables_sql[] = "CREATE TABLE {$prefix}kc_teamer (
id bigint(20) unsigned NOT NULL AUTO_INCREMENT,
vorname varchar(191) DEFAULT NULL,
@@ -42,6 +44,7 @@ function kc_install_tables() {
PRIMARY KEY (id)
) $charset_collate";
// Teilnehmer-Tabelle
$tables_sql[] = "CREATE TABLE {$prefix}kc_teilnehmer (
id bigint(20) unsigned NOT NULL AUTO_INCREMENT,
vorname varchar(191) DEFAULT NULL,
@@ -51,10 +54,11 @@ function kc_install_tables() {
wunsch1 bigint(20) unsigned DEFAULT NULL,
wunsch2 bigint(20) unsigned DEFAULT NULL,
wunsch3 bigint(20) unsigned DEFAULT NULL,
deleted tinyint(1) NOT NULL DEFAULT 0,
deleted tinyint(1) NOT NULL DEFAULT 0,
PRIMARY KEY (id)
) $charset_collate";
// Zuordnungstabelle Wahl <-> Workshops
$tables_sql[] = "CREATE TABLE {$prefix}kc_wahl_workshops (
id bigint(20) unsigned NOT NULL AUTO_INCREMENT,
wahl_id bigint(20) unsigned NOT NULL DEFAULT 0,
@@ -63,6 +67,7 @@ function kc_install_tables() {
PRIMARY KEY (id)
) $charset_collate";
// Manuelle (Force-)Zuteilungen
$tables_sql[] = "CREATE TABLE {$prefix}kc_force_zuteilung (
id bigint(20) unsigned NOT NULL AUTO_INCREMENT,
teilnehmer_id bigint(20) unsigned NOT NULL DEFAULT 0,
@@ -73,6 +78,7 @@ function kc_install_tables() {
PRIMARY KEY (id)
) $charset_collate";
// Ergebnis-Zuteilungen
$tables_sql[] = "CREATE TABLE {$prefix}kc_zuteilung (
id bigint(20) unsigned NOT NULL AUTO_INCREMENT,
teilnehmer_id bigint(20) unsigned NOT NULL DEFAULT 0,
@@ -84,26 +90,27 @@ function kc_install_tables() {
wunsch_rang tinyint DEFAULT NULL,
PRIMARY KEY (id)
) $charset_collate";
$tables_sql[] = "CREATE TABLE {$prefix}kc_workshop_teamer (
id bigint(20) unsigned NOT NULL AUTO_INCREMENT,
workshop_id bigint(20) unsigned DEFAULT NULL,
teamer_id bigint(20) unsigned DEFAULT NULL,
PRIMARY KEY (id)
) $charset_collate";
// Zuordnung Workshop <-> Teamer
$tables_sql[] = "CREATE TABLE {$prefix}kc_workshop_teamer (
id bigint(20) unsigned NOT NULL AUTO_INCREMENT,
workshop_id bigint(20) unsigned DEFAULT NULL,
teamer_id bigint(20) unsigned DEFAULT NULL,
PRIMARY KEY (id)
) $charset_collate";
// Tabellen anlegen
foreach ($tables_sql as $sql) {
dbDelta($sql);
}
// Post-creation migration guard: ensure min_teilnehmer exists for older installs
// Migration: min_teilnehmer nachziehen, falls bei Update nötig
$col = $wpdb->get_var($wpdb->prepare("SHOW COLUMNS FROM {$prefix}kc_workshops LIKE %s", 'min_teilnehmer'));
if (empty($col)) {
// try to add the column (no-op on newer installs)
$wpdb->query("ALTER TABLE {$prefix}kc_workshops ADD COLUMN min_teilnehmer INT NOT NULL DEFAULT 0");
}
// Optionally store plugin version
// Plugin-Version speichern
add_option('kc_workshopwahl_db_version', '1.0');
}