#!/bin/sh
#
# Copyright (c) 1996-2007, Adobe Systems Incorporated
# All Rights Reserved
#

#Used to specify the start directory for finding acroread
        
set_lang_DEU_utf()
{
    ST_IBP_INFO_12="Bei Problemen bezüglich der ordnungsgemäßen Arbeitsweise der Installation mit Ihrem Browser kopieren Sie die folgende Datei in den Plug-In-Ordner des Browsers: %s"
    ST_IBP_ERR_06="Das Verzeichnis %s konnte nicht erstellt werden."
    ST_IBP_INFO_26="Beenden"
    ST_IBP_INFO_01="Mit dieser Funktion wird das Browser-Plugin für Acroread installiert."
    ST_IBP_INFO_23="%s wurde hinzugefügt."
    ST_IBP_INFO_04="Auswahl eingeben: "
    ST_IBP_ERR_03="Der Ordner %s für den Browser wurde nicht gefunden."
    ST_SMALL_N="n"
    ST_IBP_ERR_01="Die Datei %s für das Browser-Zusatzmodul wurde nicht gefunden."
    ST_IBP_INFO_28="Mit dieser Option wird das Plug-In für Mozilla-/Firefox-Browser nur für den aktuellen Benutzer installiert."
    ST_IBP_INFO_07="Installationsverzeichnis für Browser eingeben"
    ST_IBP_INFO_25="Installation fehlgeschlagen"
    ST_IBP_INFO_17="Wie möchten Sie verfahren? "
    ST_IBP_INFO_11="Damit wird das Plug-In für Mozilla, Firefox und Netscape aktiviert."
    ST_IBP_INFO_09="Installation abgebrochen."
    ST_CAPS_N="N"
    ST_IBP_ERR_11="INTERNER FEHLER .....Kein übereinstimmender Betriebssystemname."
    ST_IBP_ERR_05="Die Plug-In-Datei %s konnte nicht nach %s kopiert werden."
    ST_IBP_INFO_03="Benutzerdefinierte Installation ausführen"
    ST_IBP_ERR_08="%s besteht bereits als Spezialdatei und kann nicht überschrieben werden."
    ST_IBP_INFO_24="Es wird versucht, das Zusatzmodul für den Browser - %s zu installieren"
    ST_IBP_INFO_16="Zusatzmodul wird in %s installiert"
    ST_IBP_INFO_15="Bei Problemen finden Sie Anweisungen zum Hinzufügen von neuen Plugins in der Dokumentation Ihres Browsers."
    ST_IBP_INFO_27="Mit dieser Option wird versucht, das Zusatzmodul für Mozilla/Firefox zu installieren, je nachdem, welches gefunden wird."
    ST_IBP_ERR_10="Der Installationsordner %s wurde nicht gefunden."
    ST_IBP_INFO_06="Geben Sie das Installationsverzeichnis für Adobe Reader 9.1 ein [%s] "
    ST_CAPS_Y="J"
    ST_IBP_INFO_18="Automatische Installation abgeschlossen."
    ST_IBP_ERR_09="HOME-Variable kann nicht aus der Umgebung abgefragt werden. HOME-Verzeichnis wurde nicht gefunden."
    ST_IBP_ERR_02="Der Ordner %s für die Browser-Zusatzmodule wurde nicht gefunden."
    ST_IBP_INFO_08="Das Zusatzmodul ist bereits installiert. Soll es wirklich überschrieben werden? [%s/%s] "
    ST_SMALL_Y="j"
    ST_IBP_INFO_10="Installation abgeschlossen."
    ST_IBP_ERR_04="Die vorherige Version des Zusatzmoduls in %s konnte nicht entfernt werden."
    ST_IBP_INFO_02="Globale Installation (als Root-Anwender)"
}

        
set_lang_DEU()
{
    ST_IBP_INFO_12="Bei Problemen bezglich der ordnungsgemen Arbeitsweise der Installation mit Ihrem Browser kopieren Sie die folgende Datei in den Plug-In-Ordner des Browsers: %s"
    ST_IBP_ERR_06="Das Verzeichnis %s konnte nicht erstellt werden."
    ST_IBP_INFO_26="Beenden"
    ST_IBP_INFO_01="Mit dieser Funktion wird das Browser-Plugin fr Acroread installiert."
    ST_IBP_INFO_23="%s wurde hinzugefgt."
    ST_IBP_INFO_04="Auswahl eingeben: "
    ST_IBP_ERR_03="Der Ordner %s fr den Browser wurde nicht gefunden."
    ST_SMALL_N="n"
    ST_IBP_ERR_01="Die Datei %s fr das Browser-Zusatzmodul wurde nicht gefunden."
    ST_IBP_INFO_28="Mit dieser Option wird das Plug-In fr Mozilla-/Firefox-Browser nur fr den aktuellen Benutzer installiert."
    ST_IBP_INFO_07="Installationsverzeichnis fr Browser eingeben"
    ST_IBP_INFO_25="Installation fehlgeschlagen"
    ST_IBP_INFO_17="Wie mchten Sie verfahren? "
    ST_IBP_INFO_11="Damit wird das Plug-In fr Mozilla, Firefox und Netscape aktiviert."
    ST_IBP_INFO_09="Installation abgebrochen."
    ST_CAPS_N="N"
    ST_IBP_ERR_11="INTERNER FEHLER .....Kein bereinstimmender Betriebssystemname."
    ST_IBP_ERR_05="Die Plug-In-Datei %s konnte nicht nach %s kopiert werden."
    ST_IBP_INFO_03="Benutzerdefinierte Installation ausfhren"
    ST_IBP_ERR_08="%s besteht bereits als Spezialdatei und kann nicht berschrieben werden."
    ST_IBP_INFO_24="Es wird versucht, das Zusatzmodul fr den Browser - %s zu installieren"
    ST_IBP_INFO_16="Zusatzmodul wird in %s installiert"
    ST_IBP_INFO_15="Bei Problemen finden Sie Anweisungen zum Hinzufgen von neuen Plugins in der Dokumentation Ihres Browsers."
    ST_IBP_INFO_27="Mit dieser Option wird versucht, das Zusatzmodul fr Mozilla/Firefox zu installieren, je nachdem, welches gefunden wird."
    ST_IBP_ERR_10="Der Installationsordner %s wurde nicht gefunden."
    ST_IBP_INFO_06="Geben Sie das Installationsverzeichnis fr Adobe Reader 9.1 ein [%s] "
    ST_CAPS_Y="J"
    ST_IBP_INFO_18="Automatische Installation abgeschlossen."
    ST_IBP_ERR_09="HOME-Variable kann nicht aus der Umgebung abgefragt werden. HOME-Verzeichnis wurde nicht gefunden."
    ST_IBP_ERR_02="Der Ordner %s fr die Browser-Zusatzmodule wurde nicht gefunden."
    ST_IBP_INFO_08="Das Zusatzmodul ist bereits installiert. Soll es wirklich berschrieben werden? [%s/%s] "
    ST_IBP_INFO_10="Installation abgeschlossen."
    ST_SMALL_Y="j"
    ST_IBP_ERR_04="Die vorherige Version des Zusatzmoduls in %s konnte nicht entfernt werden."
    ST_IBP_INFO_02="Globale Installation (als Root-Anwender)"
}

if echo $LANG | grep -i utf >/dev/null; then
    set_lang_DEU_utf
else
    set_lang_DEU
fi

INSTALL_PATH=

#Contains the install directory path for acroread
ACROREAD_DIR=

#Contains the complete path of the browser plugin
NPPDF_FILE=

#Maintains whether we need to continue with the installation and repeat it for more browsers
INSTALL_MORE="y"


#This function records the location where we copy nppdf.so so that it can be removed during uninstall.
record_config()
{
    config_file="${ACROREAD_DIR}/Adobe/Reader9/Reader/GlobalPrefs/.config"
    echo "$@" >> "$config_file"
}


#This function gets the complete path of Adobe Reader according to this script.
GetInstallPath()
{
	CURRENT_PATH=`pwd`
	INSTALL_PATH=`dirname "$0"`
	#This would give us <actual_install_path>/Adobe/Reader9/Browser.
	#We need to strip it of Adobe/Reader9/Browser.
	COMPLETE_PATH="${INSTALL_PATH}/../../.."
	cd "$COMPLETE_PATH"
	INSTALL_PATH=`pwd`
	cd "$CURRENT_PATH"
}


#This function installs the plugin for a specific installation of the browser.
#If the installation is successful, then whenever the browser (specified in the browser install path) is run, for any user, it will have the plugin enabled.
#The way to achieve this is to look for the 'plugins' folder in the browser install path (specified by the user), and copy our plugin file to this location.
#If the plugin already exists, we prompt the user whether to overwrite or not, and proceed accordingly.
#This mechanism has been tested for Mozilla and Firefox. In both these browsers, the app searches for extensions/plugins in the 'plugins' folder.
InstallBrowserGlobal()
{
    if [ -z "$NPPDF_FILE" ]
	then
	return 1
    fi

    #Fetch the browser location
    if [ $# -eq 0 ]
	then
	BROWSER_DIR=""
	while [ -z "$BROWSER_DIR" ]
	  do
	  printf "$ST_IBP_INFO_07 - \n"
	  read BROWSER_DIR
	done
    else
	BROWSER_DIR=$1
    fi
	
    #Check existence of browser folder
    if [ ! -d "$BROWSER_DIR" ]
	then
	printf "$ST_IBP_ERR_03\n" "${BROWSER_DIR}"
    printf "%s\n" "$ST_IBP_INFO_09"
	return 1
    fi

    #Check existence of 'plugin' folder in the browser folder
    BROWSER_PLUGIN_DIR="${BROWSER_DIR}/plugins"
    if [ ! -d "$BROWSER_PLUGIN_DIR" ]
	then
	printf "$ST_IBP_ERR_02\n" "${BROWSER_PLUGIN_DIR}"
	return 1
    fi

    #Check whether plugin already exists
    if [ "$OSNAME" = "HP-UX" ]
        then
	BROWSER_PLUGIN_FILE="${BROWSER_PLUGIN_DIR}/nppdf.sl"
    else
	BROWSER_PLUGIN_FILE="${BROWSER_PLUGIN_DIR}/nppdf.so"
    fi

    if [ -f "$BROWSER_PLUGIN_FILE" ] || [ -h "$BROWSER_PLUGIN_FILE" ]
	then
	while :
	  do
	  if [ "$install_silent" = 0 ]; then
		  printf "$ST_IBP_INFO_08" "$ST_SMALL_Y" "$ST_SMALL_N"
		  read USER_CHOICE
	  else
		  USER_CHOICE="$ST_SMALL_Y";
	  fi
	  
	  if [ "$USER_CHOICE" = "$ST_SMALL_Y" ] || [ "$USER_CHOICE" = "$ST_CAPS_Y" ]
	      then
	      rm -f "$BROWSER_PLUGIN_FILE"
	      if [ $? -ne 0 ]
		  then
		  printf "$ST_IBP_ERR_04\n" "${BROWSER_PLUGIN_DIR}"
		  return 1
	      fi
	      break
	  elif [ "$USER_CHOICE" = "$ST_SMALL_N" ] || [ "$USER_CHOICE" = "$ST_CAPS_N" ]
	      then
	      printf "%s\n" "$ST_IBP_INFO_09"
	      return 0
	      break
	  fi
	done
    elif [ -b "$BROWSER_PLUGIN_FILE" ] || [ -c "$BROWSER_PLUGIN_FILE" ] || [ -d "$BROWSER_PLUGIN_FILE" ]
	then
	printf "$ST_IBP_ERR_08\n" "$BROWSER_PLUGIN_FILE"
	return 1
    fi
    
    #Copy the browser plugin file to the correct location
    cp -f "$NPPDF_FILE" "$BROWSER_PLUGIN_FILE"
    if [ $? -ne 0 ]
	then
	printf "$ST_IBP_ERR_05\n" "${NPPDF_FILE}" "${BROWSER_PLUGIN_FILE}"
	return 1
    else
    record_config remove "${BROWSER_PLUGIN_FILE}"
	printf "$ST_IBP_INFO_10\n" "${BROWSER_PLUGIN_FILE}"
	return 0
    fi
}


#This function installs the plugin for the current user only.
#If the installation is successful, then whenever Mozilla or Firefox is run, from anywhere, it will have the plugin enabled.
#The way to achieve this is to copy our plugin file in the .mozilla/plugins folder in the users' home directory.
#If the folder does not exist, we create it, and if the plugin already exists, we prompt the user whether to overwrite or not, and proceed accordingly.
#This mechanism has been tested for Mozilla and Firefox. In both these browsers, the app searches for extensions/plugins in ~/.mozilla/plugins folder.
InstallBrowserUser()
{
    if [ -z "$NPPDF_FILE" ]
	then
	return 1
    fi
    
    if [ -d "$HOME" ]
	then
	USER_DIR="$HOME"
    else
	printf "%s\n" "$ST_IBP_ERR_09"
	return 1
    fi

    CHOWN_USER="${USER}"
    if [ "${SUDO_USER+set}" = "set" -a -n "${SUDO_USER}" ]; then
        CHOWN_USER="${SUDO_USER}"
    fi

    OSNAME=`uname -s`
    if [ "$OSNAME" = "Linux" ]; then
        ID_COMMAND="`Which id`"
    elif [ "$OSNAME" = "SunOS" ]; then
        ID_COMMAND="/usr/xpg4/bin/id"
    else
        ID_COMMAND=""
    fi
    if [ -n "${ID_COMMAND}" ]; then
        CHOWN_GRP="`"${ID_COMMAND}" -gn "${CHOWN_USER}" >/dev/null 2>&1`"
    else
        CHOWN_GRP=""
    fi
    CHOWN_CMD="chown ${CHOWN_USER}"
    if [ -n "${CHOWN_GRP}" ]; then
        CHOWN_CMD="${CHOWN_CMD}:${CHOWN_GRP}"
    fi

    #Create the .mozilla & plugins folders if required
    BROWSER_DIR="$USER_DIR/.mozilla"
    if [ ! -d "$BROWSER_DIR" ]
	then
	mkdir "$BROWSER_DIR"
	if [ $? -ne 0 ]
	    then
	    printf "$ST_IBP_ERR_06\n" "${BROWSER_DIR}"
	    return 1
    else
        eval "${CHOWN_CMD} ${BROWSER_DIR}" 2>/dev/null
	fi
    fi
    
    BROWSER_PLUGIN_DIR="${BROWSER_DIR}/plugins"
    if [ ! -d "$BROWSER_PLUGIN_DIR" ]
	then
	mkdir "$BROWSER_PLUGIN_DIR"
	if [ $? -ne 0 ]
	    then
	    printf "$ST_IBP_ERR_06\n" "${BROWSER_PLUGIN_DIR}"
	    return 1
	fi
    fi
    
    #Check whether the plugin already exists
    if [ "$OSNAME" = "HP-UX" ]
        then
	BROWSER_PLUGIN_FILE="${BROWSER_PLUGIN_DIR}/nppdf.sl"
    else
	BROWSER_PLUGIN_FILE="${BROWSER_PLUGIN_DIR}/nppdf.so"
    fi

    if [ -f "$BROWSER_PLUGIN_FILE" ] || [ -h "$BROWSER_PLUGIN_FILE" ]
	then
	while :
	  do
	  if [ "$install_silent" = 0 ]; then
		  printf "$ST_IBP_INFO_08" "$ST_SMALL_Y" "$ST_SMALL_N"
		  read USER_CHOICE
	  else
		  USER_CHOICE="$ST_SMALL_Y";
	  fi
	  
	  if [ "$USER_CHOICE" = "$ST_SMALL_Y" ] || [ "$USER_CHOICE" = "$ST_CAPS_Y" ]
	      then
	      rm -f "$BROWSER_PLUGIN_FILE"
	      if [ $? -ne 0 ]
		  then
		  printf "$ST_IBP_ERR_04\n" "${BROWSER_PLUGIN_DIR}"
		  return 1
	      fi
	      break
	  elif [ "$USER_CHOICE" = "$ST_SMALL_N" ] || [ "$USER_CHOICE" = "$ST_CAPS_N" ]
	      then
	      printf "%s\n" "$ST_IBP_INFO_09"
	      return 0
	      break
	  fi
	done
    elif [ -b "$BROWSER_PLUGIN_FILE" ] || [ -c "$BROWSER_PLUGIN_FILE" ] || [ -d "$BROWSER_PLUGIN_FILE" ]
	then
	printf "$ST_IBP_ERR_08\n" "$BROWSER_PLUGIN_FILE"
	return 1
    fi
    
    #Copy the browser plugin file to the correct location
    cp "$NPPDF_FILE" "$BROWSER_PLUGIN_FILE"
    if [ $? -ne 0 ]
	then
	printf "$ST_IBP_ERR_05\n" "${NPPDF_FILE}" "${BROWSER_PLUGIN_FILE}"
	return 1
	else
    eval "${CHOWN_CMD} ${BROWSER_PLUGIN_FILE}" 2>/dev/null
    record_config remove "${BROWSER_PLUGIN_FILE}"
    fi
    
    printf "%s\n" "$ST_IBP_INFO_10"
    printf "$ST_IBP_INFO_23\n" "${BROWSER_PLUGIN_FILE}"
    printf "%s\n" "$ST_IBP_INFO_11"
}


#
# Check a given file in given path
# 1 imples file exists and 0 implies file does not exist
#
check_file_in_named_path()
{
    if [ -x "$2/$1" ]
	then
 	return 1
    fi
    
    return 0
}


#
# Check a given file in $PATH
# 1 imples file exists and 0 implies file does not exist
#
check_file_in_path()
{
    OLD_IFS=$IFS
    IFS=":"
    FOUND_PATH=""

    if [ -n "$PATH" ]
	then
 	for i in $PATH
	  do
	  if [ -d "$i" ]
	      then
	      check_file_in_named_path "$1" "$i"
	      if [ $? -eq 1 ]
		  then
		  FOUND_PATH="${i}/$1"
		  IFS=$OLD_IFS
		  return 1
	      fi
	  fi
 	done
    fi
    
    IFS=$OLD_IFS
    return 0
}


GetAbsoluteFileName()
{
    if [ -h "$1" ]
	then
	CURRENT_PATH=`pwd`
	cd `dirname $1`
	COMPLETE_PATH=`ls -l $1 | awk '{ print $NF }'`
	COMPLETE_PATH_DIR=`dirname $COMPLETE_PATH`
	COMPLETE_PATH_FILE=`basename $COMPLETE_PATH`
	cd $COMPLETE_PATH_DIR
	COMPLETE_PATH_DIR=`pwd`
	cd "$CURRENT_PATH"
	GetAbsoluteFileName ${COMPLETE_PATH_DIR}/${COMPLETE_PATH_FILE}
    else
	echo "$1"
	return 0
    fi
}

if [ -x /usr/bin/test ]; then
        TestCmd=/usr/bin/test
else
        TestCmd=test
fi 

if $TestCmd -e . 2>/dev/null; then
        TestCmdOption="-e"
else
        TestCmdOption="-f" 
fi

Which()
{
    OLD_IFS="$IFS"
    IFS=":"
    status=1

    for i in $PATH; do
        if [ -x "$i/$1" ]; then
            printf "%s\n" "$i/$1"
            status=0
            break
        fi
    done

    IFS="$OLD_IFS"
    return $status
}

MkTempInternal()
{
    if [ "${mktemp_count+set}" != "set" ]; then
        mktemp_count="0"
    fi
    mktemp_file="/tmp/acrobat.$$.${mktemp_count}"

    while "${TestCmd}" "${TestCmdOption}" "$mktemp_file"
    do
        mktemp_count="`expr $mktemp_count + 1`"
        mktemp_file="/tmp/acrobat.$$.${mktemp_count}"
    done
    touch "$mktemp_file" && chmod 600 "$mktemp_file" && echo "$mktemp_file"
}

MkTemp()
{
    template="tmp.XXXXXXXXXX";
    MKTEMP="`Which mktemp 2>/dev/null`";
    if [ "$MKTEMP" != "" ]; then
        :
    else
        MKTEMP="MkTempInternal";
    fi
    $MKTEMP /tmp/acrobat.$template
}


AutoInstallSystemPath()
{
    browser_dirs="$@"
    status=0

    if [ -d "${browser_dirs}" ]; then
        printf "\n$ST_IBP_INFO_16\n" "${browser_dirs}"
        InstallBrowserGlobal "${browser_dirs}"
        status=`expr $status \| $?`
    fi

    return $status
}


AutoInstallBrowser()
{
    printf "$ST_IBP_INFO_24\n" "$1"
    check_file_in_path $1
    if [ $? -eq 1 ]
	then
	FOUND_PATH="`eval GetAbsoluteFileName \"$FOUND_PATH\"`"
	printf "$ST_IBP_INFO_16\n" "$FOUND_PATH"
	InstallBrowserGlobal `dirname $FOUND_PATH`
	if [ $? -eq 0 ]
	    then
	    return 0
	else
	    printf "%s\n" "$ST_IBP_INFO_25"
	    return 1
	fi
    else
	printf "%s\n" "$ST_IBP_INFO_25"
	return 1
    fi
}


AutoInstall()
{
    AUTO_INSTALL_SUCCESS=0

    AutoInstallBrowser "firefox"
    if [ $? -eq 0 ]
	then
	   AUTO_INSTALL_SUCCESS=1
    fi

    USR_LIB_DIR="/usr/lib"

    filename="`MkTemp`"
    ls -1 ${USR_LIB_DIR} | grep '^firefox' > "${filename}"
    i=1
    l=`wc -l "${filename}" | awk -F' ' '{print $1}'`

    while [ ${i} -le ${l} ]
    do
        BROWSER_LIB_DIR=`head -${i} "${filename}" | tail -1`
        BROWSER_LIB_DIR="${USR_LIB_DIR}/${BROWSER_LIB_DIR}" ;

        i=`expr ${i} + 1`

        AutoInstallSystemPath "${BROWSER_LIB_DIR}" ;
    done


    if [ $? -eq 0 ]
    then
	   AUTO_INSTALL_SUCCESS=1
    fi

    rm -f "${filename}"

    AutoInstallBrowser "mozilla"
    if [ $? -eq 0 ]
	then
	   AUTO_INSTALL_SUCCESS=1
    fi

    filename="`MkTemp`"
    ls -1 ${USR_LIB_DIR} | grep '^mozilla' > "${filename}"
    i=1
    l=`wc -l "${filename}" | awk -F' ' '{print $1}'`

    while [ ${i} -le ${l} ]
    do
        BROWSER_LIB_DIR=`head -${i} "${filename}" | tail -1`
        BROWSER_LIB_DIR="${USR_LIB_DIR}/${BROWSER_LIB_DIR}" ;

        i=`expr ${i} + 1`

        AutoInstallSystemPath "${BROWSER_LIB_DIR}" ;
    done

    if [ $? -eq 0 ]
    then
	   AUTO_INSTALL_SUCCESS=1
    fi

    rm -f "${filename}"

    if [ $AUTO_INSTALL_SUCCESS -eq 1 ]
	then
	   printf "%s\n" "$ST_IBP_INFO_18"
	   return 0
    else
	   return 1
    fi
}


#This function fetches the installation path if not specified and validates the existance of the plugin file.
GetAcroreadInfo()
{
    #Prompt the user for acroread's installation path if not specified on the command prompt
    if [ -z "$1" ]
	then
	GetInstallPath
	printf "$ST_IBP_INFO_06" "${INSTALL_PATH}"
	read ACROREAD_DIR

	if [ -z "$ACROREAD_DIR" ]
	    then
	    ACROREAD_DIR="$INSTALL_PATH"
	fi
    else
	ACROREAD_DIR="$1"
    fi

    OSNAME=`uname -s`
    if [ "$OSNAME" = "Linux" ]
	then
	CONFIG_FOLDER="intellinux"
    elif [ "$OSNAME" = "SunOS" ]
	then
    ARCHTYPE=`uname -p`
    case "${ARCHTYPE}" in
        sparc) CONFIG_FOLDER=sparcsolaris;;
        i*86)  CONFIG_FOLDER=intelsolaris;;
    esac
    elif [ "$OSNAME" = "AIX" ]
        then
	CONFIG_FOLDER="rs6000aix"
    elif [ "$OSNAME" = "HP-UX" ]
        then
	CONFIG_FOLDER="hppahpux"
    else
	printf "%s\n" "$ST_IBP_ERR_11"
	return 1
    fi

    #Check for the plugin file
    if [ "$OSNAME" = "HP-UX" ]
        then
	NPPDF_FILE="${ACROREAD_DIR}/Adobe/Reader9/Browser/${CONFIG_FOLDER}/nppdf.sl"
    else
	NPPDF_FILE="${ACROREAD_DIR}/Adobe/Reader9/Browser/${CONFIG_FOLDER}/nppdf.so"
    fi

    if [ ! -f "$NPPDF_FILE" ]
	then
	printf "$ST_IBP_ERR_01\n" "${NPPDF_FILE}"
	return 1
    fi
}


Init()
{
    printf "%s\n\n" "$ST_IBP_INFO_01"
    GetAcroreadInfo "$1"
    if [ $? -ne 0 ]
	then
	return 1
    fi

    if [ ! -d "$ACROREAD_DIR" ]
	then
	printf "$ST_IBP_ERR_10\n" "$ACROREAD_DIR"
	return 1
    fi

    while :
    do
        printf "\n\n%s\n\n" "$ST_IBP_INFO_17"
        printf "%d. %s - %s\n" 1 "$ST_IBP_INFO_02" "$ST_IBP_INFO_27"
        printf "%d. %s - %s\n" 2 "$ST_IBP_INFO_03" "$ST_IBP_INFO_28"
        printf "%d. %s\n" 3 "$ST_IBP_INFO_26"
        printf "\n%s" "$ST_IBP_INFO_04"
        read answer

        case "$answer" in
            1)  AutoInstall || InstallBrowserGlobal ;;
            2)  InstallBrowserUser ;;
            3)  break ;;
        esac
    done

    return 0
}

EndingMessage()
{
    if [ -n "${NPPDF_FILE}" ]
	then
	printf "\n\n$ST_IBP_INFO_12\n\n" "${NPPDF_FILE}"
    fi

    printf "%s\n" "$ST_IBP_INFO_15"
}


ProcessCmdLineOpts()
{
    install_silent=0
    install_global=0
    install_user=0
    install_path=""

    for i in $@
    do
        case "$i" in
            "-silent") install_silent=1 ;;
            "-global") install_global=1 ;;
            "-user")   install_user=1 ;;
            *)         install_path="$i" ;;
        esac
    done
}


ProcessCmdLineOpts "$@"

if [ "$install_silent" = 1 ]
then
    if [ -n "$install_path" ]
    then
        GetAcroreadInfo "$install_path"
        (
            if [ "$install_global" = 1 ]; then
                AutoInstall
            fi

            if [ "$install_user" = 1 ]; then
                InstallBrowserUser
            fi
        ) >/dev/null 2>&1
    else
        exit 1
    fi
else
    trap 'EndingMessage; exit 0' 2
    if [ "$install_global" = 1 ]
    then
        GetAcroreadInfo
        AutoInstall || InstallBrowserGlobal
    fi

    if [ "$install_user" = 1 ]
    then
        GetAcroreadInfo
        InstallBrowserUser
    fi

    if [ "$install_user" = 0 -a "$install_global" = 0 ]
    then
        Init "$1"
    fi

    EndingMessage
fi

