// Path: web/src/main/java/org/sample/web/app/security/Roles.java
// public final class Roles {
// 	public static final String USER="USER";
// 	public static final String ADMIN="ADMIN";
// }
// 
// Path: web/src/main/java/org/sample/web/components/IconPanel.java
// public class IconPanel<C extends Page> extends Panel {
// 
// 
// 	private static final long serialVersionUID = 1L;
// 	
// 	private final BookmarkablePageLink<Void> bookmarkablePageLink;
// 	private final Label label;
// 	private Label image;
// 
// 	public IconPanel(String id, IModel<String> labelModel, Class<C> pageClass, String iconClass) {
// 		super(id);
// 		bookmarkablePageLink=new BookmarkablePageLink<Void>("link", pageClass);
// 		add(bookmarkablePageLink);		
// 		image=new Label("image");
// 		image.add(AttributeModifier.append("class", "fa fa-5x "+iconClass));
// 		bookmarkablePageLink.add(image);
// 		label=new Label("label",labelModel);
// 		bookmarkablePageLink.add(label);
// 	}
// 
// }
// 
// Path: web/src/main/java/org/sample/web/pages/lists/ListCategoryDummyPage.java
// public class ListCategoryDummyPage extends AbstractListPage<CategoryDummy> {
// 	
// 	private static final long serialVersionUID = 1L;
// 	
// 	@SpringBean
// 	protected CategoryDummyRepository categoryDummyRepository;
// 	
// 	public ListCategoryDummyPage(PageParameters pageParameters) {
// 
// 		this.jpaRepository=categoryDummyRepository;
// 		this.editPageClass=EditCategoryDummyPage.class;
// 		columns.add(new PropertyColumn<CategoryDummy,String>(new Model<String>("Name"), "name", "name"));
// 	}
// 
// 
// }
// 
// Path: web/src/main/java/org/sample/web/pages/lists/ListDummyPage.java
// public class ListDummyPage extends AbstractListPage<Dummy> {
// 	
// 	private static final long serialVersionUID = 1L;
// 	
// 	@SpringBean
// 	protected DummyRepository dummyRepository;
// 	
// 	public ListDummyPage(PageParameters pageParameters) {
// 
// 		this.jpaRepository=dummyRepository;
// 		this.editPageClass=EditDummyPage.class;
// 		columns.add(new PropertyColumn<Dummy,String>(new Model<String>("Name"), "name", "name"));
// 	}
// 
// 
// }
// 
// Path: web/src/main/java/org/sample/web/pages/nav/AbstractNavPage.java
// public abstract class AbstractNavPage extends HeaderFooter {
// 
// 	private static final long serialVersionUID = 1L;
// 	protected RepeatingView listIcons;
// 
// 	public AbstractNavPage() {
// 		super();
// 
// 		add(createPageTitleTag("nav.title"));
// 		add(createPageHeading("nav.title"));
// 		add(createPageMessage("nav.message"));
// 
// 		listIcons = new RepeatingView("listIcons");
// 		add(listIcons);
// 	}
// 
// }


import org.apache.wicket.authroles.authorization.strategies.role.annotations.AuthorizeInstantiation;
import org.apache.wicket.model.Model;
import org.sample.web.app.security.Roles;
import org.sample.web.components.IconPanel;
import org.sample.web.pages.lists.ListCategoryDummyPage;
import org.sample.web.pages.lists.ListDummyPage;
import org.sample.web.pages.nav.AbstractNavPage;

package org.sample.web.pages;



/**
 * @author mpostelnicu
 * 
 */
@AuthorizeInstantiation({ Roles.USER })
public class HomePage extends AbstractNavPage {
	private static final long serialVersionUID = 1L;



	public HomePage() {
		super();

		listIcons.add(new IconPanel<ListDummyPage>(listIcons.newChildId(),
				Model.of("Dummy"), ListDummyPage.class, "fa-book"));
		

// Path: web/src/main/java/org/sample/web/app/security/Roles.java
// public final class Roles {
// 	public static final String USER="USER";
// 	public static final String ADMIN="ADMIN";
// }
// 
// Path: web/src/main/java/org/sample/web/components/IconPanel.java
// public class IconPanel<C extends Page> extends Panel {
// 
// 
// 	private static final long serialVersionUID = 1L;
// 	
// 	private final BookmarkablePageLink<Void> bookmarkablePageLink;
// 	private final Label label;
// 	private Label image;
// 
// 	public IconPanel(String id, IModel<String> labelModel, Class<C> pageClass, String iconClass) {
// 		super(id);
// 		bookmarkablePageLink=new BookmarkablePageLink<Void>("link", pageClass);
// 		add(bookmarkablePageLink);		
// 		image=new Label("image");
// 		image.add(AttributeModifier.append("class", "fa fa-5x "+iconClass));
// 		bookmarkablePageLink.add(image);
// 		label=new Label("label",labelModel);
// 		bookmarkablePageLink.add(label);
// 	}
// 
// }
// 
// Path: web/src/main/java/org/sample/web/pages/lists/ListCategoryDummyPage.java
// public class ListCategoryDummyPage extends AbstractListPage<CategoryDummy> {
// 	
// 	private static final long serialVersionUID = 1L;
// 	
// 	@SpringBean
// 	protected CategoryDummyRepository categoryDummyRepository;
// 	
// 	public ListCategoryDummyPage(PageParameters pageParameters) {
// 
// 		this.jpaRepository=categoryDummyRepository;
// 		this.editPageClass=EditCategoryDummyPage.class;
// 		columns.add(new PropertyColumn<CategoryDummy,String>(new Model<String>("Name"), "name", "name"));
// 	}
// 
// 
// }
// 
// Path: web/src/main/java/org/sample/web/pages/lists/ListDummyPage.java
// public class ListDummyPage extends AbstractListPage<Dummy> {
// 	
// 	private static final long serialVersionUID = 1L;
// 	
// 	@SpringBean
// 	protected DummyRepository dummyRepository;
// 	
// 	public ListDummyPage(PageParameters pageParameters) {
// 
// 		this.jpaRepository=dummyRepository;
// 		this.editPageClass=EditDummyPage.class;
// 		columns.add(new PropertyColumn<Dummy,String>(new Model<String>("Name"), "name", "name"));
// 	}
// 
// 
// }
// 
// Path: web/src/main/java/org/sample/web/pages/nav/AbstractNavPage.java
// public abstract class AbstractNavPage extends HeaderFooter {
// 
// 	private static final long serialVersionUID = 1L;
// 	protected RepeatingView listIcons;
// 
// 	public AbstractNavPage() {
// 		super();
// 
// 		add(createPageTitleTag("nav.title"));
// 		add(createPageHeading("nav.title"));
// 		add(createPageMessage("nav.message"));
// 
// 		listIcons = new RepeatingView("listIcons");
// 		add(listIcons);
// 	}
// 
// }


// Path: web/src/main/java/org/sample/web/pages/HomePage.java
import org.apache.wicket.authroles.authorization.strategies.role.annotations.AuthorizeInstantiation;
import org.apache.wicket.model.Model;
import org.sample.web.app.security.Roles;
import org.sample.web.components.IconPanel;
import org.sample.web.pages.lists.ListCategoryDummyPage;
import org.sample.web.pages.lists.ListDummyPage;
import org.sample.web.pages.nav.AbstractNavPage;

package org.sample.web.pages;



/**
 * @author mpostelnicu
 * 
 */
@AuthorizeInstantiation({ Roles.USER })
public class HomePage extends AbstractNavPage {
	private static final long serialVersionUID = 1L;



	public HomePage() {
		super();

		listIcons.add(new IconPanel<ListDummyPage>(listIcons.newChildId(),
				Model.of("Dummy"), ListDummyPage.class, "fa-book"));
		

		listIcons.add(new IconPanel<ListCategoryDummyPage>(listIcons.newChildId(),
