aboutsummaryrefslogtreecommitdiffstats
path: root/tools/evolution-move-tasks
diff options
context:
space:
mode:
Diffstat (limited to 'tools/evolution-move-tasks')
-rwxr-xr-xtools/evolution-move-tasks135
1 files changed, 0 insertions, 135 deletions
diff --git a/tools/evolution-move-tasks b/tools/evolution-move-tasks
deleted file mode 100755
index 05c27cbce2..0000000000
--- a/tools/evolution-move-tasks
+++ /dev/null
@@ -1,135 +0,0 @@
-#!/usr/bin/env perl
-# The above is a portable way to invoke Perl, according to the GNU Autotools
-# book. It is useful since we don't know where perl is installed.
-#
-# evolution-move-tasks: a Perl script to move tasks from the Calendar folder
-# to the new Tasks folder.
-#
-
-use diagnostics;
-
-# You may have to change this if your Evolution files are somewhere else.
-$EVOLUTION_DIR = "$ENV{'HOME'}/evolution";
-
-$CALENDAR_DIR = "$EVOLUTION_DIR/local/Calendar";
-$TASKS_DIR = "$EVOLUTION_DIR/local/Tasks";
-
-# Create the Tasks folder if needed.
-&EnsureTasksFolderExists ($TASKS_DIR);
-
-# Get any tasks from the calendar .ics file.
-$tasks = &LoadTasks ("$CALENDAR_DIR/calendar.ics");
-
-# Get any tasks already in the tasks .ics file.
-$tasks .= &LoadTasks ("$TASKS_DIR/tasks.ics");
-
-# Create a new Tasks .ics file containing all the tasks.
-&OutputTasks ("$TASKS_DIR/tasks.new", $tasks);
-
-# Move the existing tasks file to a backup.
-if (-e "$TASKS_DIR/tasks.ics") {
- rename "$TASKS_DIR/tasks.ics", "$TASKS_DIR/tasks.bak"
- || die "Can't rename $TASKS_DIR/tasks.ics to $TASKS_DIR/tasks.bak";
-}
-
-# Move the new file into position.
-rename "$TASKS_DIR/tasks.new", "$TASKS_DIR/tasks.ics"
- || die "Can't rename $TASKS_DIR/tasks.new to $TASKS_DIR/tasks.ics";
-
-# Move the new Calendar file (without the Tasks) into position.
-rename "$CALENDAR_DIR/calendar.ics.new", "$CALENDAR_DIR/calendar.ics"
- || die "Can't rename $TASKS_DIR/tasks.new to $TASKS_DIR/tasks.ics";
-
-0;
-
-
-# If the evolution/local/Tasks folder does not exist, this creates it and
-# creates the metadata XML file.
-sub EnsureTasksFolderExists {
- my ($tasks_dir) = @_;
-
- return if (-e $tasks_dir);
-
- print "Creating Tasks folder in: $tasks_dir\n";
-
- mkdir ($tasks_dir, 0777)
- || die "Can't create Tasks folder directory: $tasks_dir";
-
- $metadata = "$tasks_dir/folder-metadata.xml";
- open (METADATA, ">$metadata")
- || die "Can't create metadata file: $metadata";
-
- print METADATA <<EOF;
-<?xml version="1.0"?>
-<efolder>
- <type>tasks</type>
- <description>Tasks</description>
-</efolder>
-EOF
-
- close (METADATA);
-}
-
-
-sub LoadTasks {
- my ($icalendar_file) = @_;
-
- return "" if (! -e $icalendar_file);
-
- open (ICSFILE, $icalendar_file)
- || die "Can't open iCalendar file: $icalendar_file";
-
- open (NEWICSFILE, ">$icalendar_file.new")
- || die "Can't open iCalendar file: $icalendar_file.new";
-
- $tasks = "";
- $in_task = 0;
- while (<ICSFILE>) {
- if ($in_task) {
- $tasks .= $_;
-
- if (m/^END:VTODO/) {
- $in_task = 0;
- }
-
- } else {
- if (m/^BEGIN:VTODO/) {
- print "Found task\n";
-
- $tasks .= $_;
- $in_task = 1;
- } else {
- print NEWICSFILE $_;
- }
- }
- }
-
- close (NEWICSFILE);
- close (ICSFILE);
-
- return $tasks;
-}
-
-
-sub OutputTasks {
- my ($icalendar_file, $tasks) = @_;
-
- open (ICSFILE, ">$icalendar_file")
- || die "Can't create iCalendar file: $icalendar_file";
-
- print ICSFILE <<EOF;
-BEGIN:VCALENDAR
-CALSCALE
- :GREGORIAN
-PRODID
- :-//Helix Code//NONSGML Evolution Calendar//EN
-VERSION
- :2.0
-$tasks
-END:VCALENDAR
-EOF
-
- close (ICSFILE);
-}
-
-