#!/bin/bash

# lcopy_dir.sh - Create a directory with symlinks to CMass0 contents
# Usage: lcopy_dir.sh <new_directory_name>

set -e

if [ -z "$1" ]; then
    echo "Usage: $0 <new_directory_name>"
    exit 1
fi

NEW_DIR="$1"
SOURCE_DIR="/Volumes/Scratch/Sites/CMass0"

if [ ! -d "$SOURCE_DIR" ]; then
    echo "Error: Source directory '$SOURCE_DIR' does not exist" >&2
    exit 1
fi

# Create the new directory
if [ -e "$NEW_DIR" ]; then
    echo "Error: '$NEW_DIR' already exists" >&2
    exit 1
fi
mkdir "$NEW_DIR"
mkdir "$NEW_DIR/sites"

# Link all files/directories except excluded ones
for item in "$SOURCE_DIR"/*; do
    item_name=$(basename "$item")

    # Skip excluded items
    case "$item_name" in
        sites)
            continue
            ;;
    esac

    # Create symbolic link
    ln -s "$item" "$NEW_DIR/$item_name"
done

# Also handle hidden files (except excluded ones)
for item in "$SOURCE_DIR"/.*; do
    [ -e "$item" ] || continue
    item_name=$(basename "$item")

    # Skip . and ..
    if [ "$item_name" = "." ] || [ "$item_name" = ".." ]; then
        continue
    fi

    # Skip excluded items
    case "$item_name" in
        .wdmaker|.smbatcher)
            continue
            ;;
    esac

    # Create symbolic link
    ln -s "$item" "$NEW_DIR/$item_name"
done

echo "Created $NEW_DIR with symlinks to CMass0 contents"
