diff options
author | Silvio Rhatto <rhatto@riseup.net> | 2014-09-18 16:37:16 -0300 |
---|---|---|
committer | Silvio Rhatto <user@example.org> | 2014-09-18 16:37:16 -0300 |
commit | 897140b3fef3aa51990ba28f838a28764304b6b7 (patch) | |
tree | 80e753d212caa6ac52ea8ecd184b65f81f50ad38 /parse-remind | |
download | utils-calendar-897140b3fef3aa51990ba28f838a28764304b6b7.tar.gz utils-calendar-897140b3fef3aa51990ba28f838a28764304b6b7.tar.bz2 |
Initial import
Diffstat (limited to 'parse-remind')
-rwxr-xr-x | parse-remind | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/parse-remind b/parse-remind new file mode 100755 index 0000000..bdd9f23 --- /dev/null +++ b/parse-remind @@ -0,0 +1,41 @@ +#!/usr/bin/perl +# +# This script is designed to have an email piped to it eg. from mutt. +# It will split apart all the text/calendar attachments and enter them into +# the 'remind' calendar. +# + +use strict; +use warnings; + +use MIME::Parser; + +my $CONVERT = '~/.mutt/ical2rem.pl'; +my $REMINDERS = '~/remind/mutt.rem'; + +################################################################################ + +my $parser = new MIME::Parser; +$parser->output_under('/tmp'); +my $entity = $parser->parse(\*STDIN); + +my @parts = $entity->parts(); +my $count = 0; + +foreach my $part (@parts) { + if ($part->head->mime_type eq 'text/calendar') { + my $body = $part->bodyhandle; + my $cmd = $CONVERT.' '.$body->path.' >> '.$REMINDERS; + print STDERR `$cmd`; + last if ($? != 0); + $count++; + } +} + +$parser->filer->purge; +if ($count == 0) { + print STDERR "No calendar entries found."; + exit(1); +} + +exit(0); |