about summary refs log tree commit diff stats
path: root/modules/home/conf/lf/commands/scripts/dl_file.sh
blob: c7e3d8b2079420c0eeb653c967a4f8443ce0b8ab (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#! /usr/bin/env dash

# shellcheck source=/dev/null
SHELL_LIBRARY_VERSION="2.1.2" . %SHELL_LIBRARY_PATH

# shellcheck disable=SC2269
f="$f"
# shellcheck disable=SC2269
fx="$fx"
# shellcheck disable=SC2269
fs="$fs"
# shellcheck disable=SC2269
id="$id"

# Provides the ability to download a file by dropping it into a window

url="$(dragon -t -x)"

if [ -n "$url" ]; then
    prompt "File Name: "
    name=""
    while [ -z "$name" ] || [ -e "$name" ]; do
        read -r name
        if [ -e "$name" ]; then
            prompt "File already exists, overwrite [y|N]: "
            read -r ans

            if [ "$ans" = "y" ]; then
                break
            else
                prompt "File Name: "
            fi
        fi
    done

    # Download the file with curl
    if [ -n "$name" ]; then
        curl -o "$name" "$url" || die "curl failed"
    fi
else
    die "URL is null!"
fi
# vim: ft=sh