[FIXED] Mostrar licencias de Odoo solo cuando el tipo de proyecto es Odoo

This commit is contained in:
Mauro Rosero P. 2025-03-12 18:23:20 -05:00
parent 7ceff0334f
commit 7b6e7bf018
Signed by: mrosero
GPG key ID: 83BD2A5F674B7E26

View file

@ -187,23 +187,6 @@ function request_project_type() {
fi
}
# Función para solicitar la descripción del proyecto
function request_project_description() {
dialog_input_box "${proj_012}" "${proj_013}" ""
if [ $codex -ne 0 ]; then
echo "${head_canceled}"
exit 1
fi
PROJECT_DESCRIPTION="$value"
# Usar una descripción por defecto si está vacía
if [ -z "$PROJECT_DESCRIPTION" ]; then
PROJECT_DESCRIPTION="Proyecto de tipo $PROJECT_TYPE creado con MRDevs Tools."
fi
}
# Función para solicitar la licencia del proyecto
function request_project_license() {
# Construir las opciones para el diálogo
@ -216,9 +199,28 @@ function request_project_license() {
IFS=$'\n' sorted_keys=($(sort <<<"${license_keys[*]}"))
unset IFS
# Establecemos AGPL-3.0 como seleccionada por defecto (es la licencia predeterminada del proyecto)
# Filtramos las licencias específicas de Odoo si el proyecto no es de tipo odoo
filtered_keys=()
for license in "${sorted_keys[@]}"; do
if [ "$license" == "AGPL-3.0" ]; then
# Si es licencia de Odoo (OPL o OEEL) y el proyecto no es de tipo odoo, la omitimos
if [[ "$license" == "OPL-1.0" || "$license" == "OEEL-1.0" ]]; then
if [[ "$PROJECT_TYPE" == "odoo" ]]; then
filtered_keys+=("$license")
fi
else
filtered_keys+=("$license")
fi
done
# Establecemos AGPL-3.0 como seleccionada por defecto (es la licencia predeterminada del proyecto)
# Para proyectos Odoo, usar OPL-1.0 como predeterminada
default_license="AGPL-3.0"
if [[ "$PROJECT_TYPE" == "odoo" ]]; then
default_license="OPL-1.0"
fi
for license in "${filtered_keys[@]}"; do
if [ "$license" == "$default_license" ]; then
OPTIONS="$OPTIONS $license \"$license\" on"
else
OPTIONS="$OPTIONS $license \"$license\" off"
@ -235,13 +237,34 @@ function request_project_license() {
PROJECT_LICENSE="$value"
PROJECT_LICENSE_TEXT="${LICENSE_TEXTS[$PROJECT_LICENSE]}"
# Si por alguna razón no se encuentra la licencia, usamos AGPL-3.0 por defecto
# Si por alguna razón no se encuentra la licencia, usamos la predeterminada según el tipo de proyecto
if [ -z "$PROJECT_LICENSE_TEXT" ]; then
PROJECT_LICENSE="AGPL-3.0"
if [[ "$PROJECT_TYPE" == "odoo" ]]; then
PROJECT_LICENSE="OPL-1.0"
else
PROJECT_LICENSE="AGPL-3.0"
fi
PROJECT_LICENSE_TEXT="${LICENSE_TEXTS[$PROJECT_LICENSE]}"
fi
}
# Función para solicitar la descripción del proyecto
function request_project_description() {
dialog_input_box "${proj_012}" "${proj_013}" ""
if [ $codex -ne 0 ]; then
echo "${head_canceled}"
exit 1
fi
PROJECT_DESCRIPTION="$value"
# Usar una descripción por defecto si está vacía
if [ -z "$PROJECT_DESCRIPTION" ]; then
PROJECT_DESCRIPTION="Proyecto de tipo $PROJECT_TYPE creado con MRDevs Tools."
fi
}
# Función para crear la estructura del proyecto
function create_project_structure() {
# Crear la carpeta del proyecto