#!/bin/bash

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

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

#=================================================
# MANAGE SCRIPT FAILURE
#=================================================

# Exit if an error occurs during the execution of the script
ynh_abort_if_errors

#=================================================
# LOAD SETTINGS
#=================================================
ynh_script_progression --message="Load settings" --weight=2

app=$YNH_APP_INSTANCE_NAME

final_path=$(ynh_app_setting_get $app final_path)
path_url=$(ynh_app_setting_get $app path)
domain=$(ynh_app_setting_get $app domain)

#=================================================
# STANDARD BACKUP STEPS
#=================================================
# BACKUP THE MAIN APP DIRECTORIES
#=================================================
ynh_script_progression --message="Backup the app main directories" --weight=5

CHECK_SIZE "$final_path"
ynh_backup "$final_path"

CHECK_SIZE "/etc/.pihole"
ynh_backup "/etc/.pihole"

CHECK_SIZE "/etc/pihole"
ynh_backup "/etc/pihole"

CHECK_SIZE "/opt/pihole"
ynh_backup "/opt/pihole"

#=================================================
# BACKUP NGINX CONFIGURATION
#=================================================
ynh_script_progression --message="Backup nginx configuration"

ynh_backup "/etc/nginx/conf.d/$domain.d/$app.conf"

#=================================================
# BACKUP PHP-FPM CONFIGURATION
#=================================================
ynh_script_progression --message="Backup php-fpm configuration"

ynh_backup "/etc/php/7.0/fpm/pool.d/$app.conf"

#=================================================
# SPECIFIC BACKUP
#=================================================
# BACKUP CRON FILE
#=================================================
ynh_script_progression --message="Backup cron file"

ynh_backup "/etc/cron.d/pihole"

#=================================================
# BACKUP SPECIFIC FILES
#=================================================
ynh_script_progression --message="Backup specific files"

ynh_backup "/usr/local/bin/pihole"
ynh_backup "/etc/bash_completion.d/pihole"

ynh_backup "/etc/sudoers.d/pihole"

ynh_backup "/etc/init.d/pihole-FTL"
ynh_backup "/usr/bin/pihole-FTL"

ynh_backup "/etc/dnsmasq.d/01-pihole.conf"
if test -e "/etc/dnsmasq.d/02-pihole-dhcp.conf"; then
	ynh_backup "/etc/dnsmasq.d/02-pihole-dhcp.conf"
fi
if test -e "/etc/dnsmasq.d/03-pihole-wildcard.conf"; then
	ynh_backup "/etc/dnsmasq.d/03-pihole-wildcard.conf"
fi
if test -e "/etc/dnsmasq.d/04-pihole-static-dhcp.conf"; then
	ynh_backup "/etc/dnsmasq.d/04-pihole-static-dhcp.conf"
fi

ynh_backup "/usr/share/yunohost/hooks/conf_regen/50-dnsmasq_$app"

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

ynh_script_progression --message="Backup completed" --last
