#!/bin/bash # doc cmd_import_images { # # DESCRIPTION # cmd_import_images - Imports CD images into GIT_DIR # # USAGE # cmd_import_images [<...>] # # DEPENDENCIES src/import_images # # } cmd_import_images() { local GIT_DIR="${1}" local SOURCE="${2}"; shift 2 local dirList=("${@}") for dir in ${dirList[@]}; do folderList=($(find "${dir}" -name '*.cue' -printf '%h\n' | awk '!seen[$0]++')) # Consolidating all detected images for folder in ${folderList[@]}; do _msg EXEC "Consolidating ${folder}" local fileList=($(find "${folder}" \( -name '*.flac' -o -name '*.cue' -o -name '*.accurip' -o -name '*.log' -o -name '*.jpg' -o -name '*.png' \) )) for ext in flac cue accurip log jpg; do local fileList=($(find "${folder}" -name "*.${ext}")) [[ ${#fileList[@]} -gt 1 ]] && return 1 case ${ext} in flac) local IMG="${fileList}" [[ -z "${IMG}" ]] && return 2 ;; cue) local CUE="${fileList}" [[ -z "${CUE}" ]] && return 2 ;; (accurip) local ACCURIP="-a \"${fileList}\"" ;; (log) local LOG="-l \"${fileList}\"" ;; (jpg) local COVER="-c \"${fileList}\"" ;; esac done import_images "${GIT_DIR}" "${SOURCE}" "${IMG}" "${CUE}" ${ACCURIP} ${LOG} ${JPG} local EXIT=$? [[ ${EXIT} -eq 0 ]] _msg OK || _msg WARN "Import_images exited with code ${EXIT}" done # Import folders local importList=($(find ${GIT_DIR}/.import/${SOURCE}/ -mindepth 1 -maxdepth 1 -type d -printf '%p\t')) for import in ${importList[@]}; do _msg EXEC "Importing ${import}" import_src "${GIT_DIR}" "${import}" local EXIT=$? [[ ${EXIT} -eq 0 ]] _msg OK || _msg WARN "import_src exited with code ${EXIT}" done done }