From 433794840a1f245adf7950d31439014cea68321b Mon Sep 17 00:00:00 2001 From: Limezy Date: Wed, 21 Feb 2024 13:55:17 +0700 Subject: [PATCH] Update config panel --- scripts/config | 75 +++---------------------------------------------- scripts/install | 8 ++++++ scripts/upgrade | 19 +++++++++++++ 3 files changed, 31 insertions(+), 71 deletions(-) diff --git a/scripts/config b/scripts/config index b9e79f8..68aa9a8 100644 --- a/scripts/config +++ b/scripts/config @@ -24,77 +24,10 @@ ynh_abort_if_errors final_path=$(ynh_app_setting_get $app final_path) -#================================================= -# SPECIFIC GETTERS FOR TOML SHORT KEY -#================================================= - -get__amount() { - # Here we can imagine to have an API call to stripe to know the amount of donation during a month - local amount = 200 - - # It's possible to change some properties of the question by overriding it: - if [ $amount -gt 100 ] - then - cat << EOF -style: success -value: $amount -ask: - en: A lot of donation this month: **$amount €** -EOF - else - cat << EOF -style: danger -value: $amount -ask: - en: Not so much donation this month: $amount € -EOF - fi -} - -get__prices() { - local prices = "$(grep "DONATION\['" "$final_path/settings.py" | sed -r "s@^DONATION\['([^']*)'\]\['([^']*)'\] = '([^']*)'@\1/\2/\3@g" | sed -z 's/\n/,/g;s/,$/\n/')" - if [ "$prices" == "," ]; - then - # Return YNH_NULL if you prefer to not return a value at all. - echo YNH_NULL - else - echo $prices - fi -} - - -#================================================= -# SPECIFIC VALIDATORS FOR TOML SHORT KEYS -#================================================= -validate__publishable_key() { - - # We can imagine here we test if the key is really a publisheable key - (is_secret_key $publishable_key) && - echo 'This key seems to be a secret key' -} - -#================================================= -# SPECIFIC SETTERS FOR TOML SHORT KEYS -#================================================= -set__prices() { - - #--------------------------------------------- - # IMPORTANT: setter are trigger only if a change is detected - #--------------------------------------------- - for price in $(echo $prices | sed "s/,/ /"); do - frequency=$(echo $price | cut -d/ -f1) - currency=$(echo $price | cut -d/ -f2) - price_id=$(echo $price | cut -d/ -f3) - sed "d/DONATION\['$frequency'\]\['$currency'\]" "$final_path/settings.py" - - echo "DONATION['$frequency']['$currency'] = '$price_id'" >> "$final_path/settings.py" - done - - #--------------------------------------------- - # IMPORTANT: to be able to upgrade properly, you have to saved the value in settings too - #--------------------------------------------- - ynh_app_setting_set $app prices $prices -} +# import needed settings +creation_compte=$(ynh_app_setting_get --app="$app" --key=creation_compte) +connexion_compte=$(ynh_app_setting_get --app="$app" --key=connexion_compte) +csv_sep=$(ynh_app_setting_get --app="$app" --key=csv_sep) #================================================= # GENERIC FINALIZATION diff --git a/scripts/install b/scripts/install index 7b55452..bc74d3f 100755 --- a/scripts/install +++ b/scripts/install @@ -9,6 +9,14 @@ source _common.sh source /usr/share/yunohost/helpers +creation_compte="true" +connexion_compte="true" +csv_sep=";" + +ynh_app_setting_set --app=$app --key=creation_compte --value=$creation_compte +ynh_app_setting_set --app=$app --key=connexion_compte --value=$connexion_compte +ynh_app_setting_set --app=$app --key=csv_sep --value=$csv_sep + #================================================= # DOWNLOAD, CHECK AND UNPACK SOURCE #================================================= diff --git a/scripts/upgrade b/scripts/upgrade index c63e47b..02c406b 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -15,6 +15,25 @@ source /usr/share/yunohost/helpers upgrade_type=$(ynh_check_app_version_changed) +# If creation_compte doesn't exist, create it +if [ -z "${creation_compte:-}" ]; then + creation_compte=true + ynh_app_setting_set --app=$app --key=creation_compte --value=$creation_compte +fi + +# If connexion_compte doesn't exist, create it +if [ -z "${connexion_compte:-}" ]; then + connexion_compte=true + ynh_app_setting_set --app=$app --key=connexion_compte --value=$connexion_compte +fi + +# If separateur_csv doesn't exist, create it +if [ -z "${csv_sep:-}" ]; then + csv_sep=";" + ynh_app_setting_set --app=$app --key=csv_sep --value=$csv_sep +fi + + #================================================= # DOWNLOAD, CHECK AND UNPACK SOURCE #=================================================