List of usage examples for org.apache.wicket.markup.html.form Form setVisible
public final Component setVisible(final boolean visible)
From source file:com.example.justaddwater.web.app.ChangePasswordPage.java
License:Apache License
public ChangePasswordPage(final PageParameters parameters) { super(parameters); add(new Header("header")); enclosingDiv = new WebMarkupContainer("enclosing-div"); enclosingDiv.setOutputMarkupId(true); if (!session.isLoggedIn()) { error("not logged in"); throw new RestartResponseAtInterceptPageException(LoginPage.class); }// ww w. j a va 2 s . c o m Form form = new Form("form"); form.setOutputMarkupId(true); feedback = new FeedbackPanel("feedback"); feedback.setOutputMarkupId(true); form.add(feedback); currentPasswordField = new PasswordTextField("current-password", new Model<String>()); currentPasswordField.setRequired(true); passwordField = new PasswordTextField("password", new Model<String>()); passwordField.setRequired(true); passwordField.add(StringValidator.lengthBetween(6, 32)); PasswordTextField confirmPasswordField = new PasswordTextField("confirm-password", new Model<String>()); confirmPasswordField.setRequired(true); form.add(currentPasswordField); form.add(passwordField); form.add(confirmPasswordField); form.add(new EqualPasswordInputValidator(passwordField, confirmPasswordField)); AjaxButton submit = new AjaxButton("submit") { @Override protected void onSubmit(AjaxRequestTarget target, Form<?> form) { String currentPassword = currentPasswordField.getModelObject(); String newPassword = passwordField.getModelObject(); User user = dao.findUserByEmail(session.getUsername()); if (user == null) { error("not logged in"); throw new RestartResponseAtInterceptPageException(LoginPage.class); } else if (currentPasswordIsValid(user, currentPassword)) { changePassword(user, newPassword); EntityManager em = emModel.getObject(); em.persist(user); action.apply(em); // save changes successMessage.setVisible(true); form.setVisible(false); } else { error("current password is invalid"); } target.add(enclosingDiv); } @Override protected void onError(AjaxRequestTarget target, Form<?> form) { target.add(feedback); target.add(enclosingDiv); } }; form.add(submit); enclosingDiv.add(form); successMessage = new WebMarkupContainer("success-message"); successMessage.setOutputMarkupId(true); successMessage.setVisible(false); enclosingDiv.add(successMessage); add(enclosingDiv); }
From source file:com.gitblit.wicket.panels.RegistrantPermissionsPanel.java
License:Apache License
public RegistrantPermissionsPanel(String wicketId, RegistrantType registrantType, List<String> allRegistrants, final List<RegistrantAccessPermission> permissions, final Map<AccessPermission, String> translations) { super(wicketId); setOutputMarkupId(true);/* w w w . j a v a 2s . c o m*/ /* * Permission view toggle buttons */ Form<Void> permissionToggleForm = new Form<Void>("permissionToggleForm"); permissionToggleForm.add(new ShowStateButton("showSpecified", Show.specified)); permissionToggleForm.add(new ShowStateButton("showMutable", Show.mutable)); permissionToggleForm.add(new ShowStateButton("showEffective", Show.effective)); add(permissionToggleForm); /* * Permission repeating display */ RefreshingView<RegistrantAccessPermission> dataView = new RefreshingView<RegistrantAccessPermission>( "permissionRow") { private static final long serialVersionUID = 1L; @Override protected Iterator<IModel<RegistrantAccessPermission>> getItemModels() { // the iterator returns RepositoryPermission objects, but we need it to // return models return new ModelIteratorAdapter<RegistrantAccessPermission>(permissions.iterator()) { @Override protected IModel<RegistrantAccessPermission> model(RegistrantAccessPermission permission) { return new CompoundPropertyModel<RegistrantAccessPermission>(permission); } }; } @Override protected Item<RegistrantAccessPermission> newItem(String id, int index, IModel<RegistrantAccessPermission> model) { // this item sets markup class attribute to either 'odd' or // 'even' for decoration return new OddEvenItem<RegistrantAccessPermission>(id, index, model); } @Override public void populateItem(final Item<RegistrantAccessPermission> item) { final RegistrantAccessPermission entry = item.getModelObject(); if (RegistrantType.REPOSITORY.equals(entry.registrantType)) { String repoName = StringUtils.stripDotGit(entry.registrant); if (!entry.isMissing() && StringUtils.findInvalidCharacter(repoName) == null) { // repository, strip .git and show swatch Fragment repositoryFragment = new Fragment("registrant", "repositoryRegistrant", RegistrantPermissionsPanel.this); Component swatch = new Label("repositorySwatch", " ").setEscapeModelStrings(false); WicketUtils.setCssBackground(swatch, entry.toString()); repositoryFragment.add(swatch); Label registrant = new Label("repositoryName", repoName); repositoryFragment.add(registrant); item.add(repositoryFragment); } else { // regex or missing Label label = new Label("registrant", entry.registrant); WicketUtils.setCssStyle(label, "font-weight: bold;"); item.add(label); } } else if (RegistrantType.USER.equals(entry.registrantType)) { // user PersonIdent ident = new PersonIdent(entry.registrant, ""); UserModel user = app().users().getUserModel(entry.registrant); if (user != null) { ident = new PersonIdent(user.getDisplayName(), user.emailAddress == null ? user.getDisplayName() : user.emailAddress); } Fragment userFragment = new Fragment("registrant", "userRegistrant", RegistrantPermissionsPanel.this); userFragment.add(new AvatarImage("userAvatar", ident, 20)); userFragment.add(new Label("userName", entry.registrant)); item.add(userFragment); } else { // team Fragment teamFragment = new Fragment("registrant", "teamRegistrant", RegistrantPermissionsPanel.this); teamFragment.add(new Label("teamName", entry.registrant)); item.add(teamFragment); } switch (entry.permissionType) { case ADMINISTRATOR: Label administrator = new Label("pType", entry.source == null ? getString("gb.administrator") : entry.source); WicketUtils.setHtmlTooltip(administrator, getString("gb.administratorPermission")); WicketUtils.setCssClass(administrator, "label label-inverse"); item.add(administrator); break; case OWNER: Label owner = new Label("pType", getString("gb.owner")); WicketUtils.setHtmlTooltip(owner, getString("gb.ownerPermission")); WicketUtils.setCssClass(owner, "label label-info"); item.add(owner); break; case TEAM: Label team = new Label("pType", entry.source == null ? getString("gb.team") : entry.source); WicketUtils.setHtmlTooltip(team, MessageFormat.format(getString("gb.teamPermission"), entry.source)); WicketUtils.setCssClass(team, "label label-success"); item.add(team); break; case REGEX: Label regex = new Label("pType", "regex"); if (!StringUtils.isEmpty(entry.source)) { WicketUtils.setHtmlTooltip(regex, MessageFormat.format(getString("gb.regexPermission"), entry.source)); } WicketUtils.setCssClass(regex, "label"); item.add(regex); break; default: if (entry.isMissing()) { // repository is missing, this permission will be removed on save Label missing = new Label("pType", getString("gb.missing")); WicketUtils.setCssClass(missing, "label label-important"); WicketUtils.setHtmlTooltip(missing, getString("gb.missingPermission")); item.add(missing); } else { // standard permission item.add(new Label("pType", "").setVisible(false)); } break; } item.setVisible(activeState.show(entry)); // use ajax to get immediate update of permission level change // otherwise we can lose it if they change levels and then add // a new repository permission final DropDownChoice<AccessPermission> permissionChoice = new DropDownChoice<AccessPermission>( "permission", Arrays.asList(AccessPermission.values()), new AccessPermissionRenderer(translations)); // only allow changing an explicitly defined permission // this is designed to prevent changing a regex permission in // a repository permissionChoice.setEnabled(entry.mutable); permissionChoice.setOutputMarkupId(true); if (entry.mutable) { permissionChoice.add(new AjaxFormComponentUpdatingBehavior("change") { private static final long serialVersionUID = 1L; @Override protected void onUpdate(AjaxRequestTarget target) { target.add(permissionChoice); } }); } item.add(permissionChoice); } }; add(dataView); setOutputMarkupId(true); // filter out registrants we already have permissions for final List<String> registrants = new ArrayList<String>(allRegistrants); for (RegistrantAccessPermission rp : permissions) { if (rp.mutable) { // remove editable duplicates // this allows for specifying an explicit permission registrants.remove(rp.registrant); } else if (rp.isAdmin()) { // administrators can not have their permission changed registrants.remove(rp.registrant); } else if (rp.isOwner()) { // owners can not have their permission changed registrants.remove(rp.registrant); } } /* * Add permission form */ IModel<RegistrantAccessPermission> addPermissionModel = new CompoundPropertyModel<RegistrantAccessPermission>( new RegistrantAccessPermission(registrantType)); Form<RegistrantAccessPermission> addPermissionForm = new Form<RegistrantAccessPermission>( "addPermissionForm", addPermissionModel); addPermissionForm.add(new DropDownChoice<String>("registrant", registrants)); addPermissionForm.add(new DropDownChoice<AccessPermission>("permission", Arrays.asList(AccessPermission.NEWPERMISSIONS), new AccessPermissionRenderer(translations))); AjaxButton button = new AjaxButton("addPermissionButton", addPermissionForm) { private static final long serialVersionUID = 1L; @Override protected void onSubmit(AjaxRequestTarget target) { // add permission to our list RegistrantAccessPermission rp = (RegistrantAccessPermission) getForm().getModel().getObject(); if (rp.permission == null) { return; } if (rp.registrant == null) { return; } RegistrantAccessPermission copy = DeepCopier.copy(rp); if (StringUtils.findInvalidCharacter(copy.registrant) != null) { copy.permissionType = PermissionType.REGEX; copy.source = copy.registrant; } permissions.add(copy); // resort permissions after insert to convey idea of eval order Collections.sort(permissions); // remove registrant from available choices registrants.remove(rp.registrant); // force the panel to refresh target.add(RegistrantPermissionsPanel.this); } }; addPermissionForm.add(button); // only show add permission form if we have a registrant choice add(addPermissionForm.setVisible(registrants.size() > 0)); }
From source file:com.przemo.projectmanagementweb.pages.SprintPage.java
public SprintPage(IModel<Sprint> model) { super(model); Form f = new Form("form") { @Override/* w w w . j av a 2s .c om*/ protected void onSubmit() { try { sprintService.saveSprint(model.getObject()); success("Sprint saved successfully."); //setResponsePage(SprintsListPage.class); } catch (Exception ex) { error(ex.getMessage()); } } }; add(new Link("newtasklink") { @Override public void onClick() { Task t = taskService.createNewTask(); t.setSprint(model.getObject()); setResponsePage(new TaskPage(new CompoundPropertyModel<>(t))); } }); f.add(new TextField("name")); f.add(new TextField<>("startDate")); f.add(new TextField("endDate")); f.add(new Label("timeAvailable", sprintService.getAvailableTime(model.getObject()))); f.add(new Label("timeElapsed", Model.of(timeLogService.getTimeLoggedForSprint(model.getObject().getId())))); f.add(new Label("sprintStatus.name")); add(f); Form closeSprint = new Form("closeSprintForm") { @Override protected void onSubmit() { try { sprintService.saveSprintWithStatus(model.getObject(), "Closed"); } catch (SprintServiceSaveException ex) { Logger.getLogger(SprintPage.class.getName()).log(Level.SEVERE, null, ex); error(ex.getMessage()); } setResponsePage(SprintsListPage.class); } }; add(closeSprint); closeSprint.setVisible(model.getObject().getSprintStatus() == null || !model.getObject().getSprintStatus().getName().equals("Closed")); Form currentSprint = new Form("currentSprintForm") { @Override protected void onSubmit() { try { sprintService.saveSprintWithStatus(model.getObject(), "Current"); } catch (SprintServiceSaveException ex) { Logger.getLogger(SprintPage.class.getName()).log(Level.SEVERE, null, ex); error(ex.getMessage()); } setResponsePage(SprintsListPage.class); } }; add(currentSprint); currentSprint.setVisible(model.getObject().getSprintStatus() == null || !(model.getObject().getSprintStatus().getName().equals("Current") || model.getObject().getSprintStatus().getName().equals("Closed"))); //instead of a single task panel, task panels for different sprint flows are rendered renderSprintFlowTaskLists(model); }
From source file:com.tysanclan.site.projectewok.components.ConversationContentPanel.java
License:Open Source License
public ConversationContentPanel(String id, ConversationParticipation participation, final EntityClickListener<ConversationParticipation> listener) { super(id);/* w ww . ja va2s . com*/ participationId = participation.getId(); for (Message m : participation.getConversation().getMessages()) { if (!participation.getReadMessages().contains(m)) { service.markAsRead(participation, m); } } add(new ListView<Message>("messages", new MessageList(participation.getConversation().getId())) { private static final long serialVersionUID = 1L; @Override protected void populateItem(ListItem<Message> item) { Message message = item.getModelObject(); item.add(new Label("user", message.getSender() != null ? message.getSender().getUsername() : "System")); item.add(new Label("time", DateUtil.getTimezoneFormattedString(message.getSendTime(), getUser().getTimezone()))); item.add(new BBCodePanel("content", message.getContent())); } }.setOutputMarkupId(true).add(new AjaxSelfUpdatingTimerBehavior(Duration.seconds(15)))); List<ConversationParticipation> plist = new LinkedList<ConversationParticipation>(); plist.addAll(participation.getConversation().getParticipants()); add(new ListView<ConversationParticipation>("participants", ModelMaker.wrap(plist)) { private static final long serialVersionUID = 1L; @Override protected void populateItem(ListItem<ConversationParticipation> item) { item.add(new MemberListItem("participant", item.getModelObject().getUser())); } }); Form<ConversationParticipation> respondForm = new Form<ConversationParticipation>("respondForm", ModelMaker.wrap(participation)) { private static final long serialVersionUID = 1L; @SpringBean private MessageService messageService; @Override protected void onSubmit() { String message = getEditorComponent().getModelObject(); ConversationParticipation part = getModelObject(); Message msg = messageService.respondToConversation(part.getConversation(), part.getUser(), message); messageService.markAsRead(part, msg); listener.onEntityClick(null, part); } }; editorVisible = participation.getConversation().getParticipants().size() > 1; add(new WebMarkupContainer("respondheader").setVisible(editorVisible)); respondForm.setVisible(editorVisible); editor = new BBCodeTextArea("messagecontent", ""); editor.setOutputMarkupId(true); editor.setOutputMarkupPlaceholderTag(true); respondForm.add(editor); add(respondForm); }
From source file:com.tysanclan.site.projectewok.components.TrialPanel.java
License:Open Source License
/** * //from w w w. ja v a 2 s .c o m */ public TrialPanel(String id, Trial trial, User user) { super(id); if (MemberUtil.isMember(trial.getAccused())) { add(new MemberListItem("accused", trial.getAccused())); } else { add(new Label("accused", trial.getAccused().getUsername())); } add(new ListView<Regulation>("regulations", ModelMaker.wrap(trial.getRegulations())) { private static final long serialVersionUID = 1L; @Override protected void populateItem(ListItem<Regulation> item) { Regulation regulation = item.getModelObject(); item.add(new Label("name", regulation.getName())); } }); if (MemberUtil.isMember(trial.getAccused())) { add(new MemberListItem("truthsayer", trial.getJudge())); } else { add(new Label("truthsayer", trial.getJudge().getUsername())); } add(new BBCodePanel("evidence", trial.getMotivation()).setVisible(trial.getJudge().equals(user))); ForumThread thread = trial.getTrialThread(); Calendar cal = DateUtil.getMidnightCalendarInstance(); Calendar cal2 = Calendar.getInstance(); cal2.setTime(thread.getPostTime()); cal2.add(Calendar.DAY_OF_MONTH, 1); cal.set(Calendar.DAY_OF_MONTH, cal2.get(Calendar.DAY_OF_MONTH)); cal.set(Calendar.MONTH, cal2.get(Calendar.MONTH)); cal.set(Calendar.YEAR, cal2.get(Calendar.YEAR)); boolean canVerdictBePassed = trial.getAccused().getRank() == Rank.TRIAL || new Date().after(cal.getTime()); boolean hasVerdict = trial.getVerdict() != null; boolean isJudge = user != null && user.equals(trial.getJudge()); Form<Trial> verdictForm = new Form<Trial>("verdictForm", ModelMaker.wrap(trial)) { private static final long serialVersionUID = 1L; @SpringBean private LawEnforcementService lawEnforcementService; /** * @see org.apache.wicket.markup.html.form.Form#onSubmit() */ @SuppressWarnings("unchecked") @Override protected void onSubmit() { Trial t = getModelObject(); DropDownChoice<Verdict> verdictChoice = (DropDownChoice<Verdict>) get("verdict"); Verdict verdict = verdictChoice.getModelObject(); lawEnforcementService.passVerdict(t, verdict); setResponsePage(new ForumThreadPage(t.getTrialThread().getId(), 1, false)); } }; verdictForm.add(new DropDownChoice<Verdict>("verdict", new Model<Verdict>(Verdict.INNOCENT), Arrays.asList(Verdict.values()), new IChoiceRenderer<Verdict>() { /** * */ private static final long serialVersionUID = 1L; @Override public Object getDisplayValue(Verdict object) { switch (object) { case INNOCENT: return "Member is innocent"; case MINOR: return "Member is guilty, but will only be given a warning"; case MEDIUM: return "Member is guilty, and will be reprimanded"; case MAJOR: return "Member is guilty and will be banned immediately"; default: return "I have no idea"; } } @Override public String getIdValue(Verdict object, int index) { return object.toString(); } })); verdictForm.setVisible(canVerdictBePassed && !hasVerdict && isJudge); add(new IconLink.Builder(trial.isRestrained() ? "images/icons/lock_delete.png" : "images/icons/lock.png", new DefaultClickResponder<Trial>(ModelMaker.wrap(trial)) { private static final long serialVersionUID = 1L; @SpringBean private LawEnforcementService lawEnforcementService; /** * @see com.tysanclan.site.projectewok.components.IconLink.DefaultClickResponder#onClick() */ @Override public void onClick() { Trial t = getModelObject(); if (t.isRestrained()) { lawEnforcementService.unrestrainAccused(t); } else { lawEnforcementService.restrainAccused(t); } setResponsePage(new ForumThreadPage(t.getTrialThread().getId(), 1, false)); } }).setText(trial.isRestrained() ? "Lift restraint" : "Restrain the accused").newInstance("restrain") .setVisible(isJudge)); if (hasVerdict) { switch (trial.getVerdict()) { case MAJOR: add(new Label("verdict", "Member was found guilty, and removed from the clan")); break; case MEDIUM: add(new Label("verdict", "Member was found guilty, and given a reprimand")); break; case MINOR: add(new Label("verdict", "Member was found guilty, and given a warning")); break; case INNOCENT: add(new Label("verdict", "Member was found innocent")); break; default: add(new WebMarkupContainer("verdict").setVisible(false)); } } else { add(new WebMarkupContainer("verdict").setVisible(false)); } add(verdictForm); }
From source file:com.tysanclan.site.projectewok.pages.member.group.EditGroupForumModeratorPage.java
License:Open Source License
public EditGroupForumModeratorPage(GroupForum groupForum) { super("Moderators for forum " + groupForum.getName()); forumModel = ModelMaker.wrap(groupForum); Group group = groupForum.getGroup(); if (!group.getLeader().equals(getUser())) { throw new RestartResponseAtInterceptPageException(AccessDeniedPage.class); }/*w w w . ja v a 2 s. c o m*/ add(new Label("title", "Moderators for forum " + groupForum.getName())); List<User> moderators = new LinkedList<User>(); moderators.addAll(groupForum.getModerators()); Collections.sort(moderators, new Comparator<User>() { @Override public int compare(User o1, User o2) { return o1.getUsername().compareTo(o2.getUsername()); } }); add(new ListView<User>("moderators", ModelMaker.wrap(moderators)) { private static final long serialVersionUID = 1L; @Override protected void populateItem(ListItem<User> item) { User user = item.getModelObject(); item.add(new Label("user", user.getUsername())); Link<User> deleteLink = new Link<User>("remove", ModelMaker.wrap(user)) { private static final long serialVersionUID = 1L; @SpringBean private ForumService forumService; /** * @see org.apache.wicket.markup.html.link.Link#onClick() */ @Override public void onClick() { User moderator = getModelObject(); setResponsePage(new EditGroupForumModeratorPage( (GroupForum) forumService.removeModerator(getUser(), getForum(), moderator))); } }; deleteLink.add(new ContextImage("icon", "images/icons/group_delete.png")); item.add(deleteLink); } }); Form<GroupForum> addModeratorForm = new Form<GroupForum>("addForm", ModelMaker.wrap(groupForum)) { private static final long serialVersionUID = 1L; @SpringBean private ForumService forumService; /** * @see org.apache.wicket.markup.html.form.Form#onSubmit() */ @SuppressWarnings("unchecked") @Override protected void onSubmit() { DropDownChoice<User> userChoice = (DropDownChoice<User>) get("userSelect"); User moderator = userChoice.getModelObject(); setResponsePage(new EditGroupForumModeratorPage( (GroupForum) forumService.addModerator(getUser(), getModelObject(), moderator))); } }; List<User> users = new LinkedList<User>(); users.addAll(group.getGroupMembers()); users.removeAll(moderators); Collections.sort(users, new Comparator<User>() { @Override public int compare(User o1, User o2) { return o1.getUsername().compareToIgnoreCase(o2.getUsername()); } }); addModeratorForm.add( new DropDownChoice<User>("userSelect", ModelMaker.wrap(users.isEmpty() ? null : users.get(0), true), ModelMaker.wrap(users)).setNullValid(false)); addModeratorForm.setVisible(!users.isEmpty()); add(addModeratorForm); addBackLink(group); }
From source file:com.tysanclan.site.projectewok.pages.member.TruthsayerNominationPage.java
License:Open Source License
/** * /* www . j ava 2s .co m*/ */ public TruthsayerNominationPage() { super("Nominate Truthsayer"); Form<?> nominateForm = new Form<Void>("nominateform") { private static final long serialVersionUID = 1L; @SpringBean private LawEnforcementService lawEnforcementService; /** * @see org.apache.wicket.markup.html.form.Form#onSubmit() */ @SuppressWarnings("unchecked") @Override protected void onSubmit() { TysanDropDownChoice<User> userChoice = (TysanDropDownChoice<User>) get("user"); User user = userChoice.getModelObject(); if (user != null) { lawEnforcementService.nominateTruthsayer(getUser(), user); setResponsePage(new TruthsayerNominationPage()); } else { error("You must select a user!"); } } }; UserFilter filter = new UserFilter(); filter.setRetired(false); filter.addRank(Rank.REVERED_MEMBER); filter.addRank(Rank.FULL_MEMBER); filter.addRank(Rank.SENIOR_MEMBER); filter.setTruthsayerNominated(false); filter.addOrderBy("username", true); List<User> users = userDAO.findByFilter(filter); nominateForm.add(new TysanDropDownChoice<User>("user", null, users).setNullValid(false)); nominateForm.setVisible(!users.isEmpty()); if (users.isEmpty()) { info("There are no users who qualify to become a Truthsayer"); } add(nominateForm); }
From source file:com.tysanclan.site.projectewok.pages.PasswordRequestPage.java
License:Open Source License
public PasswordRequestPage(String username) { super("Request Password"); UserFilter filter = new UserFilter(); filter.setUsername(username);//from w ww . j a va2 s. c o m String _username = username; User user = null; List<User> users = userDAO.findByFilter(filter); if (!users.isEmpty()) { user = users.get(0); } Form<User> requestPasswordForm = new Form<User>("requestpassword", ModelMaker.wrap(user)) { private static final long serialVersionUID = 1L; @SpringBean private MailService mailService; @SpringBean private UserService userService; @SpringBean private PasswordRequestDAO passwordRequestDAO; /** * @see org.apache.wicket.markup.html.form.Form#onSubmit() */ @Override protected void onSubmit() { User u = getModelObject(); PasswordRequestFilter f = new PasswordRequestFilter(); f.setUser(u); List<PasswordRequest> requests = passwordRequestDAO.findByFilter(f); if (u != null && requests.isEmpty()) { PasswordRequest request = userService.generatePasswordRequest(u); String requestBody = mailService.getPasswordRequestMailBody(u.getUsername(), request.getKey()); mailService.sendHTMLMail(u.getEMail(), "Tysan Clan Password Reset", requestBody); } info("Password reset mail sent!"); } }; requestPasswordForm.setVisible(user != null); requestPasswordForm.add(new TextField<String>("username", new Model<String>(_username)).setEnabled(false)); add(requestPasswordForm); }
From source file:com.userweave.pages.configuration.study.localization.LanguageActivationPanel.java
License:Open Source License
protected void init() { User user = UserWeaveSession.get().getUser(); final boolean isAuthorized = user.getCurrentProjectRoles().hasRole(Role.PROJECT_ADMIN) || user.getCurrentProjectRoles().hasRole(Role.PROJECT_PARTICIPANT); Form form = new Form("form"); form.setVisible(isAuthorized); CheckGroup group = new CheckGroup("group", new PropertyModel(getDefaultModel(), "supportedLocales")); group.add(new ListView("checkboxes", getAdditionalLocales()) { @Override//from ww w. ja v a 2 s .c o m protected void populateItem(ListItem item) { item.add(new Check("check", item.getModel())); item.add(new Label("locale", new LocaleModel(item.getModel(), getLocale()))); } }); group.add(new AjaxFormChoiceComponentUpdatingBehavior() { @Override protected void onUpdate(AjaxRequestTarget target) { Study study = getStudy(); study.getSupportedLocales().add(study.getLocale()); studyDao.save(study); onChange(target); } }); form.add(group); // dispay a list of available languages if user is visitor ListView langList = new ListView("langList", new PropertyModel(getDefaultModel(), "supportedLocales")) { @Override protected void populateItem(ListItem item) { Locale locale = (Locale) item.getModelObject(); item.add(new Label("locale", locale.getDisplayLanguage(getLocale()))); } @Override public boolean isVisible() { return !isAuthorized; } }; add(langList); add(form); }
From source file:gr.interamerican.wicket.markup.html.panel.back.ServicePanelWithBack.java
License:Open Source License
/** * Paints the go-back button./*from w w w .ja v a 2 s. c o m*/ */ protected void paintBackButton() { Form<Void> backForm = new Form<Void>(BACK_FORM_ID); add(backForm); backForm.add(backButton); if (getDefinition().getBackAction() != null) { backForm.setVisible(true); } else { backForm.setVisible(false); } }