31 lines
863 B
D
31 lines
863 B
D
|
module requests.server;
|
|||
|
|
|||
|
import vibe.vibe;
|
|||
|
import response;
|
|||
|
import structures;
|
|||
|
import sql;
|
|||
|
import singlog;
|
|||
|
|
|||
|
import std.regex;
|
|||
|
|
|||
|
// Получить информацию о сервере
|
|||
|
void getServerInfo(HTTPServerRequest req, HTTPServerResponse res) {
|
|||
|
auto dataServer = sqlGetServerInfo();
|
|||
|
render!("server.dt", dataServer)(res);
|
|||
|
}
|
|||
|
|
|||
|
void sendWriteServerInfo(HTTPServerRequest req, HTTPServerResponse res) {
|
|||
|
ServerDB server = deserializeJson!ServerDB(req.json);
|
|||
|
|
|||
|
if (!server.external_number.matchFirst(regex(r"^\+7\d{10}$", "g"))) {
|
|||
|
res.send(true, "Внешний номер не соответствует формату +7XXXXXXXXXX");
|
|||
|
return;
|
|||
|
}
|
|||
|
|
|||
|
if (!sqlUpdateServerInfo(server)) {
|
|||
|
res.send(true, "Не удалось записать параметры сервера");
|
|||
|
return;
|
|||
|
}
|
|||
|
res.send();
|
|||
|
}
|