Commit fe0fc79a by Tuomas Riihimäki

Muutetaan kaksitasoiseksi kaikki menut ja siitä ylöspäin tabmenulla

1 parent ce16315e
...@@ -70,11 +70,11 @@ public class MenuBean implements MenuBeanLocal { ...@@ -70,11 +70,11 @@ public class MenuBean implements MenuBeanLocal {
private synchronized void initializeMenu() { private synchronized void initializeMenu() {
int menusort = 100; //int menusort = 100;
logger.info("Initializing new default menu"); logger.info("Initializing new default menu");
LanEvent ev = eventbean.getCurrentEvent(); LanEvent ev = eventbean.getCurrentEvent();
MenuNavigation usermenu = new MenuNavigation(ev, "topmenu.user", menusort = +10); MenuNavigation usermenu = new MenuNavigation(ev, "topmenu.user", 40);
usermenu.addPage(menuitemfacade.findOrCreate("/frontpage"), UserPermission.ANYUSER); usermenu.addPage(menuitemfacade.findOrCreate("/frontpage"), UserPermission.ANYUSER);
usermenu.addPage(menuitemfacade.findOrCreate("/permissionDenied"), null).setVisible(false); usermenu.addPage(menuitemfacade.findOrCreate("/permissionDenied"), null).setVisible(false);
...@@ -120,7 +120,7 @@ public class MenuBean implements MenuBeanLocal { ...@@ -120,7 +120,7 @@ public class MenuBean implements MenuBeanLocal {
userprofile.addPage(menuitemfacade.findOrCreate("/user/changePassword"), UserPermission.VIEW_SELF); userprofile.addPage(menuitemfacade.findOrCreate("/user/changePassword"), UserPermission.VIEW_SELF);
userprofile.addPage(menuitemfacade.findOrCreate("/user/gameids"), UserPermission.MODIFY_OWN_GAMEIDS); userprofile.addPage(menuitemfacade.findOrCreate("/user/gameids"), UserPermission.MODIFY_OWN_GAMEIDS);
userprofile.addPage(menuitemfacade.findOrCreate("/auth/logout"), UserPermission.LOGOUT); userprofile.addPage(menuitemfacade.findOrCreate("/auth/logout"), UserPermission.LOGOUT);
MenuNavigation tournaments = usermenu.addPage(null, null); MenuNavigation tournaments = usermenu.addPage(null, null);
tournaments.setKey("tournaments.menutitle"); tournaments.setKey("tournaments.menutitle");
tournaments.addPage(menuitemfacade.findOrCreate("/tournaments/index"), TournamentPermission.VIEW); tournaments.addPage(menuitemfacade.findOrCreate("/tournaments/index"), TournamentPermission.VIEW);
...@@ -138,7 +138,7 @@ public class MenuBean implements MenuBeanLocal { ...@@ -138,7 +138,7 @@ public class MenuBean implements MenuBeanLocal {
// Admin menu // Admin menu
// //
MenuNavigation adminmenu = new MenuNavigation(ev, "topmenu.admin", menusort = +10); MenuNavigation adminmenu = new MenuNavigation(ev, "topmenu.admin", 20);
//user management //user management
MenuNavigation adminuser = adminmenu.addPage(null, null); MenuNavigation adminuser = adminmenu.addPage(null, null);
...@@ -236,11 +236,11 @@ public class MenuBean implements MenuBeanLocal { ...@@ -236,11 +236,11 @@ public class MenuBean implements MenuBeanLocal {
navifacade.create(adminmenu); navifacade.create(adminmenu);
MenuNavigation shopmenu = new MenuNavigation(ev, "topnavi.shopnavi", menusort = +10); //MenuNavigation shopmenu = new MenuNavigation(ev, "topnavi.shopnavi", menusort = +10);
// shopnavi.addPage(menuitemfacade.findOrCreate("/index3"), // shopnavi.addPage(menuitemfacade.findOrCreate("/index3"),
// UserPermission.ANYUSER); // UserPermission.ANYUSER);
navifacade.create(shopmenu); // navifacade.create(shopmenu);
MenuNavigation tournamentsadm = adminmenu.addPage(null, null); MenuNavigation tournamentsadm = adminmenu.addPage(null, null);
tournamentsadm.setKey("tournaments.menutitle"); tournamentsadm.setKey("tournaments.menutitle");
tournamentsadm.addPage(menuitemfacade.findOrCreate("/tournaments/admin/index"), TournamentPermission.MANAGE_ALL); tournamentsadm.addPage(menuitemfacade.findOrCreate("/tournaments/admin/index"), TournamentPermission.MANAGE_ALL);
......
...@@ -59,8 +59,7 @@ ...@@ -59,8 +59,7 @@
<div id="header_center" class="flex1"></div> <div id="header_center" class="flex1"></div>
<div id="header_right"> <div id="header_right">
<a href="http://www.codecrew.fi"><img src="#{request.contextPath}/resources/templates/template1/img/moya_logo.png" /> <a href="http://www.codecrew.fi"><img src="#{request.contextPath}/resources/templates/template1/img/moya_logo.png" /> </a>
</a>
</div> </div>
</header> </header>
...@@ -94,6 +93,9 @@ ...@@ -94,6 +93,9 @@
</h:link> </h:link>
</div> </div>
<ui:insert name="title" /> <ui:insert name="title" />
<p:panelMenu model="#{primeMenuView.secondaryMenuModel}" />
<p:messages severity="info" /> <p:messages severity="info" />
<ui:insert name="edittab" /> <ui:insert name="edittab" />
<!-- <h:messages /> --> <!-- <h:messages /> -->
......
package fi.codecrew.moya.web.cdiview.menu; package fi.codecrew.moya.web.cdiview.menu;
import java.util.ArrayList;
import java.util.List;
import java.util.Set; import java.util.Set;
import javax.ejb.EJB; import javax.ejb.EJB;
...@@ -51,8 +53,6 @@ public class PrimeMenuView extends GenericCDIView { ...@@ -51,8 +53,6 @@ public class PrimeMenuView extends GenericCDIView {
@Inject @Inject
private LayoutView layoutview; private LayoutView layoutview;
private MenuModel nameMenu;
// private EventUser user; // private EventUser user;
private static final Logger logger = LoggerFactory.getLogger(PrimeMenuView.class); private static final Logger logger = LoggerFactory.getLogger(PrimeMenuView.class);
...@@ -69,6 +69,17 @@ public class PrimeMenuView extends GenericCDIView { ...@@ -69,6 +69,17 @@ public class PrimeMenuView extends GenericCDIView {
// return nameMenu; // return nameMenu;
// } // }
private DefaultMenuModel secondaryMenuModel;
public MenuModel getSecondaryMenuModel()
{
if (secondaryMenuModel == null) {
getMenuModel();
}
//logger.info("Returning secondary menumodel with {} entries {}", secondaryMenuModel, secondaryMenuModel == null ? 0 : secondaryMenuModel.getElements().size());
return secondaryMenuModel;
}
public MenuModel getMenuModel() public MenuModel getMenuModel()
{ {
if (menuModel == null) if (menuModel == null)
...@@ -84,7 +95,6 @@ public class PrimeMenuView extends GenericCDIView { ...@@ -84,7 +95,6 @@ public class PrimeMenuView extends GenericCDIView {
} }
} else { } else {
Submenu subm = addSubmenu(m, layoutview.getSelectedSet()); Submenu subm = addSubmenu(m, layoutview.getSelectedSet());
if (subm != null) { if (subm != null) {
menuModel.addElement(subm); menuModel.addElement(subm);
} }
...@@ -106,6 +116,7 @@ public class PrimeMenuView extends GenericCDIView { ...@@ -106,6 +116,7 @@ public class PrimeMenuView extends GenericCDIView {
{ {
ret = new DefaultSubMenu(); ret = new DefaultSubMenu();
if (selectedSet.contains(m)) { if (selectedSet.contains(m)) {
ret.setStyleClass("prime-menu-selected"); ret.setStyleClass("prime-menu-selected");
if (m.getItem() != null) if (m.getItem() != null)
logger.info("Setting styleclass on menuitem {}, {}", m.getItem().getUrl(), m); logger.info("Setting styleclass on menuitem {}, {}", m.getItem().getUrl(), m);
...@@ -129,6 +140,105 @@ public class PrimeMenuView extends GenericCDIView { ...@@ -129,6 +140,105 @@ public class PrimeMenuView extends GenericCDIView {
} }
} else { } else {
List<DefaultMenuItem> subm = new ArrayList<>();
addSecondaryMenu(subm, child, selectedSet);
if (!subm.isEmpty()) {
DefaultMenuItem subItem = new DefaultMenuItem();
subItem.setValue(I18n.get(child.getKey()));
subItem.setOutcome(subm.get(0).getOutcome());
ret.addElement(subItem);
if (selectedSet.contains(child)) {
logger.info("Setting submenu model for {}", child.getKey());
secondaryMenuModel = new DefaultMenuModel();
DefaultMenuItem h1 = new DefaultMenuItem();
h1.setValue("Hurr1");
h1.setTitle("Title");
h1.setHref("http://www.iki.fi");
h1.setDisabled(false);
h1.setAjax(false);
// h1.setOutcome("/useradmin/list");
secondaryMenuModel.getElements().add(h1);
DefaultMenuItem h2 = new DefaultMenuItem();
h2.setValue("Hurr2");
h2.setTitle("hu33");
h1.setAjax(false);
h2.setOutcome("/role/list");
secondaryMenuModel.getElements().add(h2);
for (DefaultMenuItem su : subm) {
// secondaryMenuModel.addElement(su);
}
}
}
}
}
if (ret.getElementsCount() == 0) {
ret = null;
}
}
return ret;
}
private void addSecondaryMenu(List<DefaultMenuItem> submenus, MenuNavigation m, Set<MenuNavigation> selectedSet) {
if (m.isVisible() && (m.getPermission() == null || super.hasPermission(m.getPermission()))) {
for (MenuNavigation child : m.getChildren()) {
DefaultMenuItem elem = null;
if (child.getChildren().isEmpty()) {
if (child.getItem() != null) {
elem = mkMenuitem(child);
if (elem != null) {
submenus.add(elem);
}
}
} else {
addSecondaryMenu(submenus, child, selectedSet);
}
}
}
}
// Laitetaan talteen.... Ei käytetä missään.
private DefaultSubMenu addRecursiveSubmenu(MenuNavigation m, Set<MenuNavigation> selectedSet) {
DefaultSubMenu ret = null;
logger.info("Adding submenu {}", m.getKey());
if (m.isVisible() && (m.getPermission() == null || super.hasPermission(m.getPermission())))
{
ret = new DefaultSubMenu();
if (selectedSet.contains(m)) {
ret.setStyleClass("prime-menu-selected");
if (m.getItem() != null)
logger.info("Setting styleclass on menuitem {}, {}", m.getItem().getUrl(), m);
}
ret.setLabel(I18n.get(m.getKey()));
for (MenuNavigation child : m.getChildren())
{
if (child.getChildren().isEmpty()) {
if (child.getItem() != null)
{
DefaultMenuItem item = mkMenuitem(child);
if (item != null) {
item.setValue(I18n.get(child.getKey()));
ret.addElement(item);
}
} else if (ret.getElementsCount() > 0) {
ret.addElement(new DefaultSeparator());
}
} else {
DefaultSubMenu subm = addSubmenu(child, selectedSet); DefaultSubMenu subm = addSubmenu(child, selectedSet);
if (subm != null) if (subm != null)
{ {
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!