List of usage examples for org.apache.wicket.markup.html.form Form getMaxSize
public final Bytes getMaxSize()
From source file:eu.uqasar.web.pages.tree.projects.ProjectImportPage.java
License:Apache License
public ProjectImportPage(PageParameters parameters) { super(parameters); upload = new FileUploadField("file"); final Form<?> form = new Form<Void>("form") { private static final long serialVersionUID = -8541751079487127243L; @Override/*from w w w . ja v a2 s . c o m*/ protected void onSubmit() { Project p = null; try { FileUpload file = upload.getFileUpload(); if (file == null) { logger.info("File upload failed"); error = true; } else { if (file.getSize() > Bytes.kilobytes(MAX_SIZE).bytes()) { logger.info("File is too big"); error = true; } else { String content = file.getContentType(); if (content != null) { logger.info("Parser called"); p = parseProject(file, content); p = (Project) treeNodeService.create(p); // set company to qmodel user = UQasar.getSession().getLoggedInUser(); if (user != null && user.getCompany() != null) { p.setCompany(user.getCompany()); } } else { logger.info("Upload file is invalid"); error = true; } } } } catch (uQasarException ex) { if (ex.getMessage().contains("nodeKey")) { error = true; logger.info("duplicated nodeKey"); errorMessage = "import.key.unique"; } } catch (Exception ex) { error = true; logger.error(ex.getMessage(), ex); } finally { PageParameters parameters = new PageParameters(); if (error) { parameters.add(BasePage.LEVEL_PARAM, FeedbackMessage.ERROR); if (errorMessage != null && errorMessage.contains("key")) { parameters.add(QModelImportPage.MESSAGE_PARAM, getLocalizer().getString(errorMessage, this)); } else { parameters.add(BasePage.MESSAGE_PARAM, getLocalizer().getString("import.importError", this)); } setResponsePage(ProjectImportPage.class, parameters); } else { parameters.add(BasePage.LEVEL_PARAM, FeedbackMessage.SUCCESS); parameters.add(BasePage.MESSAGE_PARAM, getLocalizer().getString("import.importMessage", this)); // TODO what if p == null? parameters.add("project-key", p != null ? p.getNodeKey() : "?"); setResponsePage(ProjectViewPage.class, parameters); } } } }; form.add(upload); form.setMaxSize(Bytes.kilobytes(MAX_SIZE)); form.add(new Label("max", new AbstractReadOnlyModel<String>() { private static final long serialVersionUID = 3532428309651830468L; @Override public String getObject() { return form.getMaxSize().toString(); } })); form.add(new UploadProgressBar("progress", form, upload)); form.add(new Button("uploadButton", new StringResourceModel("upload.button", this, null))); add(form); }
From source file:org.sakaiproject.ddo.tool.pages.DropOffForm.java
License:Educational Community License
public DropOffForm() { disableLink(studentOverviewLink);/*from ww w. j a v a 2 s . c om*/ // create the form final Form<?> dropOffForm = new Form<Void>("dropOffForm") { /** * @see org.apache.wicket.markup.html.form.Form#onSubmit() */ @Override protected void onSubmit() { String currentUserId = sakaiProxy.getCurrentUserId(); String notifyName = ""; String notifyEmail = ""; Submission s = new Submission(); s.setPrimaryLanguageIsEnglish(primaryLanguageIsEnglish.getModelObject()); s.setPrimaryLanguage(primaryLanguage.getModelObject()); s.setAssignmentTitle(assignmentTitle.getModelObject()); s.setInstructorRequirements(instructorRequirements.getModelObject()); s.setDueDate(dueDate.getModelObject()); if (courseTitle.getModelObject().equals("Other")) { s.setCourseTitle(courseOther.getModelObject()); } else { s.setCourseTitle(courseTitle.getModelObject()); } if (instructors.getModelObject().equals("Other")) { String instructor = instructorNameOther.getModelObject() + " (" + instructorEmailOther.getModelObject() + ")"; s.setInstructor(instructor); notifyEmail = instructorEmailOther.getModelObject(); } else { s.setInstructor(instructors.getModelObject()); notifyEmail = sakaiProxy.getUserEmail(instructors.getModelObject()); } s.setFeedbackFocus(feedbackFocus.getModelObject()); FileUpload file = uploadField.getFileUpload(); if (file == null) { error(getString("error.null_file")); } else if (file.getSize() == 0) { error(getString("error.empty_file")); } else if (!Arrays.asList(SubmissionFile.AcceptableMimeTypes).contains(file.getContentType())) { error(getString("error.unacceptable_filetype")); } else { String mimeType = file.getContentType(); String fileName = file.getClientFileName(); //ok so get bytes of file uploaded byte[] documentBytes = file.getBytes(); //create resource id String documentRef = sakaiProxy.getDocumentResourcePath(fileName); if (!sakaiProxy.saveFile(documentRef, currentUserId, fileName, mimeType, documentBytes)) { error(getString("error.save")); return; } else { s.setDocumentRef(documentRef); } s.setSubmittedBy(currentUserId); s.setStatus(Submission.STATUS_WAITING); if (projectLogic.addSubmission(s)) { if (notifyInstructor.getModelObject()) sakaiProxy.sendNotificationToInstructor(notifyEmail, currentUserId, s); if (receipt.getModelObject()) sakaiProxy.sendReceipt(currentUserId, s); getSession().info(getString("success.save_submission")); setResponsePage(new StudentOverview()); } else { error(getString("error.save_submission")); } } } }; final String userid = sakaiProxy.getCurrentUserId(); dropOffForm.setMaxSize(Bytes.megabytes(15)); add(dropOffForm); dropOffForm .add(primaryLanguageIsEnglish = new CheckBox("primaryLanguageIsEnglish", Model.of(Boolean.TRUE))); dropOffForm.add(primaryLanguage = new TextField<String>("primaryLanguage", new Model<String>())); dropOffForm.add(assignmentTitle = new TextField<String>("assignmentTitle", new Model<String>())); dropOffForm .add(instructorRequirements = new TextArea<String>("instructorRequirements", new Model<String>())); Set<String> sectionsSet = sakaiProxy.getCurrentSectionsForCurrentUser(); List<String> sectionsList = new ArrayList<String>(); if (!sectionsSet.isEmpty()) { sectionsList = new ArrayList<String>(sectionsSet); } sectionsList.add("Other"); DropDownChoice<String> sDD = new DropDownChoice<String>("courseTitle", new Model<String>(), sectionsList, new IChoiceRenderer<String>() { @Override public Object getDisplayValue(String section) { if (section.equals("Other")) { return "Other"; } else { return sakaiProxy.getCourseOfferingTitleForSection(section); } } @Override public String getIdValue(String section, int i) { return section; } }); dropOffForm.add(courseTitle = sDD); Set<String> instructorSet = sakaiProxy.getCurrentInstructorsForCurrentUser(); List<String> instructorList = new ArrayList<String>(); if (!instructorSet.isEmpty()) { instructorList = new ArrayList<String>(instructorSet); } instructorList.add("Other"); DropDownChoice<String> iDD = new DropDownChoice<String>("instructors", new Model<String>(), instructorList, new IChoiceRenderer<String>() { @Override public Object getDisplayValue(String userId) { if (userId.equals("Other")) { return "Other"; } else { return sakaiProxy.getUserDisplayName(userId); } } @Override public String getIdValue(String userId, int i) { return userId; } }); dropOffForm.add(instructors = iDD); dropOffForm.add(courseOther = new TextField<String>("courseOther", new Model<String>())); dropOffForm.add(instructorNameOther = new TextField<String>("instructorNameOther", new Model<String>())); dropOffForm.add(instructorEmailOther = new TextField<String>("instructorEmailOther", new Model<String>())); dropOffForm.add(notifyInstructor = new CheckBox("notifyInstructor", Model.of(Boolean.FALSE))); dropOffForm.add(receipt = new CheckBox("receipt", Model.of(Boolean.TRUE))); dropOffForm.add(feedbackFocus = new TextArea<String>("feedbackFocus", new Model<String>())); dueDate = new DateTextField("dueDate", new PropertyModel<Date>(this, "date")); DatePicker datePicker = new DatePicker(); datePicker.setShowOnFieldClick(true); datePicker.setAutoHide(true); dueDate.add(datePicker); dropOffForm.add(dueDate); assignmentTitle.setRequired(true); instructors.setRequired(true); courseTitle.setRequired(true); dueDate.setRequired(true); dropOffForm.add(uploadField = new FileUploadField("uploadField")); uploadField.setRequired(true); dropOffForm.add( new Label("max", MessageFormat.format(getString("dropoff.form.max"), dropOffForm.getMaxSize()))); Link<Void> cancel = new Link<Void>("cancelLink") { public void onClick() { setResponsePage(new StudentOverview()); } }; dropOffForm.add(cancel); Link<Void> cancel2 = new Link<Void>("cancelLink2") { public void onClick() { setResponsePage(new StudentOverview()); } }; add(cancel2); SubmitLink submit = new SubmitLink("submitLink"); dropOffForm.add(submit); dropOffForm.add(new Label("displayName", sakaiProxy.getCurrentUserDisplayName())); dropOffForm.add(new Label("email", sakaiProxy.getUserEmail(userid))); dropOffForm.add(new Label("username", sakaiProxy.getUserDisplayId(userid))); }
From source file:org.sakaiproject.ddo.tool.pages.EditFeedback.java
License:Educational Community License
public EditFeedback(long feedbackId) { disableLink(staffOverviewLink);// www.j a v a2 s .c o m this.f = projectLogic.getFeedback(feedbackId); this.s = projectLogic.getSubmission(f.getSubmissionId()); //s.setStatus(Submission.STATUS_UNDER); //projectLogic.updateSubmissionStatus(s); add(new Label("name", sakaiProxy.getUserDisplayName(s.getSubmittedBy()))); add(new Label("primaryLanguageIsEnglish", s.getPrimaryLanguageIsEnglish() ? "Yes" : "No")); add(new Label("primaryLanguage", s.getPrimaryLanguage())); add(new Label("submissionDate", df.format(s.getSubmissionDate()))); add(new Label("email", sakaiProxy.getUserEmail(s.getSubmittedBy()))); add(new Label("username", sakaiProxy.getUserDisplayId(s.getSubmittedBy()))); Link<Void> streamDownloadLink = new Link<Void>("document") { @Override public void onClick() { AbstractResourceStreamWriter rstream = new AbstractResourceStreamWriter() { @Override public void write(OutputStream output) throws IOException { output.write(sakaiProxy.getResource(s.getDocumentRef()).getBytes()); } }; ResourceStreamRequestHandler handler = new ResourceStreamRequestHandler(rstream, sakaiProxy.getResource(s.getDocumentRef()).getFileName()); getRequestCycle().scheduleRequestHandlerAfterCurrent(handler); } }; add(streamDownloadLink); SubmissionFile sf = sakaiProxy.getResource(s.getDocumentRef()); streamDownloadLink.add(new Label("fileName", sf == null ? "Cannot find file." : sf.getFileName())); add(new ContextImage("submissionIcon", new Model<String>(sakaiProxy.getResourceIconUrl(s.getDocumentRef())))); add(new Label("fileSize", sakaiProxy.getResourceFileSize(s.getDocumentRef()))); add(new Label("assignmentTitle", s.getAssignmentTitle())); add(new Label("course", s.getCourseTitle())); String instructorDisplayName = sakaiProxy.getUserDisplayName(s.getInstructor()); String instructorEmail = sakaiProxy.getUserEmail(s.getInstructor()); if ("".equals(instructorDisplayName)) { add(new Label("instructor", s.getInstructor())); } else { add(new Label("instructor", instructorDisplayName + " (" + instructorEmail + ")")); } add(new Label("dueDate", s.getDueDate() != null ? dueFormat.format(s.getDueDate()) : getString("error.no_due_date"))); add(new MultiLineLabel("feedbackFocus", s.getFeedbackFocus())); add(new MultiLineLabel("instructorRequirements", s.getInstructorRequirements())); final Form<?> feedbackForm = new Form<Void>("feedbackForm") { /** * @see org.apache.wicket.markup.html.form.Form#onSubmit() */ @Override protected void onSubmit() { String currentUserId = sakaiProxy.getCurrentUserId(); f.setComments(comments.getModelObject()); FileUpload file = uploadField.getFileUpload(); String oldFileReference = ""; // Check if the reviewer would like to replace or add a new reviewed file if (replaceReview.getModelObject().booleanValue()) { // Remove previously submitted file if there was one. if (f.getReviewedDocumentRef() != null && !f.getReviewedDocumentRef().isEmpty()) { oldFileReference = f.getReviewedDocumentRef(); } if (file == null) { f.setReviewedDocumentRef(""); } else if (file.getSize() == 0) { error(getString("error.empty_file")); return; } else { String mimeType = file.getContentType(); String fileName = file.getClientFileName(); //ok so get bytes of file uploaded byte[] documentBytes = file.getBytes(); //create resource id String documentRef = sakaiProxy.getDocumentResourcePath(fileName); if (!sakaiProxy.saveFile(documentRef, currentUserId, fileName, mimeType, documentBytes)) { error(getString("error.save")); return; } else { f.setReviewedDocumentRef(documentRef); } } } if (f.getComments() == null && file == null) { error(getString("error.no_feedback")); return; } f.setReviewDate(new Date()); f.setReviewedBy(currentUserId); if (projectLogic.updateFeedback(f) && projectLogic.updateSubmissionStatus(s)) { // Only delete old file on a successful save if (!oldFileReference.isEmpty()) { sakaiProxy.removeResource(oldFileReference); } getSession().info(getString("success.save_feedback")); setResponsePage(new StaffOverview()); } else { error(getString("error.save_feedback")); } } }; feedbackForm.setMaxSize(Bytes.megabytes(15)); add(feedbackForm); feedbackForm.add(comments = new TextArea<String>("comments", Model.of(f.getComments()))); feedbackForm.add(uploadField = new FileUploadField("uploadField")); feedbackForm.add(replaceReview = new CheckBox("replaceReview", Model.of(Boolean.FALSE))); if (f.getReviewedDocumentRef() != null && !f.getReviewedDocumentRef().isEmpty()) { Link<Void> feedbackDownloadLink = new Link<Void>("feedbackDoc") { @Override public void onClick() { AbstractResourceStreamWriter rstream = new AbstractResourceStreamWriter() { @Override public void write(OutputStream output) throws IOException { output.write(sakaiProxy.getResource(f.getReviewedDocumentRef()).getBytes()); } }; ResourceStreamRequestHandler handler = new ResourceStreamRequestHandler(rstream, sakaiProxy.getResource(f.getReviewedDocumentRef()).getFileName()); getRequestCycle().scheduleRequestHandlerAfterCurrent(handler); } }; feedbackForm.add(feedbackDownloadLink); SubmissionFile ff = sakaiProxy.getResource(f.getReviewedDocumentRef()); feedbackDownloadLink.add(new Label("fFileName", ff == null ? "Cannot find file" : ff.getFileName())); feedbackForm.add(new ContextImage("feedbackIcon", new Model<String>(sakaiProxy.getResourceIconUrl(f.getReviewedDocumentRef())))); String fileSize = "(" + sakaiProxy.getResourceFileSize(f.getReviewedDocumentRef()) + ")"; feedbackForm.add(new Label("reviewFileSize", fileSize)); feedbackForm.add(new Label("noDoc", getString("error.no_document")).setVisible(false)); } else { Link<Void> feedbackDownloadLink = new Link<Void>("feedbackDoc") { @Override public void onClick() { } }; feedbackForm.add(feedbackDownloadLink); feedbackDownloadLink.add(new Label("fFileName", "")); ContextImage icon = new ContextImage("feedbackIcon", ""); icon.setVisible(false); feedbackForm.add(icon); feedbackForm.add(new Label("reviewFileSize", "")); feedbackForm.add(new Label("noDoc", getString("error.no_document")).setVisible(true)); } feedbackForm.add( new Label("max", MessageFormat.format(getString("feedback.form.max"), feedbackForm.getMaxSize()))); Link<Void> cancel = new Link<Void>("cancelLink") { public void onClick() { //s.setStatus(Submission.STATUS_WAITING); //projectLogic.updateSubmissionStatus(s); setResponsePage(new StaffOverview()); } }; feedbackForm.add(cancel); SubmitLink submit = new SubmitLink("submit"); feedbackForm.add(submit); }
From source file:org.sakaiproject.ddo.tool.pages.FeedbackFormPage.java
License:Educational Community License
public FeedbackFormPage(long submissionId) { disableLink(staffOverviewLink);//from ww w . j ava 2 s . co m this.s = projectLogic.getSubmission(submissionId); s.setStatus(Submission.STATUS_UNDER); projectLogic.updateSubmissionStatus(s); add(new Label("name", sakaiProxy.getUserDisplayName(s.getSubmittedBy()))); add(new Label("primaryLanguageIsEnglish", s.getPrimaryLanguageIsEnglish() ? "Yes" : "No")); add(new Label("primaryLanguage", s.getPrimaryLanguage())); add(new Label("submissionDate", df.format(s.getSubmissionDate()))); add(new Label("email", sakaiProxy.getUserEmail(s.getSubmittedBy()))); add(new Label("username", sakaiProxy.getUserDisplayId(s.getSubmittedBy()))); Link<Void> streamDownloadLink = new Link<Void>("document") { @Override public void onClick() { AbstractResourceStreamWriter rstream = new AbstractResourceStreamWriter() { @Override public void write(OutputStream output) throws IOException { output.write(sakaiProxy.getResource(s.getDocumentRef()).getBytes()); } }; ResourceStreamRequestHandler handler = new ResourceStreamRequestHandler(rstream, sakaiProxy.getResource(s.getDocumentRef()).getFileName()); getRequestCycle().scheduleRequestHandlerAfterCurrent(handler); } }; add(streamDownloadLink); SubmissionFile sf = sakaiProxy.getResource(s.getDocumentRef()); streamDownloadLink.add(new Label("fileName", sf == null ? "Cannot find file." : sf.getFileName())); add(new ContextImage("submissionIcon", new Model<String>(sakaiProxy.getResourceIconUrl(s.getDocumentRef())))); add(new Label("fileSize", sakaiProxy.getResourceFileSize(s.getDocumentRef()))); add(new Label("assignmentTitle", s.getAssignmentTitle())); add(new Label("course", s.getCourseTitle())); String instructorDisplayName = sakaiProxy.getUserDisplayName(s.getInstructor()); String instructorEmail = sakaiProxy.getUserEmail(s.getInstructor()); if ("".equals(instructorDisplayName)) { add(new Label("instructor", s.getInstructor())); } else { add(new Label("instructor", instructorDisplayName + " (" + instructorEmail + ")")); } add(new Label("dueDate", s.getDueDate() != null ? dueFormat.format(s.getDueDate()) : getString("error.no_due_date"))); add(new MultiLineLabel("feedbackFocus", s.getFeedbackFocus())); add(new MultiLineLabel("instructorRequirements", s.getInstructorRequirements())); final Form<?> feedbackForm = new Form<Void>("feedbackForm") { /** * @see org.apache.wicket.markup.html.form.Form#onSubmit() */ @Override protected void onSubmit() { String currentUserId = sakaiProxy.getCurrentUserId(); Feedback f = new Feedback(); f.setComments(comments.getModelObject()); FileUpload file = uploadField.getFileUpload(); if (file == null) { f.setReviewedDocumentRef(""); } else if (file.getSize() == 0) { error(getString("error.empty_file")); return; } else if (!Arrays.asList(SubmissionFile.AcceptableMimeTypes).contains(file.getContentType())) { error(getString("error.unacceptable_filetype")); return; } else { String mimeType = file.getContentType(); String fileName = file.getClientFileName(); //ok so get bytes of file uploaded byte[] documentBytes = file.getBytes(); //create resource id String documentRef = sakaiProxy.getDocumentResourcePath(fileName); if (!sakaiProxy.saveFile(documentRef, currentUserId, fileName, mimeType, documentBytes)) { error(getString("error.save")); return; } else { f.setReviewedDocumentRef(documentRef); } } if (f.getComments() == null && file == null) { error(getString("error.no_feedback")); return; } f.setSubmissionId(s.getSubmissionId()); f.setReviewedBy(currentUserId); s.setStatus(Submission.STATUS_REVIEWED); if (projectLogic.addFeedback(f) && projectLogic.updateSubmissionStatus(s)) { getSession().info(getString("success.save_feedback")); setResponsePage(new StaffOverview()); } else { error(getString("error.save_feedback")); } } }; feedbackForm.setMaxSize(Bytes.megabytes(15)); add(feedbackForm); feedbackForm.add(comments = new TextArea<String>("comments", new Model<String>())); feedbackForm.add(uploadField = new FileUploadField("uploadField")); feedbackForm.add( new Label("max", MessageFormat.format(getString("feedback.form.max"), feedbackForm.getMaxSize()))); Link<Void> cancel = new Link<Void>("cancelLink") { public void onClick() { setResponsePage(new StaffOverview()); } }; feedbackForm.add(cancel); SubmitLink submit = new SubmitLink("submit"); feedbackForm.add(submit); }