#!/bin/bash

# ======================================================================
# File:       tahomatweaks
# Author:     Charlie Martínez® <cmartinez@quirinux.org>
# License:    BSD 3-Clause "New" or "Revised" License
# Purpose:    Ajustes predeterminados para Tahoma2D en Quirinux.
# Supported:  Debian and derivatives (originally for Quirinux 2.0)
# ======================================================================

#
# Copyright (c) 2019-2025 Charlie Martínez. All Rights Reserved.
# License: BSD 3-Clause "New" or "Revised" License
# Authorized and unauthorized uses of the Quirinux trademark:
# See https://www.quirinux.org/aviso-legal
#
# Tahoma2D and OpenToonz son marcas registradas de sus respectivos 
# dueños, y cualquier otro proyecto mencionado pertenece a sus autores.
#

LINE_TO_ADD="8K 960, 1920x960, 2/1"
DATE_FLAG="06-07-2025_18-50"

echo "========== INICIANDO AJUSTES DE TAHOMA2D =========="

for USER_DIR in /home/*; do
    if [ -d "$USER_DIR" ]; then
        USERNAME=$(basename "$USER_DIR")
        USER_HOME="$USER_DIR"
        SOURCE_DIR="$USER_HOME/.local/share/Tahoma2D/tahomastuff/quirinux-tweaks/"
        FLAG_FILE="$SOURCE_DIR/ok-tweaks_$DATE_FLAG"
        PROFILE_DIR="$USER_HOME/.local/share/Tahoma2D/tahomastuff/profiles/users/$USERNAME"

        echo "Procesando usuario: $USERNAME"

        # === Copiar tweaks si no se ha hecho ===
        if [ ! -f "$FLAG_FILE" ]; then
            echo "  -> Copiando tweaks para $USERNAME..."
            if [ -d "$SOURCE_DIR" ]; then
                mkdir -p "$PROFILE_DIR"
                cp -r "$SOURCE_DIR"* "$PROFILE_DIR" && touch "$FLAG_FILE"
                echo "     Se copiaron los tweaks y se creó el archivo de control."
            else
                echo "     ERROR: El directorio de tweaks no existe: $SOURCE_DIR"
            fi
        else
            echo "  -> Los tweaks ya fueron copiados previamente."
        fi

        # === Revisar y modificar reslist.txt y cleanupreslist.txt ===
        echo "  -> Verificando resolución personalizada en archivos..."

        for FILE in "reslist.txt" "cleanupreslist.txt"; do
            FILE_PATH="$PROFILE_DIR/$FILE"
            if [ -f "$FILE_PATH" ]; then
                if ! grep -Fxq "$LINE_TO_ADD" "$FILE_PATH"; then
                    # Asegurar salto de línea si el archivo no termina con uno
                    if [ -s "$FILE_PATH" ] && [ "$(tail -c1 "$FILE_PATH")" != "" ]; then
                        echo "" >> "$FILE_PATH"
                    fi
                    echo "$LINE_TO_ADD" >> "$FILE_PATH"
                    echo "     + Línea agregada a $FILE"
                else
                    echo "     = Línea ya presente en $FILE"
                fi
            else
                echo "     - Archivo no encontrado: $FILE (omitido)"
            fi
        done

        echo ""
    fi
done

echo "========== FINALIZADO =========="
