diff --git a/conf/app.src b/conf/app.src
index e8d11c2..12dbbb5 100644
--- a/conf/app.src
+++ b/conf/app.src
@@ -1,5 +1,5 @@
-SOURCE_URL=https://github.com/PrestaShop/PrestaShop/releases/download/1.7.8.5/prestashop_1.7.8.5.zip
-SOURCE_SUM=b90e7200eb759a4904a8e819de23e012ba173d93d33a4a87d3df0f30717aee60
+SOURCE_URL=https://github.com/PrestaShop/PrestaShop/releases/download/1.7.8.6/prestashop_1.7.8.6.zip
+SOURCE_SUM=3d84c258990cbbe76eda57829e847c5023930925223f49b578739244c660db06
SOURCE_SUM_PRG=sha256sum
SOURCE_FORMAT=zip
SOURCE_IN_SUBDIR=false
diff --git a/conf/nginx.conf b/conf/nginx.conf
index 27ea414..4e9615d 100644
--- a/conf/nginx.conf
+++ b/conf/nginx.conf
@@ -7,7 +7,7 @@ location __PATH__/ {
index index.php;
# Common parameter to increase upload size limit in conjunction with dedicated php-fpm file
- #client_max_body_size 50M;
+ client_max_body_size 300M;
try_files $uri $uri/ index.php;
location ~ [^/]\.php(/|$) {
diff --git a/manifest.json b/manifest.json
index e2f5060..83aec3c 100644
--- a/manifest.json
+++ b/manifest.json
@@ -33,7 +33,7 @@
"multi_instance": true,
"services": [
"nginx",
- "php7.3-fpm",
+ "php8.0-fpm",
"mysql"
],
"arguments": {
@@ -48,6 +48,10 @@
"example": "/prestashop",
"default": "/prestashop"
},
+ {
+ "name": "admin",
+ "type": "user"
+ },
{
"name": "is_public",
"type": "boolean",
diff --git a/scripts/_common.sh b/scripts/_common.sh
index eeb4cea..9e85de7 100644
--- a/scripts/_common.sh
+++ b/scripts/_common.sh
@@ -4,9 +4,9 @@
# COMMON VARIABLES
#=================================================
-YNH_PHP_VERSION="7.3"
+YNH_PHP_VERSION="8.0"
-pkg_dependencies="php${YNH_PHP_VERSION}-mbstring php${YNH_PHP_VERSION}-json php${YNH_PHP_VERSION}-fpm php${YNH_PHP_VERSION}-common php${YNH_PHP_VERSION}-curl php${YNH_PHP_VERSION}-intl php${YNH_PHP_VERSION}-xmlrpc php${YNH_PHP_VERSION}-mysql php${YNH_PHP_VERSION}-gd php${YNH_PHP_VERSION}-xml php${YNH_PHP_VERSION}-cli php${YNH_PHP_VERSION}-zip"
+pkg_dependencies="php${YNH_PHP_VERSION}-mbstring php${YNH_PHP_VERSION}-fpm php${YNH_PHP_VERSION}-common php${YNH_PHP_VERSION}-curl php${YNH_PHP_VERSION}-intl php${YNH_PHP_VERSION}-xmlrpc php${YNH_PHP_VERSION}-mysql php${YNH_PHP_VERSION}-gd php${YNH_PHP_VERSION}-xml php${YNH_PHP_VERSION}-cli php${YNH_PHP_VERSION}-zip"
#=================================================
# PERSONAL HELPERS
@@ -20,17 +20,34 @@ pkg_dependencies="php${YNH_PHP_VERSION}-mbstring php${YNH_PHP_VERSION}-json php$
# FUTURE OFFICIAL HELPERS
#=================================================
+
# Send an email to inform the administrator
#
-# usage: ynh_send_readme_to_admin app_message [recipients]
-# | arg: app_message - The message to send to the administrator.
-# | arg: recipients - The recipients of this email. Use spaces to separate multiples recipients. - default: root
+# usage: ynh_send_readme_to_admin --app_message=app_message [--recipients=recipients] [--type=type]
+# | arg: -m --app_message= - The file with the content to send to the administrator.
+# | arg: -r, --recipients= - The recipients of this email. Use spaces to separate multiples recipients. - default: root
# example: "root admin@domain"
# If you give the name of a YunoHost user, ynh_send_readme_to_admin will find its email adress for you
# example: "root admin@domain user1 user2"
+# | arg: -t, --type= - Type of mail, could be 'backup', 'change_url', 'install', 'remove', 'restore', 'upgrade'
+#
+# Requires YunoHost version 4.1.0 or higher.
ynh_send_readme_to_admin() {
- local app_message="${1:-...No specific information...}"
- local recipients="${2:-root}"
+ # Declare an array to define the options of this helper.
+ declare -Ar args_array=( [m]=app_message= [r]=recipients= [t]=type= )
+ local app_message
+ local recipients
+ local type
+ # Manage arguments with getopts
+
+ ynh_handle_getopts_args "$@"
+ app_message="${app_message:-}"
+ recipients="${recipients:-root}"
+ type="${type:-install}"
+
+ # Get the value of admin_mail_html
+ admin_mail_html=$(ynh_app_setting_get $app admin_mail_html)
+ admin_mail_html="${admin_mail_html:-0}"
# Retrieve the email of users
find_mails () {
@@ -56,15 +73,62 @@ ynh_send_readme_to_admin() {
}
recipients=$(find_mails "$recipients")
- local mail_subject="☁️🆈🅽🅷☁️: \`$app\` has important message for you"
+ # Subject base
+ local mail_subject="☁️🆈🅽🅷☁️: \`$app\`"
+ # Adapt the subject according to the type of mail required.
+ if [ "$type" = "backup" ]; then
+ mail_subject="$mail_subject has just been backup."
+ elif [ "$type" = "change_url" ]; then
+ mail_subject="$mail_subject has just been moved to a new URL!"
+ elif [ "$type" = "remove" ]; then
+ mail_subject="$mail_subject has just been removed!"
+ elif [ "$type" = "restore" ]; then
+ mail_subject="$mail_subject has just been restored!"
+ elif [ "$type" = "upgrade" ]; then
+ mail_subject="$mail_subject has just been upgraded!"
+ else # install
+ mail_subject="$mail_subject has just been installed!"
+ fi
+
+ ynh_add_config --template="$app_message" --destination="../conf/msg_to_send"
+
+ ynh_delete_file_checksum --file="../conf/msg_to_send"
local mail_message="This is an automated message from your beloved YunoHost server.
+
Specific information for the application $app.
-$app_message
----
-Automatic diagnosis data from YunoHost
-$(yunohost tools diagnosis | grep -B 100 "services:" | sed '/services:/d')"
-
+
+$(cat "../conf/msg_to_send")"
+
+ # Store the message into a file for further modifications.
+ echo "$mail_message" > mail_to_send
+
+ # If a html email is required. Apply html tags to the message.
+ if [ "$admin_mail_html" -eq 1 ]
+ then
+ # Insert 'br' tags at each ending of lines.
+ ynh_replace_string "$" "
" mail_to_send
+
+ # Insert starting HTML tags
+ sed --in-place '1s@^@\n\n