#!/bin/bash ###################################################################### #Copyright (C) 2018 Kris Occhipinti #https://filmsbykris.com #This program is free software: you can redistribute it and/or modify #it under the terms of the GNU General Public License as published by #the Free Software Foundation, either version 3 of the License, or #(at your option) any later version. #This program is distributed in the hope that it will be useful, #but WITHOUT ANY WARRANTY; without even the implied warranty of #MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #GNU General Public License for more details. #You should have received a copy of the GNU General Public License #along with this program. If not, see . ###################################################################### notes="$HOME/.notes" minutes=15 #number of minutes for notifications url='http://filmsbykris.com/scripts/2018/note/' function main(){ echo "Welcome..." if [ "$1" = "add" ] then add elif [ "$1" = "notify" ] then notify else cat "$notes" fi exit 0 } function notify(){ c=$(date +%s) m=$(($minutes*60+$c)) cat "$notes"|while read line; do time="$(echo $line|cut -d\| -f1)" date="$(echo $line|cut -d\| -f2)" title="$(echo $line|cut -d\| -f3)" note="$(echo $line|cut -d\| -f4)" if (( $time > $c )) then if (( $time < $m )) then title="$(rawurlencode "$title")" note="$(rawurlencode "$note")" url="$url?title=$title¬e=$note" notify-send -t 0 "$title" "$note $url" fi fi done } function add(){ echo "When would you like to be reminded?" read t date -d "$t" || (echo "bad date";exit 1) time="$(date +%s -d "$t")" date="$(date -d "$t")" #echo "Setting reminder for $date" echo -n "Title:" read title echo -n "Note:" read note echo "$time|$date|$title|$note" >> "$notes" } rawurlencode() { local string="${1}" local strlen=${#string} local encoded="" local pos c o for (( pos=0 ; pos