# shellcheck shell=dash

# Section: session stats
# https://v2.umami.is/docs/api/sessions-api#get-apiwebsiteswebsiteidsessionsstats
___x_cmd_umami_session_stat(){
    [ "$#" -gt 0 ] || {
        ___x_cmd help -m umami session stat
        return
    }
    ___x_cmd_umami_session_stat_ "$@" | ___x_cmd j2y
}

___x_cmd_umami_session_stat_(){
    local arg=;local key=;
    local _start=; local _end=;
    local _url=; local _referrer=; local _title=; local _query=; local _event=;
    local _host=; local _os=; local _browser=; local _device=; local _country=;
    local _region=; local _city=;

    while [ "$#" -gt 0 ]; do
        case "$1" in
            --startAt|--endAt|--url|--referrer|--title|--query|--event|\
            --host|--os|--browser|--device|--country|--region|--city)
                key="${1#--}"
                [ -n "$2" ] || M="Provide a $key" N=umami log:ret:1
                arg="${arg}&${key}=${2}"
                shift 2;;
            --timezone)
                key="${1#--}"
                [ -n "$2" ] || M="Provide a $key" N=umami log:ret:1
                arg="${arg}&${key}=${2}"
                shift 2;;
            *)
                break ;;
        esac
    done
    [ -n "$_start" ] || arg="startAt=$(___x_cmd_umami___date -15)&${arg}"
    [ -n "$_end" ]   || arg="endAt=$(___x_cmd_umami___date)&${arg}"
    [ -n "$arg" ]    && arg="?${arg#&}"

    local _website_id="$1";  [ -n "$_website_id" ] || M='Provide a websiteID'   N=umami log:ret:1
    ___x_cmd_umami___transform_website_id || return

    # v2 API: /websites/:websiteId/sessions/stats
    ___x_cmd_umami_api get "/websites/${_website_id}/sessions/stats${arg}"
}
# EndSection
