Exemplo n.º 1
0
def settings(request):
	"""Build context for settings page."""
	context = {
		'num_transactions': db.get_transaction_count(request.user),
		'num_balances': db.get_balances(request.user).count(),
	}

	# User account form
	context['user_form'] = forms.UserEditForm(
		web.form_data(request),
		instance=request.user
	)
	context['password_form'] = forms.PasswordChangeForm(
		web.form_data(request)
	)

	# Person forms
	context['person_form'] = forms.PersonForm(
		web.form_data(request),
		instance=request.user.person
	)

	# Exchange rates
	context['exchange_rates'] = db.get_exchange_rates(request.user)
	context['exchange_rate_form'] = forms.ExchangeRateForm(
		web.form_data(request)
	)
	return web.render_context(request, 'settings.html', context=context)
Exemplo n.º 2
0
def home(request):
	"""Setup homepage context."""
	context = {}

	# New Transaction form
	new_trans_form_data = request.POST if request.method == 'POST' else None
	context['new_transaction_form'] = forms.TransactionRecordForm(
		web.form_data(request),
		initial={
			'currency': request.user.person.default_currency,
			'transaction_time': datetime.datetime.now().strftime('%x %X')
		}
	)

	context['pending_trans_records'] = list(build_pending_trans_records(request))

	# Recent transactions, that may be confirmed
	context['recent_trans_records'] = db.get_recent_trans_for_user(request.user)

	# Currency balances
	context['balances'] = db.get_balances(request.user)

	# Notifications for recent news, transactions, balances
	context['notifications'] = get_notification_list(request.user)

	return web.render_context(request, 'home.html', context=context)
Exemplo n.º 3
0
def index(request):
	if request.user.is_authenticated():
		return redirect('home')

	intro = models.Content.objects.get(name='intro', site=config.SITE_ID)
	context = {
		'login_form': forms.LoginForm(),
		'user_form': forms.UserCreateForm(web.form_data(request)),
		'intro': intro,
		'site': Site.objects.get(id=config.SITE_ID) 
	}
	return web.render_context(request, 'index.html', context=context)