1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 |
- #!/usr/bin/env bash
- # * Copyright 2007 Tristan Chabredier <wwp@claws-mail.org>
- # *
- # * This file 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, write to the Free Software
- # * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- #
- # popfile-link.sh helper script to open messages in POPFile's control center
- # in order to edit their status
- # Requires that POPFile is running and that the message has been processed
- # by it (X-POPFile-Link: header present). POPFile control center opens with
- # the web browser set in Claws Mail prefs.
- open_page()
- {
- TMPCMD=$(echo $OPEN_CMD | sed "s|\"%s\"|$1|")
- $TMPCMD &
- }
- SESSION_ID=""
- if [ "$1" = "--ask-session-id" ]
- then
- shift
- SESSION_ID=$(gxmessage -entry -center -wrap -buttons "OK:0,Cancel:1" -default "OK" \
- -name "popfile-link" -title "POPFile session ID" "Type in the ID of a running POPFile session to use")
- test -z "$SESSION_ID" -o $? -ne 0 && \
- exit 0
- fi
- test -z "$1" && \
- exit 1
- CM_DIR=$(claws-mail --config-dir)
- test -z "$CM_DIR" -o ! -d "$HOME/$CM_DIR" && \
- exit 1
- OPEN_CMD=$(grep -Em 1 "^uri_open_command=" "$HOME/$CM_DIR/clawsrc" | cut -d '=' -f 2-)
- test -z "$OPEN_CMD" && \
- exit 1
- while [ -n "$1" ]
- do
- LINK=$(grep -Eim 1 "^X\-POPFile\-Link: " "$1")
- if [ -n "$LINK" ]
- then
- LINK=${LINK:16}
- if [ -n "$SESSION_ID" ]
- then
- open_page "${LINK}\\&session=$SESSION_ID"
- else
- open_page "$LINK"
- fi
- fi
- shift
- done
- exit 0
|