#!/bin/sh

clipboard_text=$(wl-paste)
bookmarks_file="$HOME/.local/share/bookmarks/bookmarks"

if [ ! -f "$bookmarks_file" ]; then
    notify-send "Error" "Bookmark file doesn't exist. Please pull the repo."
    echo "Bookmark file doesn't exist. Please pull the repo." >&2
    exit 1
fi

# Trim leading/trailing whitespace
clipboard_text=$(echo "$clipboard_text" | xargs)

# Remove trailing slashes
clipboard_text=$(echo "$clipboard_text" | sed 's#/$##')

# Check if clipboard is not empty
if [ -n "$clipboard_text" ]; then
    if grep -Fxq "$clipboard_text" "$bookmarks_file"; then
        notify-send "Bookmark already exists!" "$clipboard_text"
    else
        echo "$clipboard_text" >> "$bookmarks_file"
        notify-send "Bookmark saved" "$clipboard_text"

        # Run git update script
        sh "$HOME/.local/bin/bookmark_update"
    fi
else
    notify-send "No text selected" "Please highlight some text to save as a bookmark."
fi
