/* (c) 2014 Open Source Geospatial Foundation - all rights reserved * (c) 2001 - 2013 OpenPlans * This code is licensed under the GPL 2.0 license, available at the root * application directory. */ package org.geoserver.security.web.passwd; import org.apache.wicket.ajax.AjaxRequestTarget; import org.apache.wicket.ajax.markup.html.AjaxLink; import org.apache.wicket.markup.html.form.Form; import org.apache.wicket.markup.html.form.SubmitLink; import org.apache.wicket.markup.html.link.Link; import org.apache.wicket.model.CompoundPropertyModel; import org.geoserver.security.password.MasterPasswordConfig; import org.geoserver.security.web.AbstractSecurityPage; import org.geoserver.web.GeoServerHomePage; import org.geoserver.web.wicket.HelpLink; public class PasswordPage extends AbstractSecurityPage { public PasswordPage() { Form form = new Form("form", new CompoundPropertyModel(new MasterPasswordConfigModel())); add(form); form.add(new MasterPasswordProviderChoice("providerName")); form.add(new Link("changePassword") { @Override public void onClick() { MasterPasswordChangePage page = new MasterPasswordChangePage(); page.setReturnPage(getPage()); setResponsePage(page); } }); form.add(new Link("masterPasswordInfo") { @Override public void onClick() { MasterPasswordInfoPage page = new MasterPasswordInfoPage(); page.setReturnPage(getPage()); setResponsePage(page); } }); form.add(new MasterPasswordProvidersPanel("masterPasswordProviders")); form.add(new HelpLink("masterPasswordProvidersHelp").setDialog(dialog)); form.add(new PasswordPoliciesPanel("passwordPolicies")); form.add(new HelpLink("passwordPoliciesHelp").setDialog(dialog)); form.add(new SubmitLink("save", form) { @Override public void onSubmit() { MasterPasswordConfig config = (MasterPasswordConfig) getForm().getModelObject(); try { getSecurityManager().saveMasterPasswordConfig(config); doReturn(); } catch (Exception e) { error(e); } } }); form.add(new AjaxLink("cancel") { @Override public void onClick(AjaxRequestTarget target) { doReturn(); } }); } }