# -*- encoding: utf-8 -*-
import os
from pathlib import Path

class Config:
    BASE_DIR = Path(__file__).resolve().parent

    USERS_ROLES  = { 'ADMIN': 1, 'USER': 2 }
    USERS_STATUS = { 'ACTIVE': 1, 'SUSPENDED': 2 }

    # Celery
    CELERY_BROKER_URL     = "redis://localhost:6379"
    CELERY_RESULT_BACKEND = "redis://localhost:6379"
    CELERY_HOSTMACHINE    = "celery@app-generator"

    # Secret key
    SECRET_KEY = os.getenv('SECRET_KEY', 'S3cret_999')

    # GitHub OAuth
    GITHUB_ID      = os.getenv('GITHUB_ID', None)
    GITHUB_SECRET  = os.getenv('GITHUB_SECRET', None)
    SOCIAL_AUTH_GITHUB = bool(GITHUB_ID and GITHUB_SECRET)

    # Google OAuth
    GOOGLE_ID     = os.getenv('GOOGLE_ID', None)
    GOOGLE_SECRET = os.getenv('GOOGLE_SECRET', None)

    # Debug flag
    def __init__(self, env_name='development'):
        self.env_name = env_name
        self.DEBUG = True if env_name == 'development' else False
