Exemplo n.º 1
0
from flask.blueprints import Blueprint
from trading_system.api.auth_middleware import auth_middleware
from .controllers import TicketsController, TicketController


tickets = Blueprint('tickets', __name__, url_prefix='/tickets')
tickets.before_request(auth_middleware)

tickets.add_url_rule('/', view_func=TicketsController.as_view('tickets_view'), methods=['GET', 'POST'])
tickets.add_url_rule('/<int:ticket_id>', view_func=TicketController.as_view('ticket_view'), methods=['GET', 'DELETE'])
Exemplo n.º 2
0
                      __name__,
                      static_folder='../static',
                      template_folder='../templates')

logger = logging.getLogger(__name__)


def before_request_admin_exist():
    """
    Ensure databases exist and at least one user is in the user database.
    """
    if not admin_exists():
        return redirect(url_for("routes_authentication.create_admin"))


blueprint.before_request(before_request_admin_exist)


def template_exists(path):
    path_start = "{}/mycodo/mycodo_flask/templates".format(INSTALL_DIRECTORY)
    path_full = "{}/{}".format(path_start, path)
    if os.path.exists(path_full) and os.path.abspath(path_full).startswith(
            path_start):
        return True


@blueprint.context_processor
def inject_variables():
    """Variables to send with every page request."""
    form_dashboard = forms_dashboard.DashboardConfig(
    )  # Dashboard configuration in layout
Exemplo n.º 3
0
from flask import request
from flask.blueprints import Blueprint
from trading_system.api.auth_middleware import auth_middleware
from trading_system.api.utils import json_data
from trading_system.trade.balance import get_money, get_stocks
from trading_system.db import session
from trading_system import models as mx
from ..base_view import BaseView

balance = Blueprint('balance', __name__, url_prefix='/balance')
balance.before_request(auth_middleware)


class BalanceController(BaseView):
    def get(self):
        self.get_user(request)
        user_stocks = (session.query(mx.StockBalance).filter(
            mx.StockBalance.user_id == self.user.id).all())
        data = {
            'money':
            get_money(session, self.user.id),
            'stocks': [{
                'stock_id':
                item.stock_id,
                'balance':
                get_stocks(
                    session,
                    self.user.id,
                    item.stock_id,
                ),
            } for item in user_stocks]
Exemplo n.º 4
0
# Config
from config import LANGUAGES

from mycodo.mycodo_flask.general_routes import (
    before_blueprint_request,
    inject_mycodo_version,
    logged_in
)

logger = logging.getLogger('mycodo.mycodo_flask.settings')

blueprint = Blueprint('settings_routes',
                      __name__,
                      static_folder='../static',
                      template_folder='../templates')
blueprint.before_request(before_blueprint_request)  # check if admin was created


@blueprint.context_processor
def inject_dictionary():
    return inject_mycodo_version()


@blueprint.route('/settings/alerts', methods=('GET', 'POST'))
def settings_alerts():
    """ Display alert settings """
    if not logged_in():
        return redirect(url_for('general_routes.home'))

    if session['user_group'] == 'guest':
        flaskutils.deny_guest_user()
Exemplo n.º 5
0
blueprint = Blueprint('routes_static',
                      __name__,
                      static_folder='../static',
                      template_folder='../templates')

logger = logging.getLogger(__name__)


def before_request_admin_exist():
    """
    Ensure databases exist and at least one user is in the user database.
    """
    if not admin_exists():
        return redirect(url_for("routes_authentication.create_admin"))
blueprint.before_request(before_request_admin_exist)


@blueprint.context_processor
def inject_variables():
    """Variables to send with every page request"""
    try:
        control = DaemonControl()
        daemon_status = control.daemon_status()
    except Exception as e:
        logger.debug("URL for 'inject_variables' raised and error: "
                     "{err}".format(err=e))
        daemon_status = '0'

    misc = Misc.query.first()
    return dict(dark_themes=THEMES_DARK,
Exemplo n.º 6
0
import datetime

from flask import request
from flask.blueprints import Blueprint
from trading_system.models import Stock, StockHistory

from trading_system.api.utils import str_to_date, json_data
from trading_system.api.auth_middleware import auth_middleware
from trading_system.db import session

stocks = Blueprint('stocks', __name__, url_prefix='/stocks')
stocks.before_request(auth_middleware)


@stocks.route('/')
def stocks_list():
    data = []
    for stock in session.query(Stock):
        data.append({
            'market': stock.market,
            'code': stock.code,
            'name': stock.name,
            'tag': stock.tag,
        })
    return json_data(data)


@stocks.route('/<id_>/history')
def stock_history(id_):
    from_date = str_to_date(request.args.get('from_date'))
    to_date = str_to_date(request.args.get('to_date'))