#!/bin/bash # # odoo_set.sh # Modified: 2025/03/12 15:00:00 # Derechos de Autor (C) [2025] [Mauro Rosero P. (mauro.rosero@gmail.com)] # # Este programa es software libre: usted puede redistribuirlo y/o modificarlo # bajo los términos de la Licencia Pública Affero General de GNU tal como # lo publica la Free Software Foundation, ya sea la versión 3 de la licencia, # o (a su elección) cualquier versión posterior. # # Este programa se distribuye con la esperanza de que sea útil, # pero SIN NINGUNA GARANTÍA; sin siquiera la garantía implícita de # COMERCIABILIDAD o IDONEIDAD PARA UN PROPÓSITO PARTICULAR. Consulte la # Licencia Pública Affero General de GNU para obtener más detalles. # # Debería haber recibido una copia de la Licencia Pública Affero General # junto con este programa. Si no la recibió, consulte . # Script para crear proyectos Odoo # Uso: # ./odoo_set.sh DEVSPATH=devs BIN_HOME=$HOME/$DEVSPATH BIN_MESG=bin/msg BIN_LIBS=bin/lib BIN_CFGS=bin/config VERSION=1.0.0 # CHECK SHELL LANGUAGE BIN_LANG=${LANG:0:2} # LOAD BASE BASH LIBRARY source $BIN_HOME/$BIN_LIBS/base.lib # LOAD CONSOLE BASH LIBRARY source $BIN_HOME/$BIN_LIBS/console.lib # LOAD ODOO BASH LIBRARY source $BIN_HOME/$BIN_LIBS/odoo.lib # Load head messages load_messages $BIN_HOME $BIN_MESG $BIN_LANG "head" # Load odoo messages load_messages $BIN_HOME $BIN_MESG $BIN_LANG "odoo" ########### MAIN PROGRAM ########### # Set program title title="$head_000 $odmsg_000" apps_title="${odmsg_102}" # Check if dialog is not installed, exited! command_installed "dialog" if [ $? -ne 0 ] then display_devstools_header "${odmsg_000}" echo "${head_001}" exit 200 fi # Check if os is valid! get_osname if [ "${os_name}" == "${head_unknow}" ] then dialog_error_box "${head_error}" "${head_os_error}" exit 3 fi # Obtener el nombre de carpeta de proyectos desde projects.dat if [ -f "$BIN_HOME/$BIN_CFGS/projects.dat" ]; then PROJECTS_FOLDER=$(cat "$BIN_HOME/$BIN_CFGS/projects.dat" | head -n 1) else dialog_error_box "${head_error}" "${odmsg_112}" exit 4 fi # Solicitar nombre del proyecto Odoo clear dialog_input_box "${odmsg_105}" "${odmsg_106}" "" if [ $? -ne 0 ]; then dialog_error_box "${head_error}" "${head_op_error}" exit 1 fi # Validar que el nombre no esté vacío if [ -z "$value" ]; then dialog_error_box "${head_error}" "${odmsg_107}" exit 2 fi PROJECT_NAME="$value" # Mostrar progreso de creación ( echo 0; sleep 1 echo 20; echo "# ${odmsg_111}" # Crear el proyecto Odoo odoo_create_project "$PROJECT_NAME" "$PROJECTS_FOLDER" result=$? echo 80; # Mensaje basado en el resultado if [ $result -eq 0 ]; then echo "# ${odmsg_115}" elif [ $result -eq 1 ]; then echo "# ${odmsg_110}" else echo "# ${odmsg_109}" fi sleep 1 # Finalizar echo 100 sleep 1 ) | dialog --backtitle "${title}" --title "${apps_title}" --gauge "" 10 70 0 case $result in 0) dialog_error_box "${head_info}" "${odmsg_108} $HOME/$DEVSPATH/$PROJECTS_FOLDER/$PROJECT_NAME\n\n${odmsg_116}" ;; 1) dialog_error_box "${head_warning}" "${odmsg_110}" ;; 2|3) dialog_error_box "${head_error}" "${odmsg_109}" ;; esac # End Main Program clear exit 0