Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
10
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Open sidebar
belenios
belenios
Commits
79cf2abd
Commit
79cf2abd
authored
Oct 08, 2015
by
Stephane Glondu
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
In admin page, sort elections by finalization time
parent
cad62a7f
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
26 additions
and
3 deletions
+26
-3
src/web/web_persist.ml
src/web/web_persist.ml
+12
-0
src/web/web_persist.mli
src/web/web_persist.mli
+3
-0
src/web/web_site.ml
src/web/web_site.ml
+11
-3
No files found.
src/web/web_persist.ml
View file @
79cf2abd
...
...
@@ -20,6 +20,7 @@
(**************************************************************************)
open
Lwt
open
Serializable_builtin_j
open
Serializable_t
open
Common
...
...
@@ -39,6 +40,17 @@ let get_election_state x =
let
set_election_state
x
s
=
Ocsipersist
.
add
election_states
x
s
let
election_dates
=
Ocsipersist
.
open_table
"election_dates"
let
past
=
datetime_of_string
"
\"
2015-10-01 00:00:00.000000
\"
"
let
get_election_date
x
=
try_lwt
Ocsipersist
.
find
election_dates
x
with
Not_found
->
return
past
let
set_election_date
x
d
=
Ocsipersist
.
add
election_dates
x
d
let
store
=
Ocsipersist
.
open_store
"site"
lwt
main_election
=
...
...
src/web/web_persist.mli
View file @
79cf2abd
...
...
@@ -30,6 +30,9 @@ type election_state =
val
get_election_state
:
string
->
election_state
Lwt
.
t
val
set_election_state
:
string
->
election_state
->
unit
Lwt
.
t
val
get_election_date
:
string
->
datetime
Lwt
.
t
val
set_election_date
:
string
->
datetime
->
unit
Lwt
.
t
val
get_main_election
:
unit
->
string
option
Lwt
.
t
val
set_main_election
:
string
->
unit
Lwt
.
t
val
unset_main_election
:
unit
->
unit
Lwt
.
t
...
...
src/web/web_site.ml
View file @
79cf2abd
...
...
@@ -277,10 +277,11 @@ let () = Html5.register ~service:admin
if
W
.
metadata
.
e_owner
=
Some
u
then
(
let
uuid_s
=
Uuidm
.
to_string
W
.
election
.
e_params
.
e_uuid
in
lwt
state
=
Web_persist
.
get_election_state
uuid_s
in
lwt
date
=
Web_persist
.
get_election_date
uuid_s
in
lwt
elections
,
tallied
=
accu
in
match
state
with
|
`Tallied
_
->
return
(
elections
,
w
::
tallied
)
|
_
->
return
(
w
::
elections
,
tallied
)
|
`Tallied
_
->
return
(
elections
,
(
date
,
w
)
::
tallied
)
|
_
->
return
(
(
date
,
w
)
::
elections
,
tallied
)
)
else
(
accu
)
...
...
@@ -291,7 +292,13 @@ let () = Html5.register ~service:admin
then
return
((
uuid_of_string
k
,
v
.
se_questions
.
t_name
)
::
accu
)
else
return
accu
)
election_stable
[]
in
return
@@
Some
(
elections
,
tallied
,
setup_elections
)
in
let
sort
l
=
List
.
sort
(
fun
(
x
,
_
)
(
y
,
_
)
->
datetime_compare
x
y
)
l
|>
List
.
map
(
fun
(
_
,
x
)
->
x
)
in
let
elections
=
sort
elections
and
tallied
=
sort
tallied
in
return
@@
Some
(
elections
,
tallied
,
setup_elections
)
in
T
.
admin
~
elections
()
)
...
...
@@ -965,6 +972,7 @@ let () =
Ocsipersist
.
remove
election_pktokens
token
)
se
.
se_public_keys
>>
Ocsipersist
.
remove
election_stable
uuid_s
>>
Web_persist
.
set_election_date
uuid_s
(
now
()
)
>>
Redirection
.
send
(
preapply
election_admin
(
W
.
election
.
e_params
.
e_uuid
,
()
))
end
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment