Menu dinámico en función de si el usuario está logeado o no.
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
package managedbean.common;
|
||||
|
||||
import java.awt.MenuItem;
|
||||
import java.io.Serializable;
|
||||
|
||||
import javax.annotation.PostConstruct;
|
||||
@@ -10,49 +11,115 @@ import javax.inject.Named;
|
||||
|
||||
import org.primefaces.model.menu.DefaultMenuItem;
|
||||
import org.primefaces.model.menu.DefaultMenuModel;
|
||||
import org.primefaces.model.menu.DefaultSeparator;
|
||||
import org.primefaces.model.menu.DefaultSubMenu;
|
||||
import org.primefaces.model.menu.MenuModel;
|
||||
import org.primefaces.model.menu.Submenu;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author Marcos García Núñez (mgarcianun@uoc.edu)
|
||||
*
|
||||
*/
|
||||
@Named("menuView")
|
||||
@RequestScoped
|
||||
public class MenuMBean implements Serializable {
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
private static final long serialVersionUID = 1L;
|
||||
private MenuModel model;
|
||||
|
||||
@PostConstruct
|
||||
public void init() {
|
||||
model = new DefaultMenuModel();
|
||||
DefaultMenuItem item;
|
||||
DefaultSubMenu subMenu;
|
||||
|
||||
// First submenu
|
||||
DefaultSubMenu firstSubmenu = new DefaultSubMenu("Dynamic submenu");
|
||||
DefaultMenuItem item = new DefaultMenuItem("External", "", "www.google.com");
|
||||
// item.setUrl("www.google.com");
|
||||
firstSubmenu.getElements().add(item);
|
||||
model.addElement(createMenuItem("Home", "pi pi-home", "home", null));
|
||||
|
||||
model.getElements().add(firstSubmenu);
|
||||
if (SessionUtils.isLogedIn() == true) {
|
||||
|
||||
// Second submenu
|
||||
DefaultSubMenu secondSubmenu = new DefaultSubMenu("Dynamic Actions");
|
||||
// Administracion Sistema
|
||||
// TODO: mostrar este menú solo si el usuario es administrador
|
||||
if (1 == 1) {
|
||||
subMenu = new DefaultSubMenu("Administración del sistema", "pi pi-settings");
|
||||
subMenu.addElement(createMenuItem("Esp. médicas", "pi pi-calendar", "ManageMedicalSpecialties", null));
|
||||
subMenu.addElement(createMenuItem("Centros At. Primaria", "pi pi-briefcase", "ManageCAPs", null));
|
||||
subMenu.addElement(new DefaultSeparator());
|
||||
subMenu.addElement(createMenuItem("Añadir usuario Admin", "pi pi-calendar", "AddUserAdmin", null));
|
||||
model.addElement(subMenu);
|
||||
}
|
||||
|
||||
item = new DefaultMenuItem("Save", "pi pi-save");
|
||||
item.setCommand("#{menuView.save}");
|
||||
item.setUpdate("messages");
|
||||
secondSubmenu.getElements().add(item);
|
||||
// Visitas
|
||||
// TODO: mostrar este menú solo si el usuario es paciente
|
||||
if (1 == 1) {
|
||||
subMenu = new DefaultSubMenu("Visitas", "pi pi-calendar");
|
||||
subMenu.addElement(createMenuItem("Agendar", "pi pi-calendar", "ScheduleVisit", null));
|
||||
subMenu.addElement(createMenuItem("Consultar", "pi pi-briefcase", "QueryVisit", null));
|
||||
model.addElement(subMenu);
|
||||
}
|
||||
|
||||
item = new DefaultMenuItem("Delete", "pi pi-times");
|
||||
item.setCommand("#{menuView.delete}");
|
||||
item.setAjax(false);
|
||||
secondSubmenu.getElements().add(item);
|
||||
// Pruebas médicas
|
||||
// TODO: mostrar este menú solo si el usuario es medico // etc...
|
||||
if (1 == 1) {
|
||||
|
||||
item = new DefaultMenuItem("Redirect", "pi pi-search");
|
||||
item.setCommand("#{menuView.redirect}");
|
||||
secondSubmenu.getElements().add(item);
|
||||
subMenu = new DefaultSubMenu("Pruebas Medicas", "pi pi-clone");
|
||||
subMenu.addElement(createMenuItem("Añadir", "pi pi-clone", "AddMedicalTest", null));
|
||||
subMenu.addElement(createMenuItem("Gestionar", "pi pi-briefcase", "MedicaltestManage", null));
|
||||
subMenu.addElement(new DefaultSeparator());
|
||||
subMenu.addElement(createMenuItem("Consultar médicos pro esp.", "pi pi-search", "QueryDoctorBySpecialty", null));
|
||||
subMenu.addElement(new DefaultSeparator());
|
||||
subMenu.addElement(createMenuItem("Listar médicos", "pi pi-list", "ListDoctorsbySpecialty", null));
|
||||
model.addElement(subMenu);
|
||||
}
|
||||
|
||||
model.getElements().add(secondSubmenu);
|
||||
// Preguntas
|
||||
// TODO: mostrar este menú solo si el usuario es paciente o medico
|
||||
if (1 == 1) {
|
||||
subMenu = new DefaultSubMenu("Preguntas", "pi pi-clone");
|
||||
// TODO: Si es paciente puede preguntar
|
||||
if (true == true)
|
||||
subMenu.addElement(createMenuItem("Añadir pregunta", "pi pi-clone", "AskQuestion", null));
|
||||
// TODO: Si es medico de familia puede responder
|
||||
if (true == true)
|
||||
subMenu.addElement(createMenuItem("Responder pregunta", "pi pi-question", "AnswerQuestion", null));
|
||||
|
||||
model.addElement(subMenu);
|
||||
}
|
||||
}
|
||||
|
||||
// Perfil
|
||||
subMenu = new DefaultSubMenu("Gestionar perfil", "pi pi-id-card");
|
||||
if (SessionUtils.isLogedIn() == false) {
|
||||
subMenu.addElement(createMenuItem("Registro de usuario", "pi pi-id-card", "RegisterUser", null));
|
||||
subMenu.addElement(createMenuItem("Registro de paciente", "pi pi-id-card", "AddPatient", null));
|
||||
subMenu.addElement(createMenuItem("Registro de médico", "pi pi-id-card", "AddFamilyDoctor", null));
|
||||
subMenu.addElement(createMenuItem("Registro de especialista", "pi pi-id-card", "AddFamilyDoctor", null));
|
||||
subMenu.addElement(createMenuItem("Registro de médico", "pi pi-id-card", "AddSpecialistDoctor", null));
|
||||
subMenu.addElement(new DefaultSeparator());
|
||||
} else {
|
||||
|
||||
subMenu.addElement(createMenuItem("Actualizar mi perfil", "pi pi-search", "UpdateProfile", null));
|
||||
subMenu.addElement(new DefaultSeparator());
|
||||
// TODO: mostrar este menú solo si el usuario es paciente
|
||||
if (true == true) {
|
||||
subMenu.addElement(createMenuItem("Cambiar médico de familia", "pi pi-search", "ChangeFamilyDoctor", null));
|
||||
subMenu.addElement(new DefaultSeparator());
|
||||
}
|
||||
// TODO: mostrar este menú solo si el usuario es médico de familia
|
||||
if (true == true)
|
||||
subMenu.addElement(createMenuItem("Cambiar centro de atención", "pi pi-search", "changecap", null));
|
||||
}
|
||||
model.addElement(subMenu);
|
||||
}
|
||||
|
||||
private DefaultMenuItem createMenuItem(String name, String icon, String outcome, String command) {
|
||||
DefaultMenuItem item = new DefaultMenuItem(name, icon);
|
||||
if (outcome != null)
|
||||
item.setOutcome(outcome);
|
||||
if (command != null)
|
||||
item.setCommand(command);
|
||||
|
||||
return item;
|
||||
}
|
||||
|
||||
public MenuModel getModel() {
|
||||
|
||||
Reference in New Issue
Block a user