package com.rectang.xsm.pages.admin; import com.rectang.xsm.AccessControl; import com.rectang.xsm.UserData; import com.rectang.xsm.XSM; import com.rectang.xsm.pages.Secure; import com.rectang.xsm.pages.XSMPage; import org.apache.wicket.PageParameters; import org.apache.wicket.ResourceReference; import org.apache.wicket.markup.html.basic.Label; import org.apache.wicket.markup.html.image.Image; import org.apache.wicket.markup.html.list.ListItem; import org.apache.wicket.markup.html.list.ListView; import java.util.*; /** * Regenerate the site - A nasty hack until we can stop using jsp! * * @author Andrew Williams * @version $Id: Publish.java 832 2011-09-26 21:45:04Z andy $ * @since 2.0 */ public class Publish extends XSMPage implements Secure { public Publish( PageParameters parameters ) { super( parameters ); } public int getLevel() { return AccessControl.MANAGER; } public void layout() { super.layout(); UserData user = getXSMSession().getUser(); final Map results = user.getSite().publish( user ); List paths = new LinkedList( results.keySet() ); Collections.sort( paths ); add( new ListView<String>( "status-output", paths ) { protected void populateItem( ListItem listItem ) { String path = (String) listItem.getModelObject(); listItem.add( new Label( "path", path ) ); Boolean ok = (Boolean) results.get( path ); if ( ok == Boolean.TRUE ) { listItem.add( new Image( "icon", new ResourceReference( XSM.class, "icons/emblem-default.png" ) ) ); } else { listItem.add( new Image( "icon", new ResourceReference( XSM.class, "icons/emblem-important.png" ) ) ); } } } ); } }