Repository: opensourcepos/opensourcepos (language: php)

Issue:
Rename Thai menu (Gift Card)
Change from กิ๊บการ์ด to บัตรกำนัล



Discussion / hints:

Fix patch:
diff --git a/INSTALL.md b/INSTALL.md
index 6630a36e3..1aa704e73 100644
--- a/INSTALL.md
+++ b/INSTALL.md
@@ -1,16 +1,16 @@
 ## Server Requirements
 
-- PHP version `7.4` is supported, PHP version `≤7.3` is NOT supported. Please note that PHP needs to have the extensions `php-gd`, `php-bcmath`, `php-intl`, `php-openssl`, `php-mbstring` , `php-curl` and `php-xml` installed and enabled. PHP version `8.x` is only supported by the code that is still under development in master branch. An unstable build can be downloaded in the releases section.
-- MySQL `5.6` and `5.7` are supported, also MariaDB replacement `10.x` is supported and might offer better performance.
+- PHP version `8.1` to `8.3` are supported, PHP version `≤7.4` is NOT supported. Please note that PHP needs to have the extensions `php-json`, `php-gd`, `php-bcmath`, `php-intl`, `php-openssl`, `php-mbstring` , `php-curl` and `php-xml` installed and enabled. An unstable master build can be downloaded in the releases section.
+- MySQL `5.7` is supported, also MariaDB replacement `10.x` is supported and might offer better performance.
 - Apache `2.4` is supported. Nginx should work fine too, see [wiki page here](https://github.com/opensourcepos/opensourcepos/wiki/Local-Deployment-using-LEMP).
 - Raspberry PI based installations proved to work, see [wiki page here](<https://github.com/opensourcepos/opensourcepos/wiki/Installing-on-Raspberry-PI---Orange-PI-(Headless-OSPOS)>).
 - For Windows based installations please read [the wiki](https://github.com/opensourcepos/opensourcepos/wiki). There are closed issues about this subject, as this topic has been covered a lot.
 
 ## Local install
 
-First of all, if you're seeing the message `system folder missing` after launching your browser, or cannot find `database.php`, that most likely means you have cloned the repository and have not built the project.  To build the project from a source commit point instead of from an official release check out [Building OSPOS](BUILD.md). Otherwise, continue with the following steps.
+First of all, if you're seeing the message `system folder missing` after launching your browser, or cannot find `database.sql`, that most likely means you have cloned the repository and have not built the project.  To build the project from a source commit point instead of from an official release check out [Building OSPOS](BUILD.md). Otherwise, continue with the following steps.
 
-1. Download the a [pre-release for a specific branch](https://github.com/opensourcepos/opensourcepos/packages/1047637) or the latest stable [from GitHub here](https://github.com/opensourcepos/opensourcepos/releases). A repository clone will not work unless know how to build the project.
+1. Download the a [pre-release for a specific branch](https://github.com/opensourcepos/opensourcepos/releases) or the latest stable [from GitHub here](https://github.com/opensourcepos/opensourcepos/releases). A repository clone will not work unless know how to build the project.
 2. Create/locate a new MySQL database to install Open Source Point of Sale into.
 3. Execute the file `database/database.sql` to create the tables needed.
 4. Unzip and upload Open Source Point of Sale files to the web-server.
diff --git a/README.md b/README.md
index 1d4f203b7..755c73f60 100644
--- a/README.md
+++ b/README.md
@@ -94,11 +94,11 @@ NOTE: If you're running non-release code, please make sure you always run the la
 
 - Apache server configurations are SysAdmin issues and not strictly related to OSPOS. Please make sure you can show a "Hello world" HTML page before pointing to OSPOS public directory. Make sure `.htaccess` is correctly configured.
 
-- If the avatar pictures are not shown in items or at item save you get an error, please make sure your `public` and subdirs are assigned to the correct owner and the access permission is set to `750`.
+- If the avatar pictures are not shown in items or at item save you get an error, please make sure your `writable` and subdirs are assigned to the correct owner and the access permission is set to `750`.
 
 - If you install OSPOS in Docker behind a proxy that performs `ssloffloading`, you can enable the URL generated to be HTTPS instead of HTTP, by activating the environment variable `FORCE_HTTPS = 1`.
 
-- If you install OSPOS behind a proxy and OSPOS constantly drops your session, consider whitelisting the proxy IP address by setting `$config['proxy_ips'] = '<proxy ip>';` in the [main PHP config file](https://github.com/opensourcepos/opensourcepos/blob/master/application/config/config.php). In extreme instances, changing `$config['sess_match_ip'] = true;` to `FALSE` may also help.
+- If you install OSPOS behind a proxy and OSPOS constantly drops your session, consider whitelisting the proxy IP address by setting `public array $proxyIPs = [];` in the [main PHP config file](https://github.com/opensourcepos/opensourcepos/blob/master/app/Config/App.php).
 
 - If you have suhosin installed and face an issue with CSRF, please make sure you read [issue #1492](https://github.com/opensourcepos/opensourcepos/issues/1492).
 
diff --git a/UPGRADE.md b/UPGRADE.md
index 73d83a626..b36abf227 100644
--- a/UPGRADE.md
+++ b/UPGRADE.md
@@ -1,5 +1,8 @@
 ## How to Upgrade
 
+> [!WARNING]
+> Not updated for upcoming CodeIgniter4 release (3.4.0 and subsequent versions).
+
 1. Back up all your current database and OSPOS code.
 2. Make sure you have a copy of `application/config/config.php` and `application/config/database.php`.
 3. Remove all directories.
diff --git a/app/Views/configs/system_info.php b/app/Views/configs/system_info.php
index a91a602b7..82bf22ccb 100644
--- a/app/Views/configs/system_info.php
+++ b/app/Views/configs/system_info.php
@@ -114,7 +114,7 @@ function getBrowserNameAndVersion(string $userAgent): string
                         clearstatcache();
                     ?>
                     <br>
-                &#187; [public/uploads:]
+                &#187; [writable/uploads:]
                     <?php
                         if (is_writable($uploads))
                         {
diff --git a/docker-compose.nginx.yml b/docker-compose.nginx.yml
index f4c911e35..226152e64 100644
--- a/docker-compose.nginx.yml
+++ b/docker-compose.nginx.yml
@@ -23,8 +23,8 @@ services:
         networks:
           - app_net
         volumes:
-          - uploads:/app/public/uploads
-          - logs:/app/application/logs
+          - uploads:/app/writable/uploads
+          - logs:/app/writable/logs
         environment:
           - CI_ENVIRONMENT=${OSPOS_CI_ENV}
           - FORCE_HTTPS=true
diff --git a/docker-compose.yml b/docker-compose.yml
index ce97c66f2..cd09f5abf 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -15,8 +15,8 @@ services:
         networks:
           - app_net
         volumes:
-          - uploads:/app/public/uploads
-          - logs:/app/application/logs
+          - uploads:/app/writable/uploads
+          - logs:/app/writable/logs
         environment:
           - CI_ENVIRONMENT=production
           - FORCE_HTTPS=false


Test patch: