#!/bin/bash
#
##################################################################
#                                                                
#	CDR Dialog                                                
#	Version: 1.1
#	Date: 15 Feb 2004
#	Author: Robert Winkler <robert@bioprocess.org>
#
##################################################################

# CDR Dialog Copyright (C) 2002 Robert Winkler
#
# This program 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 2 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., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
#
# If you would like to negotiate alternate licensing terms, you may do
# so by contacting the author: Robert Winkler <robert@bioprocess.org>

EndProgram=0
until [ $EndProgram = 1 ]; do
	dialog --menu "CDR Dialog 1.1" 20 50 10 1 "Eject CD-ROM/ CD-R" 2 "Load CD-ROM/ CD-R" 3 "Copy Audio CD 1:1" 4 "Copy Data CD 1:1" 5 "Create Data CD" 6 "Blank CD-RW" 7 "Images, Data, Disk Space" 9 "Quit" 2>/tmp/cdrdialog.tmp
if [ $? = 1 ]; then exit 1; fi     
#Main Menu
    read Selection_M </tmp/cdrdialog.tmp
    case $Selection_M in
	1)	cdrecord -eject dev=0,0,0
		cdrecord -eject dev=0,1,0
		echo ""
		echo "Press <RETURN>"
		read Return ;;
	2)	cdrecord -load dev=0,0,0 
		echo ""
		echo "Press <RETURN>"
		read Return
		cdrecord -load dev=0,1,0 
		echo ""
		echo "Press <RETURN>"
		read Return ;;
	3)	dialog --menu "Copy Audio CD 1:1" 20 50 10 1 "Copy Audio CD (Steps 2,3)" 2 "Read Audio CD (Create Image)" 3 "Write Audio CD from Image" 4 "Remove Image/TOC" 2>/tmp/cdrdialog.tmp
		read Selection_3 </tmp/cdrdialog.tmp
		case $Selection_3 in
		1) time cdrdao read-cd --device 0,0,0 --driver generic-mmc --read-raw --paranoia-mode 3 --datafile /var/cdrdialog/audiocd_image.bin /var/cdrdialog/cd.toc
		   time cdrdao write --device 0,1,0 --driver generic-mmc --buffers 64 /var/cdrdialog/cd.toc ;;
		2) time cdrdao read-cd --device 0,0,0 --driver generic-mmc --read-raw --paranoia-mode 3 --datafile /var/cdrdialog/audiocd_image.bin /var/cdrdialog/cd.toc ;;
	        3) time cdrdao write --device 0,1,0 --driver generic-mmc --buffers 64 /var/cdrdialog/cd.toc ;;
      		4) rm -vf /var/cdrdialog/audiocd_image.bin 
		   rm -vf /var/cdrdialog/cd.toc ;;
		esac
		echo ""
		echo "Press <RETURN>"   
		read Return ;;
	4)	dialog --menu "Copy Data CD 1:1" 20 50 10 1 "Copy Data CD (steps 2,3)" 2 "Read Data CD (Create Image)" 3 "Write Data CD from Image" 4 "Remove Image" 2>/tmp/cdrdialog.tmp
		read Selection_4 </tmp/cdrdialog.tmp
		case $Selection_4 in
		1) time dd if=/dev/sr0 of=/var/cdrdialog/datacd_image.raw
		   time cdrecord -v speed=48 dev=0,1,0 /var/cdrdialog/datacd_image.raw ;; 
		2) time dd if=/dev/sr0 of=/var/cdrdialog/datacd_image.raw ;;
		3) time cdrecord -v speed=48 dev=0,1,0 /var/cdrdialog/datacd_image.raw ;;
		4) rm -vf /var/cdrdialog/datacd_image.raw ;;
		esac
		echo ""
		echo "Press <RETURN>"
		read Return ;;
	5)	dialog --menu "Create Data CD" 20 50 10 1 "Create Image from /var/cdrdialog/data/" 2 "Write Image to CD-RW" 3 "Remove Image" 2>/tmp/cdrdialog.tmp
		read Selection_5 </tmp/cdrdialog.tmp
		case $Selection_5 in
		1) time mkisofs -R -o /var/cdrdialog/createdatacd_image.raw /var/cdrdialog/data ;;
		2) time cdrecord -v speed=48 dev=0,1,0 /var/cdrdialog/createdatacd_image.raw ;;
		3) rm -vf /var/cdrdialog/createdatacd_image.raw ;;
		esac
		echo ""
		echo "Press <RETURN>"
		read Return ;;
	6) 	time cdrecord -v speed=48 dev=0,1,0 blank=all
		echo ""
		echo "Press <RETURN>"
		read Return ;;
	7)	dialog --menu "Data Management" 20 50 10 1 "Images; Data Directory; Disk Space" 2 "Remove All Images" 3 "Clean /var/cdrdialog/data" 4 "Midnight Commander" 2>/tmp/cdrdialog.tmp
		read Selection_7 </tmp/cdrdialog.tmp
		case $Selection_7 in
		1) echo ""
		   echo "IMAGES"
		   ls -al /var/cdrdialog
		   echo ""
		   echo "DATA-DIRECTORY (MB)" 
		   du -m /var/cdrdialog/data
		   echo ""
		   echo "DISK SPACE"
		   df 
		   echo ""
		   echo "Press <RETURN>"
		   read Return ;;
		2) rm -vf /var/cdrdialog/* 
		   echo ""
		   echo "Press <RETURN>"
		   read Return ;;
		3) rm -Rfv /var/cdrdialog/data/* 
		   echo ""
		   echo "Press <RETURN>"
		   read Return ;;
		4) mc
		esac ;;
	9)	EndProgram=1 
		rm -vf /tmp/cdrdialog.tmp
		exit 0 ;;
    esac
done


















