diff --git a/README.md b/README.md index d8848d6..9a9614f 100644 --- a/README.md +++ b/README.md @@ -12,7 +12,7 @@ Create and email invoices, track payments, expenses, and time tasks [![🌐 Official app website](https://img.shields.io/badge/Official_app_website-darkgreen?style=for-the-badge)](https://invoiceninja.org) [![App Demo](https://img.shields.io/badge/App_Demo-blue?style=for-the-badge)](https://react.invoicing.co/demo) -[![Version: 5.12.69~ynh1](https://img.shields.io/badge/Version-5.12.69~ynh1-rgb(18,138,11)?style=for-the-badge)](https://ci-apps.yunohost.org/ci/apps/invoiceninja5/) +[![Version: 5.12.70~ynh1](https://img.shields.io/badge/Version-5.12.70~ynh1-rgb(18,138,11)?style=for-the-badge)](https://ci-apps.yunohost.org/ci/apps/invoiceninja5/)
diff --git a/conf/default.env b/conf/default.env index dcd6195..825ca6d 100644 --- a/conf/default.env +++ b/conf/default.env @@ -25,8 +25,8 @@ MAIL_PORT=25 MAIL_USERNAME=null MAIL_PASSWORD=null MAIL_ENCRYPTION=null -MAIL_FROM_ADDRESS='__EMAIL__' -MAIL_FROM_NAME='__EMAIL_FULLNAME__' +MAIL_FROM_ADDRESS='__DEFAULT_FROM_EMAIL_ADDRESS__' +MAIL_FROM_NAME='__DEFAULT_FROM_EMAIL_NAME__' DEMO_MODE=false diff --git a/config_panel.toml b/config_panel.toml new file mode 100644 index 0000000..6666526 --- /dev/null +++ b/config_panel.toml @@ -0,0 +1,18 @@ +version = "1.0" +[main] +name = "InvoicNinja configuration" + + [main.config] + name = "Configuration Options" + + [main.config.default_from_email_address] + ask.en = "Choose from which mail address emails will be sent" + ask.fr = "Choisissez à partir de quelle adresse e-mail les e-mails seront envoyés" + help = "Default email address to use for various automated emails." + bind = "MAIL_FROM_ADDRESS:__INSTALL_DIR__/.env" + + [main.config.default_from_email_name] + ask.en = "Choose what name will be displayed when InvoiceNinja sends mails" + ask.fr = "Choisissez quel nom sera affiché lorsque InvoiceNinja enverra des e-mails" + help = "Default name address to use for various automated names." + bind = "MAIL_FROM_NAME:__INSTALL_DIR__/.env" diff --git a/manifest.toml b/manifest.toml index 7a6b6d0..07ea4f9 100644 --- a/manifest.toml +++ b/manifest.toml @@ -7,7 +7,7 @@ name = "InvoiceNinja 5" description.en = "Create and email invoices, track payments, expenses, and time tasks" description.fr = "Créer et envoyer des factures par e-mail, suivre les paiements, les dépenses et les tâches horaires" -version = "5.12.69~ynh1" +version = "5.12.70~ynh1" maintainers = ["Sebastian Gumprich"] @@ -51,8 +51,6 @@ ram.runtime = "50M" type = "user" [install.password] - help.en = "Use the help field to add an information for the admin about this question." - help.fr = "Utilisez le champ aide pour ajouter une information à l'intention de l'administrateur à propos de cette question." type = "password" [resources] @@ -60,8 +58,8 @@ ram.runtime = "50M" [resources.sources] [resources.sources.main] - url = "https://github.com/invoiceninja/invoiceninja/releases/download/v5.12.69/invoiceninja.tar" - sha256 = "ca97b853c9c2a2ff1c82fa374a48f23245077cdef911e2748a1543cac5f50139" + url = "https://github.com/invoiceninja/invoiceninja/releases/download/v5.12.70/invoiceninja.tar" + sha256 = "b631ba3651873f0635131e4c518eff5f0cc803ecfd28bcf3ab012db5be3181fc" format = "tar.gz" in_subdir = false autoupdate.strategy = "latest_github_release" diff --git a/scripts/config b/scripts/config new file mode 100644 index 0000000..16f9ec9 --- /dev/null +++ b/scripts/config @@ -0,0 +1,14 @@ +#!/bin/bash + +source /usr/share/yunohost/helpers + +# Cache needs to be cleared after updating vars through config panel +ynh_app_config_apply() { + _ynh_app_config_apply + pushd "$install_dir" + # Optimize the framework for better performance + php$phpversion artisan optimize --no-interaction --verbose + popd +} + +ynh_app_config_run $1 diff --git a/scripts/install b/scripts/install index 1dec766..b87a458 100755 --- a/scripts/install +++ b/scripts/install @@ -14,12 +14,14 @@ api_secret="$(ynh_string_random --length=32)" app_key="$(ynh_string_random --length=32)" phantomjs_key="$(ynh_string_random --length=32)" -email_fullname="$(ynh_user_get_info --username=$admin --key=fullname)" -email="$(ynh_user_get_info --username=$admin --key=mail)" +default_from_email_name="$(ynh_user_get_info --username=$admin --key=fullname)" +default_from_email_address="$(ynh_user_get_info --username=$admin --key=mail)" ynh_app_setting_set --key=api_secret --value=$api_secret ynh_app_setting_set --key=app_key --value=$app_key ynh_app_setting_set --key=phantomjs_key --value=$phantomjs_key +ynh_app_setting_set --key=default_from_email_address --value="$default_from_email_address" +ynh_app_setting_set --key=default_from_email_name --value="$default_from_email_name" #================================================= # DOWNLOAD, CHECK AND UNPACK SOURCE @@ -55,7 +57,7 @@ ynh_script_progression "Building the application..." pushd "$install_dir" # Run the database migrations and initially fill the db php$php_version artisan migrate:fresh --seed --no-interaction --verbose --force - php$php_version artisan ninja:create-account --email $email --password "$password" --no-interaction --verbose + php$php_version artisan ninja:create-account --email $default_from_email_address --password "$password" --no-interaction --verbose php$php_version artisan optimize --no-interaction --verbose php$php_version artisan view:clear php$php_version artisan cache:clear diff --git a/scripts/upgrade b/scripts/upgrade index 432a1d4..de2e82e 100755 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -17,8 +17,17 @@ ynh_app_setting_delete --key=email_lastname ynh_app_setting_delete --key=email # also delete unnecessary duplicate of state storage # Retrieve `$admin` user settings -ynh_app_setting_set_default --key=email_fullname --value="$(ynh_user_get_info --username=$admin --key=fullname)" -ynh_app_setting_set_default --key=email --value="$(ynh_user_get_info --username=$admin --key=mail)" +default_from_email_address=$(ynh_app_setting_get --key=default_from_email_address) +if [ -z "$default_from_email_address" ]; then + default_from_email_address="${app}@${domain}" + ynh_app_setting_set --key=default_from_email_address --value="$default_from_email_address" +fi + +default_from_email_name=$(ynh_app_setting_get --key=default_from_email_name) +if [ -z "$default_from_email_name" ]; then + default_from_email_name="${app}@${domain}" + ynh_app_setting_set --key=default_from_email_name --value="$default_from_email_name" +fi ynh_app_setting_set_default --key=api_secret --value="$(ynh_string_random --length=32)" ynh_app_setting_set_default --key=app_key --value="$(ynh_string_random --length=32)" diff --git a/tests.toml b/tests.toml index 8829f31..23744f9 100644 --- a/tests.toml +++ b/tests.toml @@ -12,6 +12,9 @@ test_format = 1.0 # Default args to use for install # ------------------------------- + args.default_from_email_address = "invoiceninja@example.tld" + args.default_from_email_name = "invoiceninja" + # ------------------------------- # Commits to test upgrade from # -------------------------------