config.py 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. import os
  2. import platform
  3. # Base Directory
  4. BASE_DIR = os.path.dirname(os.path.abspath(__file__))
  5. # Debugging
  6. DEBUG = os.getenv("RADIONICA_DEBUG", "True").lower() == "true"
  7. # Slicer Settings
  8. # If True, triggers synchronous slicing upon file upload (slower upload, exact metrics on UI)
  9. SYNC_SLICING_ON_UPLOAD = os.getenv("SYNC_SLICING", "True").lower() == "true"
  10. IS_WINDOWS = platform.system() == "Windows"
  11. if IS_WINDOWS:
  12. # Default Windows path
  13. SLICER_PATH = os.getenv("SLICER_PATH", r"C:\Program Files\Prusa3D\PrusaSlicer\prusa-slicer-console.exe")
  14. else:
  15. # Default Linux path (binary name if in PATH, or absolute path)
  16. SLICER_PATH = os.getenv("SLICER_PATH", "prusa-slicer")
  17. # Profile configuration (can be changed per machine)
  18. SLICER_CONFIG = os.getenv("SLICER_CONFIG", os.path.join(BASE_DIR, "printer_profile.ini"))
  19. # Order settings
  20. UPLOAD_DIR = os.getenv("UPLOAD_DIR", os.path.join(BASE_DIR, "uploads"))
  21. PREVIEW_DIR = os.path.join(UPLOAD_DIR, "previews")
  22. for d in [UPLOAD_DIR, PREVIEW_DIR]:
  23. if not os.path.exists(d):
  24. os.makedirs(d)
  25. # Payment Config
  26. ZIRO_RACUN = os.getenv("ZIRO_RACUN", "510-1234567890123-45")
  27. COMPANY_NAME = "RADIONICA 3D"
  28. COMPANY_PIB = os.getenv("COMPANY_PIB", "01234567")
  29. COMPANY_CITY = "Podgorica"
  30. COMPANY_ADDRESS = "Cetinjski Put, Podgorica, Montenegro"
  31. PDV_RATE = 21 # In percent
  32. # EFI Fiskalizacija
  33. EFI_ENABLED = os.getenv("EFI_ENABLED", "False").lower() == "true"
  34. EFI_CERT_PATH = os.getenv("EFI_CERT_PATH", os.path.join(BASE_DIR, "cert.p12"))
  35. EFI_CERT_PASS = os.getenv("EFI_CERT_PASS", "changeit")
  36. EFI_ENU_CODE = os.getenv("EFI_ENU_CODE", "xx123yy456")
  37. EFI_BUS_UNIT = os.getenv("EFI_BUS_UNIT", "br123")
  38. EFI_OPERATOR = os.getenv("EFI_OPERATOR", "op123")
  39. EFI_STAGING = os.getenv("EFI_STAGING", "True").lower() == "true"