X-Git-Url: https://code.wpia.club/?a=blobdiff_plain;f=src%2Fclub%2Fwpia%2Fgigi%2Fapi%2FCATSImport.java;fp=src%2Fclub%2Fwpia%2Fgigi%2Fapi%2FCATSImport.java;h=9bb39abcf9d3ff85047f2ffc0be0e6d8d9dd590d;hb=bccd4cc0dba0f89aa045b113bac46eb8cc1dab4e;hp=0000000000000000000000000000000000000000;hpb=c9ed09f0007fc2c813815be927a5a24b23dab83c;p=gigi.git diff --git a/src/club/wpia/gigi/api/CATSImport.java b/src/club/wpia/gigi/api/CATSImport.java new file mode 100644 index 00000000..9bb39abc --- /dev/null +++ b/src/club/wpia/gigi/api/CATSImport.java @@ -0,0 +1,49 @@ +package club.wpia.gigi.api; + +import java.io.IOException; +import java.util.Date; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import club.wpia.gigi.dbObjects.CATS; +import club.wpia.gigi.dbObjects.CertificateOwner; +import club.wpia.gigi.dbObjects.User; + +public class CATSImport extends CATSRestrictedApi { + + public static final String PATH = "/cats/import"; + + @Override + public void processAuthenticated(HttpServletRequest req, HttpServletResponse resp) throws IOException { + String target = req.getParameter("mid"); + String testType = req.getParameter("variant"); + String date = req.getParameter("date"); + if (target == null || testType == null || date == null) { + resp.sendError(500, "Error, requires mid, variant and date"); + return; + } + String language = req.getParameter("language"); + String version = req.getParameter("version"); + if (language == null || version == null) { + resp.sendError(500, "Error, requires also language and version"); + return; + } + int id; + try { + id = Integer.parseInt(target); + } catch (NumberFormatException e) { + resp.sendError(500, "Error, requires mid to be integer."); + return; + } + CertificateOwner o = CertificateOwner.getById(id); + if ( !(o instanceof User)) { + resp.sendError(500, "Error, requires valid userid"); + return; + } + System.out.println("CATS: " + target + ": " + testType); + User targetUser = (User) o; + System.out.println(targetUser.getId()); + CATS.enterResult(targetUser, testType, new Date(Long.parseLong(date)), language, version); + } +}