#!/bin/bash

if [ -f "~/.lbrycrddpath.conf" ]; then
    lbrycrdd_path = `cat ~/.lbrycrddpath.conf`
else
    mkdir -p "~/.lbrycrd"
    cd ~/.lbrycrd
    echo "Downloading lbrycrd binaries"
    wget http://s3.amazonaws.com/files.lbry.io/bins.zip
    unzip -o bins.zip
    rm bins.zip
    echo `pwd`/lbrycrdd > ~/.lbrycrddpath.conf
fi

set -euo pipefail

WEB_UI_BRANCH='master'

urlencode() {
  local LANG=C
  local length="${#1}"
  for (( i = 0; i < length; i++ )); do
    local c="${1:i:1}"
    case $c in
      [a-zA-Z0-9.~_-]) printf "$c" ;;
      *) printf '%%%02X' "'$c" ;;
    esac
  done
}

DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
if [ -z "$(pgrep lbrynet-daemon)" ]; then
  echo "running lbrynet-daemon..."
  $DIR/lbrynet-daemon --branch="$WEB_UI_BRANCH" &
  sleep 3 # let the daemon load before connecting
fi

ARG=${1:-}

if [ -z "$ARG" ]; then
  URL=""
else
  NAME=$(echo "$ARG" | cut -c 8-)
  if [ -z "$NAME" -o "$NAME" == "lbry" ]; then
    URL=""
  else
    URL="/?watch=$(urlencode "$NAME")"
  fi
fi

/usr/bin/xdg-open "http://localhost:5279$URL"