56
56
values['errormessage'] = 'Du får egentligen inte se den här sidan.'
57
57
return direct_to_template(request, 'view_region.html', values)
59
def calculate_distribution(request, sname):
60
reg = get_object_or_404(Region, shortname=sname)
61
subregions = reg.region_set.all()
62
stations = reg.votingstation_set.all()
63
localz = reg.votinglocal_set.all()
64
values = {'region': reg,
65
'subregions': subregions,
68
# XXX Change this to user_may_edit
69
if not reg.user_may_view(request.user):
70
values['errormessage'] = 'Du får egentligen inte se den här sidan.'
71
return direct_to_template(request, 'calculate_distribution.html', values)
73
def save_calculation(request, sname):
74
if request.method == 'POST':
76
reg = get_object_or_404(Region, shortname=sname)
77
subregions = reg.region_set.all()
78
stations = reg.votingstation_set.all()
79
localz = reg.votinglocal_set.all()
82
if 'ballots_available' in post:
83
reg.ballots_available = int(post['ballots_available'])
84
if 'unit_size' in post:
85
reg.ballot_unit_size = int(post['unit_size'])
86
if 'early_percentage' in post:
87
reg.ballot_early_percentage = int(post['early_percentage'])
91
for subreg in subregions:
92
if 'region_' + subreg.shortname + '_value' in post:
93
subreg.ballots = int(post['region_' + subreg.shortname + '_value'])
94
if 'region_' + subreg.shortname + '_value_lock' in post and \
95
post['region_' + subreg.shortname + '_value_lock'] != 'off':
96
subreg.ballots_locked = True
98
subreg.ballots_locked = False
101
# Save early voting station data
103
if 'local_%d_value' % local.pk in post:
104
local.ballots = int(post['local_%d_value' % local.pk])
105
if 'local_%d_value_lock' % local.pk in post and \
106
post['local_%d_value_lock' % local.pk] != 'off':
107
local.ballots_locked = True
109
local.ballots_locked = False
112
# Save voting station data
113
for station in stations:
114
if 'station_%d_value' % station.pk in post:
115
station.ballots = int(post['station_%d_value' % station.pk])
116
if 'station_%d_value_lock' % station.pk in post and \
117
post['station_%d_value_lock' % station.pk] != 'off':
118
station.ballots_locked = True
120
station.ballots_locked = False
124
return HttpResponseRedirect('/region/' + sname + '/calculate/')
60
126
def user(request, uname):
61
127
usr = get_object_or_404(User, username=uname)