mirror of
https://github.com/YunoHost-Apps/baikal_ynh.git
synced 2024-09-03 18:16:11 +02:00
commit
620c7c79d8
4 changed files with 9 additions and 7 deletions
|
@ -12,17 +12,19 @@ pkg_dependencies="php-xml php-mbstring php-mysql"
|
|||
#=================================================
|
||||
|
||||
# Check if an URL is already handled
|
||||
# usage: is_url_handled URL
|
||||
# usage: is_url_handled --domain=DOMAIN --path=PATH_URI
|
||||
is_url_handled() {
|
||||
# Declare an array to define the options of this helper.
|
||||
declare -Ar args_array=( [u]=url= )
|
||||
local url
|
||||
local legacy_args=dp
|
||||
declare -Ar args_array=( [d]=domain= [p]=path= )
|
||||
local domain
|
||||
local path
|
||||
# Manage arguments with getopts
|
||||
ynh_handle_getopts_args "$@"
|
||||
|
||||
# Try to get the url with curl, and keep the http code and an eventual redirection url.
|
||||
local curl_output="$(curl --insecure --silent --output /dev/null \
|
||||
--write-out '%{http_code};%{redirect_url}' "$url")"
|
||||
--write-out '%{http_code};%{redirect_url}' https://127.0.0.1$path --header "Host: $domain" --resolve $domain:443:127.0.0.1)"
|
||||
|
||||
# Cut the output and keep only the first part to keep the http code
|
||||
local http_code="${curl_output%%;*}"
|
||||
|
|
|
@ -52,7 +52,7 @@ fi
|
|||
if [ $change_domain -eq 1 ]
|
||||
then
|
||||
# Check if .well-known is available for the new domain.
|
||||
if is_url_handled "https://$new_domain/.well-known/caldav" || is_url_handled "https://$new_domain/.well-known/carddav"
|
||||
if is_url_handled --domain="$new_domain" --path="/.well-known/caldav" || is_url_handled --domain="$new_domain" --path="/.well-known/carddav"
|
||||
then
|
||||
ynh_die --message="Another app already uses the domain $new_domain to serve a caldav/carddav feature. Please use another domain."
|
||||
fi
|
||||
|
|
|
@ -38,7 +38,7 @@ test ! -e "$final_path" || ynh_die "This path already contains a folder"
|
|||
ynh_webpath_register --app=$app --domain=$domain --path_url=$path_url
|
||||
|
||||
# Check if .well-known is available for this domain.
|
||||
if is_url_handled "https://$domain/.well-known/caldav" || is_url_handled "https://$domain/.well-known/carddav"
|
||||
if is_url_handled --domain="$domain" --path="/.well-known/caldav" || is_url_handled --domain="$domain" --path="/.well-known/carddav"
|
||||
then
|
||||
ynh_die --message="Another app already uses the domain $domain to serve a caldav/carddav feature. Please use another domain."
|
||||
fi
|
||||
|
|
|
@ -39,7 +39,7 @@ test ! -d $final_path \
|
|||
|| ynh_die --message="There is already a directory: $final_path "
|
||||
|
||||
# Check if .well-known is available for this domain.
|
||||
if is_url_handled "https://$domain/.well-known/caldav" || is_url_handled "https://$domain/.well-known/carddav"
|
||||
if is_url_handled --domain="$domain" --path="/.well-known/caldav" || is_url_handled --domain="$domain" --path="/.well-known/carddav"
|
||||
then
|
||||
ynh_die --message="Another app already uses the domain $domain to serve a caldav/carddav feature. Please use another domain."
|
||||
fi
|
||||
|
|
Loading…
Add table
Reference in a new issue