Пример #1
0
def showSummary():
    entries = []

    sumIncome = 0

    expensePerCategory = {}
    for category in Category.objects().all():
        expensePerCategory.update({category.name : 0})

    userId = ObjectId(session.get('user')['_id']['$oid'])
    for entry in Entry.objects(owner = userId).all():
        e = {'_id' : entry.id, 'amount' : entry.amount,
            'description' : entry.description }

        # Check if the entry has a category.
        if entry.category is not None:
            e.update({'category' : Category.objects(id = entry.category.id).first().name})
        else:
            e.update({'category' : '-'})

        entries.append(e)

        if e['amount'] > 0:
            sumIncome = sumIncome + e['amount']
        else:
            expensePerCategory[e['category']] = \
                expensePerCategory[e['category']] - e['amount']


    logger.debug('Currency: {0}'.format(session.get('currency')))

    return render_template('/budget/summary.html',
        entries = entries, sumIncome = sumIncome,
            expensePerCategory = expensePerCategory)
Пример #2
0
def deleteEntry(id):
    # Fetch the appropiate entry from the collection.
    userId = ObjectId(session.get('user')['_id']['$oid'])
    expense = Entry.objects(id = ObjectId(id), owner = userId).first()
    logger.debug('Trying to delete ({0}, {1})'.format(ObjectId(id), userId))

    if expense is not None:
        logger.debug('Trying to delete expense {0}'.format(expense.id))
        expense.delete()

        flash('Your entry has been deleted.')
    else:
        flash('You are not authorized to delete this entry.')
    return redirect(url_for('budget.default'))