#!/usr/bin/env bash
set -e

LKEY=$1
LEASE=$2

if [ -z "$LKEY" ]; then
	echo "Expecting a license key and lease hours as arguments. For example:"
	echo "$0 12345678-9abc-def0-1234-567890abcdef 24"
	exit 1
fi

if [ -z "$LEASE" ]; then
	LEASE=1
	echo "The lease duration is not provided, value \"$LEASE\" is used instead."
fi

if [ -z "$CURL_PROXY" ]; then
	CURL_PROXY="--proxy-anyauth"
	echo "CURL_PROXY is not set, using value \"$CURL_PROXY\" instead."
	echo "The following can be used to setup NTLM proxy:"
	echo "export CURL_PROXY=--proxy-ntlm --proxy-user username:password --proxy server:port"
fi

SOURCE="${BASH_SOURCE[0]}"
while [ -h "$SOURCE" ]; do
  HERE=$(cd -P $(dirname "$SOURCE") >/dev/null 2>&1 && pwd)
  SOURCE=$(readlink "$SOURCE")
  [[ "$SOURCE" != /* ]] && SOURCE="$HERE/$SOURCE"
done
HERE=$(cd -P $(dirname "$SOURCE") > /dev/null 2>&1 && pwd)

echo "Generating a lease request..."
request=$("$HERE/verifyta" --key "$LKEY" --lease "$LEASE" --lease-request)
echo "Requesting a lease..."
lease=$(curl --silent --proxy-anyauth -X POST --data-urlencode "license_key=$LKEY" --data-urlencode "request=$request" "https://www.uppaal.com/lease/lease.php")
echo "Installing the lease..."
echo $lease | "$HERE/verifyta" --lease "$LEASE" --lease-install > /dev/null
echo "Success."
