# -*- coding: utf-8 -*-
"""
File WSGI cho shared hosting (Passenger)
File này được sử dụng để triển khai Flask app lên shared hosting
"""

import sys
import os

# ===================================================================
# QUAN TRỌNG: Cập nhật đường dẫn này cho phù hợp với server của bạn
# ===================================================================
INTERP = "/home/longitco/virtualenv/py.longit.id.vn/2.7/bin/python"
VIRTUALENV = "/home/longitco/virtualenv/py.longit.id.vn/2.7"
PROJECT_PATH = "/home/longitco/py.longit.id.vn"

# Kiểm tra và chuyển đổi Python interpreter nếu cần
if sys.executable != INTERP:
    os.execl(INTERP, INTERP, *sys.argv)

# Thêm virtual environment vào sys.path
if VIRTUALENV not in sys.path:
    site_packages = os.path.join(VIRTUALENV, 'lib', 'python2.7', 'site-packages')
    sys.path.insert(0, site_packages)

# Thêm đường dẫn project vào sys.path
if PROJECT_PATH not in sys.path:
    sys.path.insert(0, PROJECT_PATH)

# Import Flask application
try:
    from app import app as application
except ImportError as e:
    # Tạo một application đơn giản để hiển thị lỗi
    def application(environ, start_response):
        status = '500 Internal Server Error'
        output = b'Import Error: ' + str(e).encode('utf-8')
        output += b'\n\nPython Path: ' + str(sys.path).encode('utf-8')
        output += b'\n\nCurrent Directory: ' + os.getcwd().encode('utf-8')
        
        response_headers = [('Content-type', 'text/plain'),
                          ('Content-Length', str(len(output)))]
        start_response(status, response_headers)
        return [output]

# Passenger cần biến 'application' để chạy
# Application phải là WSGI callable
