Sindbad~EG File Manager

Current Path : /home/numerotech/live.numerotech.com/common_user_dashboard/core/
Upload File :
Current File : //home/numerotech/live.numerotech.com/common_user_dashboard/core/__init__.py

from flask import Flask,render_template,request
from flask_session import Session
from flask_wtf import CSRFProtect 
import os,time
import datetime
from datetime import timedelta,date,datetime
import traceback
import logging

app = Flask(__name__)


app.config.from_object('core.config.SECRET_KEY')
app.config.from_object('core.config.ProductionConfig')

csrf = CSRFProtect(app) 

Session(app)

os.environ['TZ'] ='Asia/Calcutta'
time.tzset()


config = app.config



from core.library.cryptography import Cryptography
from core.library.auth import Auth
from core.library.route_group import RouteGroup
from core.library.helper import Helper
# from core.model.Log import Log

current_app = app

# from core import routes
from core.model.Log import Log

from core.controller.UserController import app as user
app.register_blueprint(user, url_prefix='')

from core.controller.AdminController import app as admin
app.register_blueprint(admin, url_prefix='/admin')

from core.controller.NoticeBoardController import app as noticeboard
app.register_blueprint(noticeboard, url_prefix='')

from core.controller.PeerSupportController import app as peersupport
app.register_blueprint(peersupport, url_prefix='')


@app.errorhandler(404)
def page_not_found(e):
	return render_template('user/404.html'), 404


class SQLAlchemyHandler(logging.Handler):
	def emit(self, record):
		trace = None
		exc = record.__dict__['exc_info']
		if exc:
			trace = traceback.format_exc()

		path    = request.path
		method  = request.method
		ip      = request.remote_addr    
		user_agent = request.headers.get('User-Agent')    

		data = {
				'url'           : path,
				'logger_name'   : record.__dict__['name'],
				'level'         : record.__dict__['levelname'],
				'context'       : trace,
				'message'       : record.__dict__['msg'],
				'created_at'    : datetime.now(),
				'ip_address'    : ip,
				'app_type'      : 'User DashBoard',
				'host_url'      : request.host,
				'user_agent'    : user_agent
				}    
		if record.__dict__['name'] != 'sqlalchemy.pool.impl.QueuePool':	
			Log().insert(data)    

  

logger = logging.getLogger(__name__)
logger.setLevel(logging.INFO)

ch = SQLAlchemyHandler()
ch.setLevel(logging.INFO)

formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
ch.setFormatter(formatter)
loggers = [logger, logging.getLogger('sqlalchemy'), logging.getLogger('flask.app')]

for l in loggers:
	l.addHandler(ch)

Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists