#!/bin/bash
CONFIG_DIR="$HOME/.config/epiphany"
COOKIES="cookies.sqlite"
WHITELIST="cookies.whitelist.txt"
LOCALSTORAGE_DIR="$HOME/.local/share/epiphany/localstorage"


# Run Epiphany
/usr/bin/epiphany $@
RC=$?
if [[ $RC != 0 ]]; then
    exit $RC
fi


### Delete cookies ###
# Go to config directory
cd "$CONFIG_DIR"

# Check cookie file
if [ ! -e "$COOKIES" ]; then
    exit
fi

# Check whitelist
if [ ! -e "$WHITELIST" ]; then
    exit
fi

# Read whitelist
domainList=()
while read domain
do
    if [ -n "$domain" ]; then
        domainList=(${domainList[@]} $domain)
    fi
done < "${WHITELIST}"

# Join whitelist to string
function join {
    local IFS="$1";
    shift;
    echo "$*";
}
domainString=`join , "${domainList[@]}"`
domainString=\'${domainString//,/\',\'}\'

# Delete cookies
sqlite3 cookies.sqlite "DELETE FROM moz_cookies WHERE host NOT IN (${domainString});"


### Delete locale storage ###
cd "$LOCALSTORAGE_DIR"
rm *.localstorage
if [ -e "StorageTracker.db" ]; then
    rm StorageTracker.db
fi
