summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorthrowaway <developerthrowaway@protonmail.com>2024-04-24 16:11:49 -0700
committerthrowaway <developerthrowaway@protonmail.com>2024-04-24 16:11:49 -0700
commit3a220d38b56af1286fe978f55c947eb514cadc1a (patch)
tree8d11990b79f304126367caf4f3dd5a380befb8d7
parent81dc93802c32aa6f593a12b3f2efbe38dc9e31f7 (diff)
fix treatment of config values with default of null and add php sodium
-rw-r--r--Dockerfile2
-rwxr-xr-xdocker/docker-entrypoint.sh2
-rw-r--r--docker/gen_config.php20
3 files changed, 13 insertions, 11 deletions
diff --git a/Dockerfile b/Dockerfile
index bb0e98b..8ee52cd 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -2,7 +2,7 @@ FROM alpine:latest
WORKDIR /var/www/html/4get
RUN apk update && apk upgrade
-RUN apk add php apache2-ssl php83-fileinfo php83-openssl php83-iconv php83-common php83-dom php83-curl curl php83-pecl-apcu php83-apache2 imagemagick php83-pecl-imagick php-mbstring imagemagick-webp imagemagick-jpeg
+RUN apk add php apache2-ssl php83-fileinfo php83-openssl php83-iconv php83-common php83-dom php83-sodium php83-curl curl php83-pecl-apcu php83-apache2 imagemagick php83-pecl-imagick php-mbstring imagemagick-webp imagemagick-jpeg
COPY ./docker/apache/ /etc/apache2/
COPY . .
diff --git a/docker/docker-entrypoint.sh b/docker/docker-entrypoint.sh
index bdb706a..66d4067 100755
--- a/docker/docker-entrypoint.sh
+++ b/docker/docker-entrypoint.sh
@@ -9,7 +9,7 @@ FOURGET_PROTO="${FOURGET_PROTO#\"}"
FOURGET_PROTO=`echo $FOURGET_PROTO | awk '{print tolower($0)}'`
-if [ "$FOURGET_PROTO" = "https" ] || [ -f /etc/4get/certs/fullchain.pem ] || [ -f /etc/4get/certs/privkey.pem ]; then
+if [ "$FOURGET_PROTO" = "https" ]; then
echo "Using https configuration"
cp /etc/apache2/https.conf /etc/apache2/httpd.conf
else
diff --git a/docker/gen_config.php b/docker/gen_config.php
index cc43916..ceea117 100644
--- a/docker/gen_config.php
+++ b/docker/gen_config.php
@@ -61,16 +61,18 @@ $output = "<?php\n // This file was generated by docker/gen_config.php\n";
$output = $output . "class config {\n";
foreach(($merged_config) as $key => $val){
if(!in_array($key, $special_keys)) {
-
+ $stored_value = $val;
// conversion between arrays and comma separated env value.
- // If original type of field is array and there is a type mismatch such as when a comma separted string is passed,
- // then split on comma if string and not numeric
- if(gettype($from_config[$key]) != gettype($val) && !is_numeric($val)) {
- $data = gettype($val) === "string" ? explode(",", $val) : $val;
- $output = $output . "\tconst " . $key . " = " . type_to_string($data) . ";\n";
- } else {
- $output = $output . "\tconst " . $key . " = " . type_to_string($val) . ";\n";
- }
+ // Handle case when original type of field is array and there is a type mismatch when a comma separted string is passed,
+ // then split on comma if string (and not numeric, boolean, null, etc)
+ //
+ // except in the case where the inital value in default config is null. Assuming null
+ // in default config will be never be assigned an array
+
+ if(gettype($from_config[$key]) != gettype($val) && !is_numeric($val) && !is_null($from_config[$key])) {
+ $stored_value = explode(",", $val);
+ }
+ $output = $output . "\tconst " . $key . " = " . type_to_string($stored_value) . ";\n";
continue;
}