Example #1
0
def settings_view(request):
    if not request.session.get('admin'):
        return HTTPFound(location=route_url('home', request))
    dbsession = DBSession()
    periods = dbsession.query(Period).all()
    #TODO In future we will implement possibility to choose in which period we are.
    if periods:
        period = periods[0]  # Current period
        expenses = dbsession.query(PeriodicExpense).filter(
            PeriodicExpense.period_id == period.id).all()
        incomes = dbsession.query(Income).filter(
            Income.period_id == period.id).all()

        return {'periods': periods, 'expenses': expenses, 'incomes': incomes}
    return {'periods': periods}
Example #2
0
def settings_view(request):
    if not request.session.get('admin'):
        return HTTPFound(location=route_url('home', request))
    dbsession = DBSession()
    periods = dbsession.query(Period).all()
    #TODO In future we will implement possibility to choose in which period we are.
    if periods:
        period = periods[0] # Current period
        expenses = dbsession.query(PeriodicExpense).filter(PeriodicExpense.period_id == period.id).all()
        incomes = dbsession.query(Income).filter(Income.period_id == period.id).all()

        return {'periods': periods,
                'expenses': expenses,
                'incomes': incomes}
    return {'periods': periods}
Example #3
0
def spend_view(request):
    if not request.session.get('admin'):
        return HTTPFound(location=route_url('home', request))
    today = datetime.date.today()
    period_id = request.GET.get('period', None)
    if period_id:
        dbsession = DBSession()
        expenses = dbsession.query(Expense).\
            filter(Expense.period_id==int(period_id)).\
            filter(Expense.date==today).all()

        period = Period.get_by_id(period_id)
        expenses_sum = period.get_expenses(today)
        return {'expenses': expenses, 'expenses_sum': expenses_sum}

    return HTTPFound(location=route_url('app', request))
Example #4
0
def spend_view(request):
    if not request.session.get('admin'):
        return HTTPFound(location=route_url('home', request))
    today = datetime.date.today()
    period_id = request.GET.get('period', None)
    if period_id:
        dbsession = DBSession()
        expenses = dbsession.query(Expense).\
            filter(Expense.period_id==int(period_id)).\
            filter(Expense.date==today).all()

        period = Period.get_by_id(period_id)
        expenses_sum = period.get_expenses(today)
        return {'expenses': expenses,
                'expenses_sum': expenses_sum}

    return HTTPFound(location=route_url('app', request))
Example #5
0
def app_view(request):
    if not request.session.get('admin'):
        return HTTPFound(location=route_url('home', request))
    today = datetime.date.today()
    dbsession = DBSession()
    period = dbsession.query(Period).first()
    if not period:
        return HTTPFound(location=route_url('settings', request))

    to_spend = period.to_spend(today)
    spent_today = period.get_expenses(today)
    left_today = period.to_spend(today) - spent_today
    money_left = period.money_left()
    days_left = (period.end-datetime.datetime.utcnow()).days

    return {'period': period,
            'left_today': left_today,
            'spent_today': spent_today,
            'money_left': money_left,
            'to_spend': to_spend,
            'days_left': days_left}
Example #6
0
def app_view(request):
    if not request.session.get('admin'):
        return HTTPFound(location=route_url('home', request))
    today = datetime.date.today()
    dbsession = DBSession()
    period = dbsession.query(Period).first()
    if not period:
        return HTTPFound(location=route_url('settings', request))

    to_spend = period.to_spend(today)
    spent_today = period.get_expenses(today)
    left_today = period.to_spend(today) - spent_today
    money_left = period.money_left()
    days_left = (period.end - datetime.datetime.utcnow()).days

    return {
        'period': period,
        'left_today': left_today,
        'spent_today': spent_today,
        'money_left': money_left,
        'to_spend': to_spend,
        'days_left': days_left
    }