diff options
-rw-r--r-- | src/frontend.erl | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/frontend.erl b/src/frontend.erl index b75c61e..f3c72ed 100644 --- a/src/frontend.erl +++ b/src/frontend.erl @@ -14,6 +14,14 @@ request(post, ?APPURL_PLOP_FRONTEND, "sendentry", Input) -> case (catch mochijson2:decode(Input)) of {error, E} -> html("sendentry: bad input:", E); + Entries when is_list(Entries) -> + lists:map(fun ({struct, PropList}) -> + LogEntry = base64:decode(proplists:get_value(<<"entry">>, PropList)), + TreeLeafHash = base64:decode(proplists:get_value(<<"treeleafhash">>, PropList)), + ok = db:add_entry_nosync(TreeLeafHash, LogEntry) + end, Entries), + ok = db:sync_entry_db(), + success({[{result, <<"ok">>}]}); {struct, PropList} -> LogEntry = base64:decode(proplists:get_value(<<"entry">>, PropList)), TreeLeafHash = base64:decode(proplists:get_value(<<"treeleafhash">>, PropList)), |