public static Result upload() { MultipartFormData body = request().body().asMultipartFormData(); FilePart input = body.getFile("inputFile"); if (input != null) { String fileName = input.getFilename(); String contentType = input.getContentType(); File file = input.getFile(); SeqFile seq = new SeqFile(file); return redirect(routes.Application.results(true)); } else { flash("error", "Missing file"); return redirect(routes.Application.results(false)); } }
/** * 로그인 처리 시스템 설정에서 가입승인 기능이 활성화 되어 있고 사용자 상태가 잠금상태(미승인?)라면 계정이 잠겼다는 메시지를 노출하고 로그인 폼으로 돌아감 시스템 설정에서 * 가입승인 기능이 활성화 되어 있지 않다면, 사용자 상태가 잠금상태라도 로그인이 가능하다 (스펙확인 필요) 요청의 정보로 사용자 인증에 성공하면 로그인쿠키를 생성하고 * 로그인유지하기가 선택되었다면, 로그인유지를 위한 쿠키를 별도로 생성한다 인증에 실패하면 관련된 메시지를 노출하고 로그인 폼으로 돌아간다 * * @return */ public static Result login() { Form<User> userForm = form(User.class).bindFromRequest(); if (userForm.hasErrors()) { return badRequest(login.render("title.login", userForm)); } User sourceUser = form(User.class).bindFromRequest().get(); if (isUseSignUpConfirm()) { if (User.findByLoginId(sourceUser.loginId).state == UserState.LOCKED) { flash(Constants.WARNING, "user.locked"); return redirect(routes.UserApp.loginForm()); } } if (User.findByLoginId(sourceUser.loginId).state == UserState.DELETED) { flash(Constants.WARNING, "user.deleted"); return redirect(routes.UserApp.loginForm()); } User authenticate = authenticateWithPlainPassword(sourceUser.loginId, sourceUser.password); if (authenticate != null) { addUserInfoToSession(authenticate); if (sourceUser.rememberMe) { setupRememberMe(authenticate); } return redirect(routes.Application.index()); } flash(Constants.WARNING, "user.login.failed"); return redirect(routes.UserApp.loginForm()); }
/** * 사용자 가입 화면 이동 * * @return */ public static Result signupForm() { if (!UserApp.currentUser().isAnonymous()) { return redirect(routes.Application.index()); } return ok(signup.render("title.signup", form(User.class))); }
public static Result registerNewUser() { Form<Register> regForm = Form.form(Register.class).bindFromRequest(); if (regForm.hasErrors()) { return badRequest(register.render(regForm)); } else { return redirect(routes.Application.login()); } }
public static Result newTask() { Form<Task> filledForm = taskForm.bindFromRequest(); if (filledForm.hasErrors()) return badRequest(views.html.task.render(Task.all(), filledForm)); else { Task.createTask(filledForm.get()); return redirect(routes.Application.getTasks()); } }
public static Result authenticate() { Form<Login> loginForm = Form.form(Login.class).bindFromRequest(); if (loginForm.hasErrors()) { return badRequest(login.render(loginForm)); } else { session().clear(); session("email", loginForm.get().email); return redirect(routes.Application.start()); } }
/** * 로그인 폼으로 이동 * * @return */ public static Result loginForm() { if (!UserApp.currentUser().isAnonymous()) { return redirect(routes.Application.index()); } String redirectUrl = request().getQueryString("redirectUrl"); String loginFormUrl = routes.UserApp.loginForm().url(); String referer = request().getHeader("Referer"); if (StringUtils.isEmpty(redirectUrl) && !StringUtils.equals(loginFormUrl, referer)) { redirectUrl = request().getHeader("Referer"); } return ok(login.render("title.login", form(User.class), redirectUrl)); }
public static Result enter() { Map<String, String[]> params; params = request().body().asFormUrlEncoded(); String email = params.get("email")[0]; User user = User.find.byId(email); if (user == null) { return redirect(routes.Application.login()); } else { session("email", email); return redirect(routes.Chats.allChats()); } }
/** * Start the workflow run asynchronously. * * @param name The name of the workflow * @return json response containing id */ @Security.Authenticated(Secured.class) public Result runWorkflow(String name) { FormDefinition form = formDefinitionForWorkflow(name); // Process file upload first if present in form data Http.MultipartFormData body = request().body().asMultipartFormData(); for (Object obj : body.getFiles()) { Http.MultipartFormData.FilePart filePart = (Http.MultipartFormData.FilePart) obj; UserUpload userUpload = uploadFile(filePart); BasicField fileInputField = form.getField(filePart.getKey()); fileInputField.setValue(userUpload); } // Set the form definition field values from the request data Map<String, String[]> data = body.asFormUrlEncoded(); for (String key : data.keySet()) { BasicField field = form.getField(key); field.setValue(data.get(key)); } // Transfer form field data to workflow settings map Map<String, Object> settings = new HashMap<>(); for (BasicField field : form.fields) { settings.put(field.name, field.value()); } settings.putAll(settingsFromConfig(form)); // Update the workflow model object and persist to the db Workflow workflow = Workflow.find.where().eq("name", form.name).findUnique(); if (workflow == null) { workflow = new Workflow(); } workflow.name = form.name; workflow.title = form.title; workflow.yamlFile = form.yamlFile; workflow.save(); // Run the workflow ObjectNode response = runYamlWorkflow(form.yamlFile, workflow, settings); return redirect(routes.Application.index()); }
/** * 사용자 가입 처리 입력된 데이터 유효성 검증에 실패하면 bad request 응답 사용자 정보를 저장, 로그인 쿠기 생성 후 메인 페이지로 이동 시스템 설정에서 가입승인 * 기능이 활성화되어 있다면 사용자의 계정 상태를 잠금으로 설정하여 저장, 로그인 쿠키 생성 안됨 * * @return */ public static Result newUser() { Form<User> newUserForm = form(User.class).bindFromRequest(); validate(newUserForm); if (newUserForm.hasErrors()) { return badRequest(signup.render("title.signup", newUserForm)); } else { User user = createNewUser(newUserForm.get()); if (user.state == UserState.LOCKED) { flash(Constants.INFO, "user.signup.requested"); } else { addUserInfoToSession(user); } return redirect(routes.Application.index()); } }
/** * 로그인 처리 시스템 설정에서 가입승인 기능이 활성화 되어 있고 사용자 상태가 잠금상태(미승인?)라면 계정이 잠겼다는 메시지를 노출하고 로그인 폼으로 돌아감 시스템 설정에서 * 가입승인 기능이 활성화 되어 있지 않다면, 사용자 상태가 잠금상태라도 로그인이 가능하다 (스펙확인 필요) 요청의 정보로 사용자 인증에 성공하면 로그인쿠키를 생성하고 * 로그인유지하기가 선택되었다면, 로그인유지를 위한 쿠키를 별도로 생성한다 인증에 실패하면 관련된 메시지를 노출하고 로그인 폼으로 돌아간다 * * @return */ public static Result login() { Form<User> userForm = form(User.class).bindFromRequest(); if (userForm.hasErrors()) { return badRequest(login.render("title.login", userForm, null)); } User sourceUser = form(User.class).bindFromRequest().get(); Map<String, String[]> params = request().body().asFormUrlEncoded(); String redirectUrl = HttpUtil.getFirstValueFromQuery(params, "redirectUrl"); String loginFormUrl = routes.UserApp.loginForm().absoluteURL(request()); loginFormUrl += "?redirectUrl=" + redirectUrl; if (isUseSignUpConfirm()) { if (User.findByLoginId(sourceUser.loginId).state == UserState.LOCKED) { flash(Constants.WARNING, "user.locked"); return redirect(loginFormUrl); } } if (User.findByLoginId(sourceUser.loginId).state == UserState.DELETED) { flash(Constants.WARNING, "user.deleted"); return redirect(loginFormUrl); } User authenticate = authenticateWithPlainPassword(sourceUser.loginId, sourceUser.password); if (authenticate != null) { addUserInfoToSession(authenticate); if (sourceUser.rememberMe) { setupRememberMe(authenticate); } authenticate.lang = play.mvc.Http.Context.current().lang().code(); authenticate.update(); if (StringUtils.isEmpty(redirectUrl)) { return redirect(routes.Application.index()); } else { return redirect(redirectUrl); } } flash(Constants.WARNING, "user.login.failed"); return redirect(routes.UserApp.loginForm()); }
public static Result createNewUser() { Form<User> nu = userForm.bindFromRequest(); ObjectNode jsonData = Json.newObject(); String userName = null; try { userName = nu.field("firstName").value() + " " + (nu.field("middleInitial")).value() + " " + (nu.field("lastName")).value(); jsonData.put("userName", userName); jsonData.put("firstName", nu.get().getFirstName()); jsonData.put("middleInitial", nu.get().getMiddleInitial()); jsonData.put("lastName", nu.get().getLastName()); jsonData.put("password", nu.get().getPassword()); jsonData.put("affiliation", nu.get().getAffiliation()); jsonData.put("title", nu.get().getTitle()); jsonData.put("email", nu.get().getEmail()); jsonData.put("mailingAddress", nu.get().getMailingAddress()); jsonData.put("phoneNumber", nu.get().getPhoneNumber()); jsonData.put("faxNumber", nu.get().getFaxNumber()); jsonData.put("researchFields", nu.get().getResearchFields()); jsonData.put("highestDegree", nu.get().getHighestDegree()); JsonNode response = RESTfulCalls.postAPI( Constants.URL_HOST + Constants.CMU_BACKEND_PORT + Constants.ADD_USER, jsonData); // flash the response message Application.flashMsg(response); return redirect(routes.Application.createSuccess()); } catch (IllegalStateException e) { e.printStackTrace(); Application.flashMsg(RESTfulCalls.createResponse(ResponseType.CONVERSIONERROR)); } catch (Exception e) { e.printStackTrace(); Application.flashMsg(RESTfulCalls.createResponse(ResponseType.UNKNOWN)); } return ok(signup.render(nu)); }
@Security.Authenticated(Secured.class) public static Result viewMyConversation(Long id) { Student s = Student.find.byId(request().username()); Conversation c = Conversation.find.byId(id.toString()); if (!c.getParticipants().contains(s)) { // unauthorized access! return redirect(routes.Application.viewMyConversations()); } else { // mark all read for (Message m : c.messages) { if (!m.sender.email.equals(s.email)) { m.setRead(); m.save(); } } return ok(viewConversation.render(s, c, form(MessageForm.class))); } }
@Security.Authenticated(Secured.class) public static Result addNewMessageForm(Long id) { Form<MessageForm> mesForm = Form.form(MessageForm.class).bindFromRequest(); if (mesForm.hasErrors()) { return badRequest(postNewMessage.render(mesForm, id)); } else { Message m = new Message( mesForm.field("text").value().toString(), Student.find.byId(request().username())); Conversation c = null; c = Conversation.find.byId(id.toString()); c.messages.add(m); c.save(); return redirect(routes.Application.viewMyConversation(id)); } }
public static Result authenticate() { DynamicForm df = new DynamicForm().bindFromRequest(); session().clear(); session(Application.PASSWORD, Crypto.encryptAES(df.get("password"))); return redirect(routes.Application.index()); }
/** * 로그아웃 로그인 유지 기능 해제 메인으로 이동 * * @return */ public static Result logout() { processLogout(); flash(Constants.SUCCESS, "user.logout.success"); return redirect(routes.Application.index()); }
public static Result deleteTask(Long id) { Task.delete(id); return redirect(routes.Application.tasks()); }
public static Result index() { return redirect(routes.Application.tasks()); }
@Security.Authenticated(Secured.class) public static Result addNewMessage(Long id) { return redirect( // postNewMessage.render(form(MessageForm.class), id) routes.Application.viewMyConversation(id)); }
public static Result logout() { session().clear(); flash("success", "You've been logged out"); return redirect(routes.Application.login()); }