feat(app): unificar arranque y registrar blueprint de elementor

This commit is contained in:
komkida91
2026-02-14 19:37:36 +01:00
parent 53aa755c39
commit 1a5778be2e

View File

@@ -1,17 +1,37 @@
""" """
GKACHELE SaaS PageBuilder - Sistema Modular GKACHELE SaaS PageBuilder - Sistema Modular
© 2025 GKACHELE™. Todos los derechos reservados.
""" """
import os import os
from flask import Flask, jsonify, request import sys
from config import SECRET_KEY, PORT from flask import Flask, jsonify
from database import init_db
from routes.auth import auth_bp BASE_DIR = os.path.dirname(os.path.abspath(__file__))
from routes.dashboard import dashboard_bp PROJECT_ROOT = os.path.dirname(BASE_DIR)
from routes.customizer import customizer_bp if PROJECT_ROOT not in sys.path:
from routes.admin import admin_bp sys.path.insert(0, PROJECT_ROOT)
from routes.public import public_bp
try:
from .config import SECRET_KEY, PORT
from .database import init_db
from .routes.auth import auth_bp
from .routes.dashboard import dashboard_bp
from .routes.customizer import customizer_bp
from .routes.admin import admin_bp
from .routes.public import public_bp
except ImportError:
from config import SECRET_KEY, PORT
from database import init_db
from routes.auth import auth_bp
from routes.dashboard import dashboard_bp
from routes.customizer import customizer_bp
from routes.admin import admin_bp
from routes.public import public_bp
try:
from elementor.routes import elementor_bp
except ImportError:
elementor_bp = None
app = Flask(__name__, template_folder='templates', static_folder='static') app = Flask(__name__, template_folder='templates', static_folder='static')
app.secret_key = SECRET_KEY app.secret_key = SECRET_KEY
@@ -26,6 +46,8 @@ app.register_blueprint(dashboard_bp)
app.register_blueprint(customizer_bp) app.register_blueprint(customizer_bp)
app.register_blueprint(admin_bp) app.register_blueprint(admin_bp)
app.register_blueprint(public_bp) app.register_blueprint(public_bp)
if elementor_bp is not None and 'elementor' not in app.blueprints:
app.register_blueprint(elementor_bp)
# Manejadores de Errores Globales # Manejadores de Errores Globales
@app.errorhandler(500) @app.errorhandler(500)
@@ -34,15 +56,18 @@ def handle_500(e):
response.status_code = 500 response.status_code = 500
return response return response
@app.errorhandler(404) @app.errorhandler(404)
def handle_404(e): def handle_404(e):
return jsonify({'success': False, 'error': 'No encontrado'}), 404 return jsonify({'success': False, 'error': 'No encontrado'}), 404
@app.errorhandler(Exception) @app.errorhandler(Exception)
def handle_exception(e): def handle_exception(e):
print(f"ERROR: EXCEPCION: {e}") print(f"ERROR: EXCEPCION: {e}")
return jsonify({'success': False, 'error': str(e)}), 500 return jsonify({'success': False, 'error': str(e)}), 500
# Middleware # Middleware
@app.after_request @app.after_request
def add_header(response): def add_header(response):
@@ -50,6 +75,7 @@ def add_header(response):
response.headers['Content-Security-Policy'] = "frame-ancestors *;" response.headers['Content-Security-Policy'] = "frame-ancestors *;"
return response return response
if __name__ == '__main__': if __name__ == '__main__':
print(f"GKACHELE SaaS Modular iniciado en puerto {PORT}") print(f"GKACHELE SaaS Modular iniciado en puerto {PORT}")
app.run(debug=True, host='0.0.0.0', port=PORT) app.run(debug=True, host='0.0.0.0', port=PORT)