#!/bin/bash

#workaround for seahorse
if [ $LANG = "C" ]; then LANG="ru_RU.UTF-8"; fi

TITLE="Диалог ssh"
PASSWDPROMPT="Введите пароль:"
PASSPHRASEPROMPT="Введите ваше кодовое слово:"
REQUEST="Вопрос: $1"
UNEXPECTED="Cообщение: $1"
if [ $LANG != "ru_RU.UTF-8" ]; then
  TITLE="Dialog ssh"
  PASSWDPROMPT="Enter password:"
  PASSPHRASEPROMPT="Enter passphrase:"
  REQUEST="Question: $1"
  UNEXPECTED="Message: $1"
fi

if ! test -x /usr/bin/fly-dialog > /dev/null 2<&1; then
echo 'no /usr/bin/fly-dialog'
exit 1
fi

#nothing from ssh - ask SSH passpharse
if test -z "$1"; then
  /usr/bin/fly-dialog --caption "$TITLE" --password "$PASSPHRASEPROMPT"
  exit 0
fi

#keywords like 'password' from ssh - ask password
if echo "$1" | grep -i "password" > /dev/null 2<&1; then
  /usr/bin/fly-dialog --caption "$TITLE" --password "$PASSWDPROMPT"
  exit 0
fi

if echo "$1" | grep -i "пароль" > /dev/null 2<&1; then
 /usr/bin/fly-dialog --caption "$TITLE" --password "$PASSWDPROMPT"
  exit 0
fi

#keyword '?' from ssh - ask question
if echo "$1" | grep "\?" > /dev/null 2<&1; then 
  if `/usr/bin/fly-dialog --caption "$TITLE" --yesno "$REQUEST"`; then
    echo "yes"
  else
    echo "no"
  fi
  exit 0
fi

if test -z "$2"; then
  /usr/bin/fly-dialog --caption "$TITLE" --password "$1"
  exit 0
fi

#fallback
/usr/bin/fly-dialog --caption "$TITLE" --error "$UNEXPECTED"
