#!/usr/bin/env bash
# This file contains common functions used in
# several files.
# Read in language files
source ${BBROOTDIR}/lang/${BBLANG}/BashBurn.lang
source ${BBROOTDIR}/lang/${BBLANG}/commonfunctions.lang
# Checks if argument is zero characters
check_length()
{
NULLSTRING=0
NONNULL=1
TESTSTRING=$1 # Set TESTSTRING to argument
if [[ ${#TESTSTRING} = 0 ]]; then # Is TESTSTRING empty?
return $NULLSTRING # Yes, return 0
else
return $NONNULL # No, return 1
fi
}
# Wait for enter to be pressed
wait_for_enter()
{
while true; do
echo $bb_press_enter
read temp
if [[ "$temp" = "" ]]; then
break
else
continue
fi
done
}
# Function to check whether CD is blank or not
check_cd_status()
{
if eval 'dd if=${BBCDWRITER} of=/dev/null bs=1 count=1 &> /dev/null' ; then
BB_CDSTATUS="USED"
else
BB_CDSTATUS="BLANK"
fi
}
# Function to blank CD
blank_cd()
{
echo $bb_cdrw_blank1
if eval "${BB_CDBURNCMD} -v dev=${BBCDWRITER} blank=${BBBLANKING} speed=${BBSPEED}" ;then
echo $bb_cdrw_blank2
wait_for_enter
else
# Forced blanking
echo $bb_cdrw_blank3
if eval "${BB_CDBURNCMD} -v dev=${BBCDWRITER} blank=${BBBLANKING} speed=${BBSPEED} -force"; then
echo $bb_cdrw_blank4
wait_for_enter
else
echo $bb_cdrw_blank5
blank_failed="TRUE"
wait_for_enter
fi
fi
}
ask_for_blanking()
{
if [ ${BB_CDSTATUS} == "USED" ]; then
echo $bb_cf_text1
echo $bb_cf_text2
echo $bb_cf_text3
echo -n "(yes/no/abort) |> "
read choice
if [ ${choice} == "yes" ]; then
blank_cd
elif [ ${choice} == "abort" ]; then
echo $bb_cf_text4
wait_for_enter
exit
else
echo $bb_cf_text5
sleep 3s
fi
if [ ${blank_failed} == "TRUE" ]; then
echo $bb_cf_text6
wait_for_enter
exit
fi
fi
}
syntax highlighted by Code2HTML, v. 0.9.1