if [ -z $HOME ]; then
    echo "Cannot find your user's home directory..."
    exit 1
fi

SECRETS=$HOME/.unlocker/.secrets
LOCKED_SECRETS="$SECRETS.lock"

if [ "x$1" = "xhelp" ]; then
    echo "              _            _             "
    echo "  _   _ _ __ | | ___   ___| | _____ _ __ "
    echo " | | | | '_ \| |/ _ \ / __| |/ / _ \ '__|"
    echo " | |_| | | | | | (_) | (__|   <  __/ |   "
    echo "  \__,_|_| |_|_|\___/ \___|_|\_\___|_|   "
    echo ""
    echo "Unlocker v$VERSION $(uname -op)"
    echo ""
    echo "THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR"
    echo "IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,"
    echo "FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE"
    echo "AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER"
    echo "LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,"
    echo "OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE"
    echo "SOFTWARE."
    echo ""
    echo "  Please report bugs at $HOMEPAGE"
    echo ""
    echo "Lock is one of the two helper scripts part of Unlocker."
    echo "The purpose is to encrypt (lock) secrets with GPG. Write down on a piece of"
    echo "paper the password you'll be using, otherwise there's little chances to"
    echo "recover it."
    exit 0
fi

if ! [ -x "$(command -v gpg)" ]; then
    echo "Cannot encrypt secrets..."
    echo "Please install gpg and try again"
    echo "Closing..."
    exit 1
fi

if [ $(ls -l $LOCKED_SECRETS 2> /dev/null | wc -l) = "0" ]; then
    gpg -o $LOCKED_SECRETS --symmetric --cipher-algo AES256 $SECRETS
    if [ $? != "0" ]; then
        echo "Failed to encrypt secrets..."
        echo "Closing..."
        exit 1
    fi
    echo "Secrets are now encrypted!"
    rm -f $SECRETS
else
    echo "Secrets are already encrypted"
fi
