#!/usr/bin/perl
#
##########################
## Burncenter 3
## Copyright(c) 2005 Alexandre Janon <alex14fr@yahoo.fr>
##########################
## Non-interactive frontend for Burncenter.pm

use Burncenter;

open(CONF, "/etc/burncenter.conf") || Burncenter::reconfigure; close(CONF);

$version="3.2.1";
if($ARGV[0] eq "add") {
	$dir=$ARGV[1];
	$os=Burncenter::checkothersessions();
	if($os==1) {
		$img=Burncenter::makesecondisoimage($dir);
	} else {
		$img=Burncenter::makefirstisoimage($dir);
	}
	Burncenter::burncdimage($img,"-multi");
} elsif($ARGV[0] eq "single") {
	$dir=$ARGV[1];
	$im=Burncenter::makefirstisoimage($dir);
	Burncenter::burncdimage($im);
	system("rm -f $im");
} elsif($ARGV[0] eq "audio") {
	$dir=$ARGV[1];
	Burncenter::mp3towav($dir);
	Burncenter::burnwavfiles($dir);
} elsif($ARGV[0] eq "quickblank") {
	Burncenter::blankcdrw("fast");
} elsif($ARGV[0] eq "blank") {
	Burncenter::blankcdrw("all");
} elsif($ARGV[0] eq "copy") {
	$im=Burncenter::makecdimage();
	Burncenter::burncdimage($im);
	system("rm -f $im");
} elsif($ARGV[0] eq "copyaudio") {
	$audio=Burncenter::copyalltracks();
	Burncenter::burnwavfiles($audiofir);
	system("rm -fr $audiodir");
} elsif($ARGV[0] eq "burniso") {
	Burncenter::burncdimage($ARGV[1]);
} elsif($ARGV[0] eq "configure") {
	Burncenter::reconfigure();
} elsif($ARGV[0] eq "playlist") {
	$file=$ARGV[1];
	$dir=Burncenter::playlist2dir($playlist);
	Burncenter::mp3towav($dir);
	Burncenter::burnwavfiles($dir);
} elsif($ARGV[0] eq "readaudio") {
	$parts=$ARGV[1];
	$dir=$ARGV[2];
	$audiodir=Burncenter::copyalltracks($parts);
	if($dir ne '') {
		mkdir ($dir, 0755) if (! -d $dir);
		system("mv $audiodir/*.wav $dir");
	}
	system("rm -fr $audiodir");
} else {
	print "bcbatch, a non-interactive frontend for burncenter
Version $version, see <http://alex14.home.dyndns.org/burncenter> for updates

Usage: bcbatch [action] ... 
where action is:
	add [dir]			Add dir to current disc (handles multisession)
	single [dir]			Create a single-session disc
	audio [dir]			Burn audio files in dir onto disc
	playlist [file]			Burn playlist onto disc
	readaudio [tracks] [dir]	Copy audio tracks from CD to dir
	quickblank			Quickly blank a CDRW
	blank				Blank a CDRW
	copy				Copy a data CD
	copyaudio			Copy an audio CD
	burniso	[file]			Burn ISO image onto disc
	configure			(re)configure bcbatch/burncenter
";
}
