#!/bin/bash

##########################
#   LIST OF LANGUAGES    #
##########################
# af    (Afrikaans)      #
# sq    (Albanian)       #
# ar    (Arabic)         #
# hy    (Armenian)       #
# az    (Azerbaijani)    #
# eu    (Basque)         #
# be    (Belarusian)     #
# bn    (Bengali)        #
# bg    (Bulgarian)      #
# ca    (Catalan)        #
# zh-CN (Chinese)        #
# hr    (Croatian)       #
# cs    (Czech)          #
# da    (Danish)         #
# nl    (Dutch)          #
# en    (English)        #
# eo    (Esperanto)      #
# et    (Estonian)       #
# tl    (Filipino)       #
# fi    (Finnish)        #
# fr    (French)         #
# gl    (Galician)       #
# ka    (Georgian)       #
# de    (German)         #
# el    (Greek)          #
# gu    (Gujarati)       #
# ht    (Haitian-Creole) #
# iw    (Hebrew)         #
# hi    (Hindi)          #
# hu    (Hungarian)      #
# is    (Icelandic)      #
# id    (Indonesian)     #
# ga    (Irish)          #
# it    (Italian)        #
# ja    (Japanese)       #
# kn    (Kannada)        #
# ko    (Korean)         #
# la    (Latin)          #
# lv    (Latvian)        #
# lt    (Lithuanian)     #
# mk    (Macedonian)     #
# ms    (Malay)          #
# mt    (Maltese)        #
# no    (Norwegian)      #
# fa    (Persian)        #
# pl    (Polish)         #
# pt    (Portuguese)     #
# ro    (Romanian)       #
# ru    (Russian)        #
# sr    (Serbian)        #
# sk    (Slovak)         #
# sl    (Slovenian)      #
# es    (Spanish)        #
# sw    (Swahili)        #
# sv    (Swedish)        #
# ta    (Tamil)          #
# te    (Telugu)         #
# th    (Thai)           #
# tr    (Turkish)        #
# uk    (Ukrainian)      #
# ur    (Urdu)           #
# vi    (Vietnamese)     #
# cy    (Welsh)          #
# yi    (Yiddish)        #
##########################

if [ -f $HOME/.dmenurc ]; then
    . $HOME/.dmenurc
    echo $DMENU
else
    export DMENU='dmenu -l 10 -fn PragmataPro -b -i -nb #555753 -nf #D3D7DF -sb #2E3436 -sf #EEEEEC'
    echo $DMENU
fi
XDG_CONFIG_HOME=~/.config
if [ ! -e $XDG_CONFIG_HOME/dmenu-translate ]
then
    languages=$(echo "" | $DMENU -p "please provide your default languages (see the list of languages in the script), separated by space:")
    if [ "$languages" != '' ]
    then
        echo $languages > $XDG_CONFIG_HOME/dmenu-translate
    fi
else
    languages=$(cat $XDG_CONFIG_HOME/dmenu-translate | sed 's/\ /\\n/g')
    if [ "$languages" != '' ]
    then
        from=$(echo -e "$languages" | $DMENU -p "translate from")
        if [ "$from" != '' ]
        then
            to=$(echo -e "$languages" | grep -v $from | $DMENU -p "translate from $from to")
            if [ "$to" != '' ]
            then
                text="$(xsel -o | $DMENU -p "text":)"
                if [ "$text" != '' ]
                then
                    echo $(wget \
                        --user-agent="Mozilla/5.0 (X11; Linux x86_64; rv:14.0) Gecko/20100101 Firefox/14.0.1" \
                        "http://translate.google.com/translate_a/t?client=x&text=$text&hl=$from&sl=$from&tl=$to" -qO-)\
                        | awk -F\" '{ print $6 }' | tr \\n \\0 | $DMENU -p "translation from $from to $to:" | xsel -i
                fi
            fi
        fi
    fi
fi


