summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSimon Rettberg2023-07-17 10:01:46 +0200
committerSimon Rettberg2023-07-17 10:01:46 +0200
commit6903513a23dd84839b0a5f5fd55645e137ea2a32 (patch)
treeb1f7ad5eb3093b035132b55ed64f13c237ce189f
parent[eventlog] Add help text to rule regarding example values (diff)
downloadslx-admin-6903513a23dd84839b0a5f5fd55645e137ea2a32.tar.gz
slx-admin-6903513a23dd84839b0a5f5fd55645e137ea2a32.tar.xz
slx-admin-6903513a23dd84839b0a5f5fd55645e137ea2a32.zip
[minilinux] Make title db columns longer
-rw-r--r--modules-available/minilinux/inc/minilinux.inc.php4
-rw-r--r--modules-available/minilinux/install.inc.php17
-rw-r--r--modules-available/permissionmanager/install.inc.php2
3 files changed, 15 insertions, 8 deletions
diff --git a/modules-available/minilinux/inc/minilinux.inc.php b/modules-available/minilinux/inc/minilinux.inc.php
index 09daf6c0..47d14a86 100644
--- a/modules-available/minilinux/inc/minilinux.inc.php
+++ b/modules-available/minilinux/inc/minilinux.inc.php
@@ -90,7 +90,7 @@ class MiniLinux
ON DUPLICATE KEY UPDATE title = VALUES(title), color = VALUES(color), description = VALUES(description)', [
'branchid' => $branchid,
'sourceid' => $sourceid,
- 'title' => $title,
+ 'title' => mb_substr($title, 0, 150),
'color' => $color,
'description' => $description,
]);
@@ -158,7 +158,7 @@ class MiniLinux
dateline = VALUES(dateline), data = VALUES(data), orphan = 0', [
'versionid' => $versionid,
'branchid' => $branchid,
- 'title' => $title,
+ 'title' => mb_substr($title, 0, 150),
'description' => $description,
'dateline' => $dateline,
'data' => $data,
diff --git a/modules-available/minilinux/install.inc.php b/modules-available/minilinux/install.inc.php
index 12b5c69c..7ef82d74 100644
--- a/modules-available/minilinux/install.inc.php
+++ b/modules-available/minilinux/install.inc.php
@@ -2,7 +2,7 @@
$result[] = tableCreate('minilinux_source', "
`sourceid` varchar(8) CHARACTER SET ascii NOT NULL,
- `title` varchar(100) NOT NULL,
+ `title` varchar(150) NOT NULL,
`url` varchar(200) NOT NULL,
`lastupdate` int(10) UNSIGNED NOT NULL DEFAULT '0',
`taskid` char(36) CHARACTER SET ascii DEFAULT NULL,
@@ -13,7 +13,7 @@ $result[] = tableCreate('minilinux_source', "
$result[] = tableCreate('minilinux_branch', "
`sourceid` varchar(8) CHARACTER SET ascii DEFAULT NULL,
`branchid` varchar(40) CHARACTER SET ascii NOT NULL,
- `title` varchar(100) NOT NULL,
+ `title` varchar(150) NOT NULL,
`color` varchar(7) NOT NULL,
`description` blob NOT NULL,
PRIMARY KEY (`branchid`),
@@ -22,7 +22,7 @@ $result[] = tableCreate('minilinux_branch', "
$result[] = tableCreate('minilinux_version', "
`branchid` varchar(40) CHARACTER SET ascii NOT NULL,
`versionid` varchar(72) CHARACTER SET ascii NOT NULL,
- `title` varchar(100) NOT NULL,
+ `title` varchar(150) NOT NULL,
`description` blob NOT NULL,
`dateline` int(10) UNSIGNED NOT NULL,
`data` blob NOT NULL,
@@ -43,7 +43,7 @@ $result[] = tableAddConstraint('minilinux_branch', 'sourceid', 'minilinux_source
// 2022-10-17: Add color to branch, description to version
if (!tableHasColumn('minilinux_branch', 'color')) {
- if (Database::exec("ALTER TABLE minilinux_branch ADD COLUMN `color` varchar(7) NOT NULL DEFAULT '' AFTER `title`") !== false) {
+ if (Database::exec("ALTER TABLE `minilinux_branch` ADD COLUMN `color` varchar(7) NOT NULL DEFAULT '' AFTER `title`") !== false) {
$result[] = UPDATE_DONE;
} else {
finalResponse(UPDATE_FAILED, Database::lastError());
@@ -51,11 +51,18 @@ if (!tableHasColumn('minilinux_branch', 'color')) {
}
if (!tableHasColumn('minilinux_version', 'description')) {
// BLOB/TEXT cannot have non-NULL default on older MariaDB
- if (Database::exec("ALTER TABLE minilinux_version ADD COLUMN `description` blob NULL DEFAULT NULL AFTER `title`") !== false) {
+ if (Database::exec("ALTER TABLE `minilinux_version` ADD COLUMN `description` blob NULL DEFAULT NULL AFTER `title`") !== false) {
$result[] = UPDATE_DONE;
} else {
finalResponse(UPDATE_FAILED, Database::lastError());
}
}
+// 2023-07-17: Make title columns larger
+foreach (['minilinux_source', 'minilinux_branch', 'minilinux_version'] as $table) {
+ if (stripos(tableColumnType($table, 'title'), 'varchar(150)') === false) {
+ Database::exec("ALTER TABLE `$table` MODIFY `title` varchar(150) NOT NULL");
+ }
+}
+
responseFromArray($result);
diff --git a/modules-available/permissionmanager/install.inc.php b/modules-available/permissionmanager/install.inc.php
index 40b153ad..ae6c9b03 100644
--- a/modules-available/permissionmanager/install.inc.php
+++ b/modules-available/permissionmanager/install.inc.php
@@ -110,7 +110,7 @@ if (!tableHasColumn('role', 'builtin')) {
}
// 2022-07-06 permissionid too long for older mariadb versions
-if (tableColumnType('role_x_permission', 'permissionid') === 'varchar(200)') {
+if (stripos(tableColumnType('role_x_permission', 'permissionid'), 'varchar(200)') !== false) {
$alter = Database::exec("ALTER TABLE role_x_permission MODIFY permissionid varchar(100) NOT NULL");
if ($alter === false)
finalResponse(UPDATE_FAILED, 'Cannot shorten permissionid to 100: ' . Database::lastError());