diff --git a/README.md b/README.md index 55b5376..f9cfdf8 100644 --- a/README.md +++ b/README.md @@ -28,7 +28,7 @@ You can use it to easily collaborate on notes, graphs and even presentations in - Easy to use permission system - Low system requirements -**Shipped version:** 1.9.6~ynh1 +**Shipped version:** 1.9.6~ynh2 **Demo:** https://demo.hedgedoc.org/ diff --git a/README_fr.md b/README_fr.md index 4e4b558..106324b 100644 --- a/README_fr.md +++ b/README_fr.md @@ -28,7 +28,7 @@ You can use it to easily collaborate on notes, graphs and even presentations in - Easy to use permission system - Low system requirements -**Version incluse :** 1.9.6~ynh1 +**Version incluse :** 1.9.6~ynh2 **Démo :** https://demo.hedgedoc.org/ diff --git a/conf/config.json.example b/conf/config.json.example index 5b9bfe1..7b30ba4 100644 --- a/conf/config.json.example +++ b/conf/config.json.example @@ -8,10 +8,11 @@ "useCDN": false, "allowGravatar": false, "allowFreeURL": false, + "allowAnonymous": __ALLOW_ANONYMOUS__, "allowAnonymousEdits": true, "defaultPermission": "locked", "email": true, - "allowEmailRegister": true, + "allowEmailRegister": __ALLOW_EMAIL_REGISTRATION__, "imageUploadType": "filesystem", "tooBusyLag": 1000, "hsts": { diff --git a/config_panel.toml.example b/config_panel.toml.example new file mode 100644 index 0000000..e784143 --- /dev/null +++ b/config_panel.toml.example @@ -0,0 +1,24 @@ +version = "1.0" + +[main] +name = "HedgeDoc configuration" + + [main.config] + name = "Configuration Options" + + [main.config.allow_anonymous] + ask = "Allow anonymous usage" + type = "boolean" + yes = "true" + no = "false" + help = "Set to allow anonymous usage (default is true)." + bind = "allow_anonymous:__FINALPATH__/config.json" + + [main.config.allow_email_registration] + ask = "Allow email registration" + type = "boolean" + yes = "true" + no = "false" + help = "Set to allow registration of new accounts using an email address. If set to false, you can still create accounts using the command line." + bind = "allow_email_registration:__FINALPATH__/config.json" + diff --git a/manifest.json b/manifest.json index 8d12a2c..a38fa58 100644 --- a/manifest.json +++ b/manifest.json @@ -6,7 +6,7 @@ "en": "Collaborative editor to work on notes written in Markdown", "fr": "Éditeur collaboratif pour travailler sur des notes en Markdown" }, - "version": "1.9.6~ynh1", + "version": "1.9.6~ynh2", "url": "https://hedgedoc.org", "upstream": { "license": "AGPL-3.0-only", diff --git a/scripts/change_url b/scripts/change_url index a9c8a53..5fd09f8 100644 --- a/scripts/change_url +++ b/scripts/change_url @@ -33,6 +33,9 @@ db_name=$(ynh_app_setting_get --app=$app --key=db_name) db_user=$db_name db_pwd=$(ynh_app_setting_get --app=$app --key=psqlpwd) +allow_anonymous=$(ynh_app_setting_get --app=$app --key=allow_anonymous) +allow_email_registration=$(ynh_app_setting_get --app=$app --key=allow_email_registration) + #================================================= # BACKUP BEFORE UPGRADE THEN ACTIVE TRAP #================================================= diff --git a/scripts/install b/scripts/install index 6b71a53..ed5aea4 100644 --- a/scripts/install +++ b/scripts/install @@ -29,6 +29,9 @@ is_public=$YNH_APP_ARG_IS_PUBLIC app=$YNH_APP_INSTANCE_NAME +allow_anonymous=false +allow_email_registration=false + #================================================= # CHECK IF THE APP CAN BE INSTALLED WITH THESE ARGS #================================================= @@ -47,6 +50,8 @@ ynh_script_progression --message="Storing installation settings..." --weight=2 ynh_app_setting_set --app=$app --key=domain --value=$domain ynh_app_setting_set --app=$app --key=path --value=$path_url +ynh_app_setting_set --app=$app --key=allow_anonymous --value=$allow_anonymous +ynh_app_setting_set --app=$app --key=allow_email_registration --value=$allow_email_registration #================================================= # STANDARD MODIFICATIONS @@ -121,6 +126,7 @@ ynh_script_progression --message="Building HedgeDoc... (this will take some time pushd "$final_path" ynh_use_nodejs + ynh_exec_warn_less sudo -u $app env $ynh_node_load_PATH yarn cache clean bin/setup popd diff --git a/scripts/upgrade b/scripts/upgrade index 4041836..d0f97ad 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -24,6 +24,9 @@ db_name=$(ynh_app_setting_get --app=$app --key=db_name) db_user=$db_name db_pwd=$(ynh_app_setting_get --app=$app --key=psqlpwd) +allow_anonymous=$(ynh_app_setting_get --app=$app --key=allow_anonymous) +allow_email_registration=$(ynh_app_setting_get --app=$app --key=allow_email_registration) + #================================================= # CHECK VERSION #================================================= @@ -35,6 +38,16 @@ upgrade_type=$(ynh_check_app_version_changed) #================================================= ynh_script_progression --message="Ensuring downward compatibility..." --weight=1 +if [ -z "$allow_anonymous" ]; then + allow_anonymous="false" + ynh_app_setting_set --app=$app --key=allow_anonymous --value=$allow_anonymous +fi + +if [ -z "$allow_email_registration" ]; then + allow_email_registration="false" + ynh_app_setting_set --app=$app --key=allow_email_registration --value=$allow_email_registration +fi + # Cleaning legacy permissions if ynh_legacy_permissions_exists; then ynh_legacy_permissions_delete_all