Parsee/src/Commands/SetPL.c
LDA ca87972b3a [ADD/WIP] Push all the Janet changes
This is still unstable(and I still need to design/document the exposed
API)! Do(n't) go and use it!
2024-11-16 14:11:32 +01:00

51 lines
1.2 KiB
C

#include <Routes.h>
#include <AS.h>
#include <Cytoplasm/Log.h>
#include <stdlib.h>
CommandHead(CmdSetPL, cmd, argp)
{
ParseeCmdArg *args = argp;
ParseeData *data = args->data;
char *user = HashMapGet(cmd->arguments, "user");
char *room = HashMapGet(cmd->arguments, "room");
char *pl_str = HashMapGet(cmd->arguments, "pl");
long pl = pl_str ? strtol(pl_str, NULL, 10) : 0;
HashMap *map;
if (!user || !pl_str)
{
return;
}
map = ASGetPL(data->config, room);
JsonValueFree(JsonSet(
map, JsonValueInteger(pl),
2, "users", user
));
ASSetPL(data->config, room, map);
}
CommandHead(CmdSetMin, cmd, argp)
{
ParseeCmdArg *args = argp;
ParseeData *data = args->data;
char *event = HashMapGet(cmd->arguments, "event");
char *room = HashMapGet(cmd->arguments, "room");
char *pl_str = HashMapGet(cmd->arguments, "pl");
long pl = strtol(pl_str, NULL, 10);
HashMap *map;
if (!event || !pl_str)
{
return;
}
map = ASGetPL(data->config, room);
JsonValueFree(JsonSet(
map, JsonValueInteger(pl),
2, "events", event
));
ASSetPL(data->config, room, map);
}