#!/usr/bin/perl

echo("Running");

# copy our default PAC file to it's correct location
echo("Copying default PAC file over to user's home directory...");
system("mv -f \"/Applications/Dojo Offline Toolkit/.offline-pac\" \"$ENV{HOME}\"");
system("chown `logname`:`logname` \"$ENV{HOME}/.offline-pac\"");

# copy our launch agent file over
echo("Copying launch agent file over...");
system("mkdir -p \"$ENV{HOME}/Library/LaunchAgents\"");
system("mv -f \"/Applications/Dojo Offline Toolkit/org.dojo.dot.DojoOfflineLaunchd.plist\" \"$ENV{HOME}/Library/LaunchAgents/org.dojo.dot.DojoOfflineLaunchd.plist\"");
system("chown `logname`:`logname` \"$ENV{HOME}/Library/LaunchAgents/org.dojo.dot.DojoOfflineLaunchd.plist\"");

# create an offline cache directory if one doesn't exist
echo("Creating offline cache directory...");
system("sudo -u `logname` mkdir \"$ENV{HOME}/.offline-cache\"");

# start Dojo Offline up now, but not under root.
# start it as the user who is logged in, which is more secure
# and ensures that any files that are written out are owned
# by this user process
echo("Starting up Dojo Offline processes under login account `logname`...");
system("sudo -u `logname` launchctl load \"$ENV{HOME}/Library/LaunchAgents/org.dojo.dot.DojoOfflineLaunchd.plist\"");
system("sudo -u `logname` launchctl start org.dojo.dot.DojoOfflineLaunchd");	
echo("Finished installing Dojo Offline.");

exit 0;

sub echo{
	my $msg = shift;
	$msg = "postflight: " . $msg;
	`echo "$msg" >> ~/dot_install.log 2>&1`;
}