#!/bin/bash

kp=" "; sl=" "
if [[ ! $@ =~ mail|contacts|calendar|tasks|memos ]]; then
    wunwa "Event Tester" && wmctrl -r 'Event Tester' -N "$(gettext "Contacts"): $(gettext "Super_L key")" &
    kp=$(timeout 2s xev -geometry 270x50 | grep -A2 --line-buffered '^KeyRelease' | sed -n '/keycode /s/^.*keycode \([0-9]*\).* (.*, \(.*\)).*$/\1 \2/p')
    sl="Super_L"
fi

params=""; quot=""
if [[ "$@" =~ "contacts" ]] || [[ "${kp}" =~ "$sl" ]]; then
    params="-c contacts"
elif [[ "$1" =~ "mailto:" ]]; then
    params="$@"; addr="$1"
    if [[ "$addr" =~ "@" ]] && [ "$params" != "$addr" ]; then
	params="${params/$addr /$addr?attach=}"
	params="${params// \//\\\&attach=\/}"
	params="${params// /\\ }"
    else
	quot="\""
    fi
elif [[ -z "$@" ]]; then
    params="-c mail"
else
    params="$@"
    [ "${params::2}" != "-c" ] && params="-c $params"
fi

if [[ ! "$params" =~ "mailto:" ]]; then
    contacts=$(TEXTDOMAIN=evolution gettext "Contacts")
    calendar=$(TEXTDOMAIN=evolution gettext "Calendar")
    tasks=$(TEXTDOMAIN=evolution gettext "Tasks")
    memos=$(TEXTDOMAIN=evolution gettext "Memos")
    bash -c 'id=`wunwa $calendar|$contacts|$memos|$tasks|Mail`; orient-act-win 8; xseticon -id $id ~/.icons/evolution.png' &
else
    compose=$(TEXTDOMAIN=evolution gettext "Compose Message")
    bash -c 'id=`wunwa "$compose"`; xseticon -id $id ~/.icons/mail.png' &
fi
eval "/usr/bin/x-email-client $quot$params$quot"
