#!/bin/bash

#=================================================
# GENERIC START
#=================================================
# IMPORT GENERIC HELPERS
#=================================================

source _common.sh
source /usr/share/yunohost/helpers

#=================================================
# STANDARD REMOVE
#=================================================
# REMOVE SERVICE INTEGRATION IN YUNOHOST
#=================================================
ynh_script_progression --message="Removing system configurations related to $app..." --weight=5

# Stop flohmarkt service
ynh_script_progression --message="Stopping $app..." --weight=2
yunohost service stop $flohmarkt_filename

# Remove the service from the list of services known by YunoHost (added from `yunohost service add`)
if ynh_exec_warn_less yunohost service status $flohmarkt_filename >/dev/null
then
	ynh_script_progression --message="Removing $app service integration..." --weight=2
	yunohost service remove $flohmarkt_filename
fi

# https://codeberg.org/flohmarkt/flohmarkt_ynh/issues/12
ynh_script_progression --message="Removing database and database user..." --weight=2
# remove DB
curl -s -X DELETE 'http://127.0.0.1:5984/flohmarkt' --user "admin:${password_couchdb_admin}"
# remove DB user for this instance:
#   get rev for the user and then delete user/rev
curl -s -X DELETE "http://127.0.0.1:5984/_users/org.couchdb.user%3A${app}?rev=$( curl -sX GET "http://127.0.0.1:5984/_users/org.couchdb.user%3A${app}" --user "admin:${password_couchdb_admin}" | jq -r ._rev)" --user "admin:${password_couchdb_admin}"

# Remove the app-specific logrotate config
ynh_remove_logrotate

# remove logfiles directory
# https://codeberg.org/flohmarkt/flohmarkt_ynh/issues/29
# can only remove a subdir or one file
ynh_secure_remove --file="${flohmarkt_log_dir}"

# Remove the dedicated NGINX config
ynh_remove_nginx_config

# Remove the dedicated Fail2Ban config
ynh_remove_fail2ban_config

# Remove home
# https://codeberg.org/flohmarkt/flohmarkt_ynh/issues/29
ynh_script_progression --message="Removing data directory..." --weight=2
ynh_secure_remove --file=$data_dir

# remove systemd service
ynh_script_progression --message="Removing data directory..." --weight=2
ynh_remove_systemd_config

# remove symlinks
ynh_secure_remove "$flohmarkt_sym_install"
ynh_secure_remove "$flohmarkt_sym_data_dir"

#=================================================
# END OF SCRIPT
#=================================================

ynh_script_progression --message="Removal of $app completed" --last
