#!/bin/bash

# This file is part of the Bodhi Linux Web Browser Manager.
#
# License: GPL-3.0 or later
#
# (c) Bodhi Linux Team (2022-2023)
# (c) Feren Team (2015-2020) <ferenosdev@outlook.com>
# (c) AZorin 2010-(2015) <azorin@zoringroup.com>
# (c) Zorink (2010) <zorink@zoringroup.com>

# shellcheck disable=SC2181

# Check if program is installed
dpkg -l opera-stable | grep -q ^ii

if [ $? -eq 0 ]; then
    if [ -e "/usr/bin/opera" ]; then
        zenity --info --title="Information" --text="Opera is already installed" --no-wrap &
        exit 0
    fi
fi

# Check for root
if [ ! "$(whoami)" = "root" ]; then
    zenity --question --title="Continue?" --text "The use of Opera is governed by the Terms of Use and Privacy Policy found at:\n\n    <a href='https://www.opera.com/terms'>https://www.opera.com/terms</a>\n    <a href='https://www.opera.com/privacy'>https://www.opera.com/privacy</a>\n\nAre you sure you want to install Opera?"

    if [ ! $? -eq 0 ]; then
        exit 0
    fi

    pkexec "$0"

    if [ $? -eq 127 ]; then
        exit 0
    fi

    # Double Check Package
    if [ -e "/usr/bin/opera" ]; then
        zenity --info --title="Installation Complete" --text="Opera was successfully installed" --no-wrap &
        exit 0
    fi
    # Error
    zenity  --error --text="Web Browser Manager couldn't install Opera successfully

A log can be found at File System/tmp/opera-install-log" --title="Error" --no-wrap &
    exit 0
fi

# Check if program is installed
dpkg -l opera-stable | grep -q ^ii

if [ ! $? -eq 0 ]; then
    if [ ! -e "/usr/bin/opera" ]; then
        # Add PPA if it doesn't exist
        if [ ! -f /etc/apt/sources.list.d/opera-stable.list ]; then
            wget -qO - https://deb.opera.com/archive.key | sudo tee /usr/share/keyrings/opera-archive-keyring.key  2>&1 1>/dev/null
            if [ ! $? -eq 0 ]; then
                echo "Failed to download keyring" >/tmp/opera-install-log 2>&1
                exit 1
            fi
            echo "deb [signed-by=/usr/share/keyrings/opera-archive-keyring.key] https://deb.opera.com/opera-stable/ stable non-free" | sudo tee /etc/apt/sources.list.d/opera-stable.list  2>&1 1>/dev/null
        fi
        # Log output
        exec 1>/tmp/opera-install-log 2>&1
        sleep 1
        # Install program
        apt-get update
        echo "opera-stable opera-stable/add-deb-source boolean true" | debconf-set-selections
        apt-get -y install opera-stable
    fi
    exit 0
fi

# Error
zenity  --error --text="An error occured while initiating the Opera installation process" --title="Error" --no-wrap &
exit 0
