mirror of
https://github.com/pgadmin-org/pgadmin4.git
synced 2025-02-25 18:55:31 -06:00
Restructure to enable use of modules for different components of pgAdmin.
This commit is contained in:
63
web/pgadmin/__init__.py
Normal file
63
web/pgadmin/__init__.py
Normal file
@@ -0,0 +1,63 @@
|
||||
##########################################################################
|
||||
#
|
||||
# pgAdmin 4 - PostgreSQL Tools
|
||||
#
|
||||
# Copyright (C) 2013 - 2014, The pgAdmin Development Team
|
||||
# This software is released under the PostgreSQL Licence
|
||||
#
|
||||
# pgadmin/__init__.py - Main application startup
|
||||
#
|
||||
##########################################################################
|
||||
|
||||
import logging
|
||||
import os, sys
|
||||
from flask import Flask
|
||||
from time import time, ctime
|
||||
|
||||
# Configuration settings
|
||||
import config
|
||||
|
||||
def create_app(app_name=config.APP_NAME):
|
||||
|
||||
# Setup the app object
|
||||
app = Flask(__name__, static_url_path='')
|
||||
app.config.from_object(config)
|
||||
|
||||
##########################################################################
|
||||
# Setup logging and log the application startup
|
||||
##########################################################################
|
||||
|
||||
# Add SQL level logging, and set the base logging level
|
||||
logging.addLevelName(25, 'SQL')
|
||||
app.logger.setLevel(logging.DEBUG)
|
||||
|
||||
# We also need to update the handler on the webserver in order to see request.
|
||||
# Setting the level prevents werkzeug from setting up it's own stream handler
|
||||
# thus ensuring all the logging goes through the pgAdmin logger.
|
||||
logger = logging.getLogger('werkzeug')
|
||||
logger.setLevel(logging.INFO)
|
||||
|
||||
# File logging
|
||||
fh = logging.FileHandler(config.LOG_FILE)
|
||||
fh.setLevel(config.FILE_LOG_LEVEL)
|
||||
fh.setFormatter(logging.Formatter(config.FILE_LOG_FORMAT))
|
||||
app.logger.addHandler(fh)
|
||||
logger.addHandler(fh)
|
||||
|
||||
# Console logging
|
||||
ch = logging.StreamHandler()
|
||||
ch.setLevel(config.CONSOLE_LOG_LEVEL)
|
||||
ch.setFormatter(logging.Formatter(config.CONSOLE_LOG_FORMAT))
|
||||
app.logger.addHandler(ch)
|
||||
logger.addHandler(ch)
|
||||
|
||||
# Log the startup
|
||||
app.logger.info('################################################################################')
|
||||
app.logger.info('Starting %s v%s...', config.APP_NAME, config.APP_VERSION)
|
||||
app.logger.info('################################################################################')
|
||||
|
||||
# Register all the modules
|
||||
for m in config.MODULES:
|
||||
app.register_module(__import__('%s.views' % m).module)
|
||||
|
||||
return app
|
||||
14
web/pgadmin/utils/__init__.py
Normal file
14
web/pgadmin/utils/__init__.py
Normal file
@@ -0,0 +1,14 @@
|
||||
##########################################################################
|
||||
#
|
||||
# pgAdmin 4 - PostgreSQL Tools
|
||||
#
|
||||
# Copyright (C) 2013 - 2014, The pgAdmin Development Team
|
||||
# This software is released under the PostgreSQL Licence
|
||||
#
|
||||
# utils/__init__.py - Initialise the module
|
||||
#
|
||||
##########################################################################
|
||||
|
||||
from flask import Module
|
||||
|
||||
module = Module(__name__, 'utils')
|
||||
36
web/pgadmin/utils/views.py
Normal file
36
web/pgadmin/utils/views.py
Normal file
@@ -0,0 +1,36 @@
|
||||
##########################################################################
|
||||
#
|
||||
# pgAdmin 4 - PostgreSQL Tools
|
||||
#
|
||||
# Copyright (C) 2013 - 2014, The pgAdmin Development Team
|
||||
# This software is released under the PostgreSQL Licence
|
||||
#
|
||||
# utils/views.py - Utility views
|
||||
#
|
||||
##########################################################################
|
||||
|
||||
import config
|
||||
from utils import module
|
||||
from time import time, ctime
|
||||
|
||||
##########################################################################
|
||||
# A test page
|
||||
##########################################################################
|
||||
@module.route("/test")
|
||||
def index():
|
||||
|
||||
output = """
|
||||
Today is <b>%s</b>
|
||||
<br />
|
||||
<i>This is Flask-generated HTML.</i>
|
||||
<br /><br />
|
||||
<a href="http://www.pgadmin.org/">%s v%s</a>""" % (ctime(time()), config.APP_NAME, config.APP_VERSION)
|
||||
|
||||
return output
|
||||
|
||||
##########################################################################
|
||||
# A special URL used to "ping" the server
|
||||
##########################################################################
|
||||
@module.route("/ping")
|
||||
def ping():
|
||||
return "PING"
|
||||
Reference in New Issue
Block a user