config.py 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. from pathlib import Path
  2. from dataclasses import dataclass
  3. @dataclass
  4. class MailConfig:
  5. server: str
  6. port: int
  7. secure: str
  8. username: str
  9. password: str
  10. email: str
  11. class config:
  12. cognos_dir = 'C:\\Program Files (x86)\\Cognos\\cer5\\bin'
  13. kunde = 'Test'
  14. versand_separat = False
  15. def __init__(self):
  16. cfg = {}
  17. self.tools_dir = Path('.').absolute()
  18. if self.tools_dir.parent.name.lower() == 'python':
  19. # development
  20. self.portal_dir = str(self.tools_dir)
  21. else:
  22. self.portal_dir = str(self.tools_dir.parent.parent.parent)
  23. self.system_dir = self.portal_dir + '\\System'
  24. self.tasks_dir = self.portal_dir + '\\Tasks'
  25. self.xml_dir = self.tasks_dir + '\\config'
  26. self.log_dir = self.tasks_dir + '\\logs'
  27. with open(self.tasks_dir + '\\GAPS.ini', 'r') as stream:
  28. for line in stream.readlines():
  29. if '=' in line:
  30. key, value = line.split('=')
  31. cfg[key] = value.replace('"', '').replace('\n', '')
  32. self.kunde = cfg.get('KUNDE', 'Test')
  33. self.system = cfg.get('SYSTEM', '')
  34. if self.system != '':
  35. self.system_dir += '\\' + self.system
  36. self.smtp = MailConfig(**{
  37. 'server': 'smtp.ionos.de',
  38. 'port': '465',
  39. 'secure': 'ssl',
  40. 'username': 'versand@global-cube.de',
  41. 'password': 'gc01smtp',
  42. 'email': 'versand@global-cube.de'
  43. })
  44. if cfg.get('SMTP_HOST') is not None:
  45. secure = {'': '', 'N': '', 'J': 'ssl', 'SSL': 'ssl', 'TLS': 'tls'}
  46. self.smtp = MailConfig(
  47. server=cfg.get('SMTP_HOST'),
  48. port=cfg.get('SMTP_PORT'),
  49. secure=secure[cfg.get('SMTP_SSL', '')],
  50. username=cfg.get('SMTP_USER'),
  51. password=cfg.get('SMTP_PW'),
  52. email=cfg.get('SMTP_FROM'),
  53. )
  54. self.versand_separat = cfg.get('VERSAND_SEPARAT') == 'J'