#!/usr/bin/env bash

# Exit on error. Append "|| true" if you expect an error.
set -o errexit
# Exit on error inside any functions or subshells.
set -o errtrace
# Do not allow use of undefined vars. Use ${VAR:-} to use an undefined VAR
set -o nounset
# Catch the error in case mysqldump fails (but gzip succeeds) in `mysqldump |gzip`
set -o pipefail

function command_exists() {
  type "$1" &> /dev/null
}

DIR="$(cd "$(dirname "${BASH_SOURCE[0]:-$0}")" && pwd)"
TOOL="${DIR}/i3-workspace-groups"
command_exists "${TOOL}" || TOOL="i3-workspace-groups"
if group="$(rofi -dmenu -p 'Assign workspace to group' -lines 0 -width 30 -mesg '<span alpha="50%%">Leave empty for the default group</span>')"; then
  [[ -n "${group}" ]] || group='Ɗ'
  "${TOOL}" assign-workspace-to-group "${group}"
else
  exit $?
fi
