small updates

This commit is contained in:
KniveMaker App 2025-03-04 09:01:59 +00:00
parent d799a2e8bd
commit 4c7ebaf5fe
3 changed files with 23 additions and 6 deletions

View File

@ -90,8 +90,9 @@ main() {
if [[ ! -d "$dir" ]]; then if [[ ! -d "$dir" ]]; then
log_info "Creating directory: $dir" log_info "Creating directory: $dir"
if mkdir -p "$dir"; then if mkdir -p "$dir"; then
chmod 775 "$dir" # Try to set permissions but don't fail if it doesn't work
chown ${TORRENT_USER:-debian-transmission}:${TORRENT_GROUP:-debian-transmission} "$dir" chmod 775 "$dir" 2>/dev/null || log_warn "Could not set permissions on $dir"
chown ${TORRENT_USER:-debian-transmission}:${TORRENT_GROUP:-debian-transmission} "$dir" 2>/dev/null || log_warn "Could not set ownership on $dir"
log_info "Created directory: $dir" log_info "Created directory: $dir"
else else
log_error "Failed to create directory: $dir" log_error "Failed to create directory: $dir"

View File

@ -215,15 +215,31 @@ run_in_transaction() {
# validate_directories: Ensure required directories exist and are writable # validate_directories: Ensure required directories exist and are writable
validate_directories() { validate_directories() {
local directories=("$@") local directories=("$@")
local error_count=0
for dir in "${directories[@]}"; do for dir in "${directories[@]}"; do
# Skip empty directory paths
if [[ -z "${dir}" ]]; then
continue
fi
if [[ ! -d "${dir}" ]]; then if [[ ! -d "${dir}" ]]; then
log_error "Directory missing: ${dir}" log_error "Directory missing: ${dir}"
return 1 error_count=$((error_count + 1))
continue
fi fi
if [[ ! -w "${dir}" ]]; then if [[ ! -w "${dir}" ]]; then
log_error "Write permission denied: ${dir}" log_warn "Write permission denied for: ${dir}"
return 1 log_warn "This may cause problems - the script will continue but operations may fail"
# Don't increment error_count to allow script to continue
fi fi
done done
if [[ ${error_count} -gt 0 ]]; then
log_error "${error_count} required directories are missing"
return 1
fi
return 0 return 0
} }

View File

@ -25,7 +25,7 @@ generate_checksums() {
# Skip if directory doesn't exist # Skip if directory doesn't exist
if [[ ! -d "${dir}" ]]; then if [[ ! -d "${dir}" ]]; then
return 1 return 1
} fi
# Get the most recently modified file in the directory # Get the most recently modified file in the directory
last_modified_file=$(find "${dir}" -type f ! \( -iname "*.nfo" -o -iname "*.sfv" \) -exec stat -c "%Y %n" {} \; | sort -nr | head -n1 | cut -d' ' -f2-) last_modified_file=$(find "${dir}" -type f ! \( -iname "*.nfo" -o -iname "*.sfv" \) -exec stat -c "%Y %n" {} \; | sort -nr | head -n1 | cut -d' ' -f2-)