Search in sources :

Example 1 with TreeNodeBase

use of org.apache.myfaces.custom.tree2.TreeNodeBase in project TNTConcept by autentia.

the class MenuBean method addLeaf.

/**
 * Add leaf node to parent node if it is accesible by current user
 * @param path path of current node
 * @param creds current user
 * @param neededRole role needed to render the node
 * @param parent parent node
 * @param cmd command name
 * @return true if node was added
 */
private boolean addLeaf(Stack<TreeNode> path, Principal creds, GrantedAuthority neededRole, String cmd) {
    boolean added = false;
    if (neededRole == null || creds.hasAuthority(neededRole)) {
        String text;
        try {
            text = msg.getString("menu." + cmd);
        } catch (MissingResourceException e) {
            text = "MISSING : " + cmd + " : MISSING";
        }
        TreeNode child = new TreeNodeBase("document", text, cmd, true);
        path.peek().getChildren().add(child);
        added = true;
    }
    log.debug("addLeaf - " + (added ? "ADD   " : "IGNORE") + ": " + cmd);
    return added;
}
Also used : TreeNode(org.apache.myfaces.custom.tree2.TreeNode) MissingResourceException(java.util.MissingResourceException) TreeNodeBase(org.apache.myfaces.custom.tree2.TreeNodeBase)

Example 2 with TreeNodeBase

use of org.apache.myfaces.custom.tree2.TreeNodeBase in project gdmatrix by gdmatrix.

the class TreeModelUtils method findChildNode.

private static TreeNodeBase findChildNode(TreeNodeBase node, String pathElem) {
    TreeNodeBase childNode = null;
    boolean found = false;
    Iterator iter = node.getChildren().iterator();
    while (!found && iter.hasNext()) {
        childNode = (TreeNodeBase) iter.next();
        String nodeDesc = childNode.getDescription();
        found = nodeDesc.equals(pathElem);
    }
    return found ? childNode : null;
}
Also used : Iterator(java.util.Iterator) TreeNodeBase(org.apache.myfaces.custom.tree2.TreeNodeBase)

Example 3 with TreeNodeBase

use of org.apache.myfaces.custom.tree2.TreeNodeBase in project gdmatrix by gdmatrix.

the class TreeModelUtils method addNode.

/* private methods */
private static void addNode(TreeNodeBase rootNode, String[] pathArray, Map row) throws Exception {
    TreeNodeBase currentNode = rootNode;
    for (int i = 0; i < pathArray.length; i++) {
        String pathElem = pathArray[i];
        String[] name = splitName(pathElem);
        String desc = name[0];
        String info = name[1];
        TreeNodeBase childNode = findChildNode(currentNode, desc);
        if (childNode == null) {
            boolean isLeaf = (i == pathArray.length - 1);
            if (isLeaf) {
                childNode = createNode("document", desc, info, row);
            } else // create inner tree node
            {
                childNode = createNode("folder", desc, info, null);
            }
            currentNode.getChildren().add(childNode);
        }
        currentNode.setType("folder");
        currentNode.setLeaf(false);
        currentNode = childNode;
    }
}
Also used : TreeNodeBase(org.apache.myfaces.custom.tree2.TreeNodeBase)

Example 4 with TreeNodeBase

use of org.apache.myfaces.custom.tree2.TreeNodeBase in project TNTConcept by autentia.

the class MenuBean method getMenu.

/**
 * Get menu tree
 * @return menu tree
 */
public TreeNode getMenu() {
    // Create menu only the first time
    if (menu == null) {
        Principal creds = SpringUtils.getPrincipal();
        Stack<TreeNode> path = new Stack<TreeNode>();
        menu = new TreeNodeBase("menu", "Menu", false);
        path.push(menu);
        if (openNode(path, creds, null, "admin")) {
            addLeaf(path, creds, Permission.Entity_Menu(User.class), "users");
            addLeaf(path, creds, Permission.Entity_Menu(UserCategory.class), "userCategorys");
            addLeaf(path, creds, null, "changePassword");
            addLeaf(path, creds, Permission.Entity_Menu(Department.class), "departments");
            // addLeaf( path, creds, Permission.Entity_Menu(Setting.class),      "settings" );
            closeNode(path);
        }
        if (openNode(path, creds, null, "masterTables")) {
            addLeaf(path, creds, Permission.Entity_Menu(AccountEntryType.class), "accountEntryTypes");
            addLeaf(path, creds, Permission.Entity_Menu(OrganizationType.class), "organizationTypes");
            addLeaf(path, creds, Permission.Entity_Menu(InteractionType.class), "interactionTypes");
            addLeaf(path, creds, Permission.Entity_Menu(OrganizationISOCategory.class), "organizationISOCategorys");
            addLeaf(path, creds, Permission.Entity_Menu(ContractType.class), "contractTypes");
            addLeaf(path, creds, Permission.Entity_Menu(Magazine.class), "magazines");
            addLeaf(path, creds, Permission.Entity_Menu(OfferRejectReason.class), "offerRejectReasons");
            closeNode(path);
        }
        if (openNode(path, creds, null, "billing")) {
            addLeaf(path, creds, Permission.Entity_Menu(Bill.class), "bills");
            addLeaf(path, creds, Permission.Entity_Menu(Account.class), "accounts");
            addLeaf(path, creds, Permission.Entity_Menu(AccountEntry.class), "accountEntrys");
            addLeaf(path, creds, Permission.Entity_Menu(PeriodicalAccountEntry.class), "periodicalAccountEntrys");
            addLeaf(path, creds, Permission.Action_NOF, "nof");
            addLeaf(path, creds, Permission.Entity_Menu(FinancialRatio.class), "financialRatios");
            closeNode(path);
        }
        if (openNode(path, creds, null, "contacts")) {
            addLeaf(path, creds, Permission.Entity_Menu(Organization.class), "organizations");
            addLeaf(path, creds, Permission.Entity_Menu(Interaction.class), "interactions");
            addLeaf(path, creds, Permission.Entity_Menu(Contact.class), "contacts");
            addLeaf(path, creds, Permission.Entity_Menu(Offer.class), "offers");
            addLeaf(path, creds, Permission.Entity_Menu(Project.class), "projects");
            closeNode(path);
        }
        if (openNode(path, creds, null, "quality")) {
            addLeaf(path, creds, Permission.Action_ListQualityDocuments, "qualityDocuments");
            closeNode(path);
        }
        if (openNode(path, creds, null, "bulletin")) {
            addLeaf(path, creds, Permission.Entity_Menu(BulletinBoard.class), "bulletinBoards");
            addLeaf(path, creds, Permission.Entity_Menu(CompanyState.class), "companyStates");
            addLeaf(path, creds, Permission.Entity_Menu(BulletinBoardCategory.class), "bulletinBoardCategorys");
            addLeaf(path, creds, Permission.Entity_Menu(Idea.class), "ideas");
            closeNode(path);
        }
        if (openNode(path, creds, null, "activity")) {
            addLeaf(path, creds, Permission.Entity_Menu(Activity.class), "activitys");
            addLeaf(path, creds, Permission.Entity_Menu(Objective.class), "objectives");
            closeNode(path);
        }
        if (openNode(path, creds, null, "reports")) {
            addLeaf(path, creds, Permission.Action_GeneralReports, "generalReports");
            addLeaf(path, creds, Permission.Action_BitacoreReports, "bitacoreReports");
            addLeaf(path, creds, Permission.Action_BillReports, "billReports");
            addLeaf(path, creds, Permission.Action_ProjectReports, "projectReports");
            addLeaf(path, creds, Permission.Action_InteractionReports, "interactionReports");
            addLeaf(path, creds, Permission.Action_OrganizationReports, "organizationReports");
            addLeaf(path, creds, Permission.Action_OfferReports, "offerReports");
            addLeaf(path, creds, Permission.Action_OwnReports, "ownReports");
            addLeaf(path, creds, Permission.Action_PersonalReports, "personalReports");
            closeNode(path);
        }
        if (openNode(path, creds, null, "publish")) {
            addLeaf(path, creds, Permission.Entity_Menu(Tutorial.class), "tutorials");
            addLeaf(path, creds, Permission.Entity_Menu(Publication.class), "publications");
            closeNode(path);
        }
        if (openNode(path, creds, null, "holiday")) {
            addLeaf(path, creds, Permission.Entity_Menu(Holiday.class), "holidays");
            addLeaf(path, creds, Permission.Entity_Menu(RequestHoliday.class), "requestHolidays");
            addLeaf(path, creds, Permission.Entity_Menu(AdminHoliday.class), "adminHolidays");
            closeNode(path);
        }
        if (openNode(path, creds, null, "utils")) {
            addLeaf(path, creds, Permission.Entity_Menu(Book.class), "books");
            addLeaf(path, creds, Permission.Entity_Menu(Inventary.class), "inventarys");
            closeNode(path);
        }
    }
    return menu;
}
Also used : InteractionType(com.autentia.tnt.businessobject.InteractionType) UserCategory(com.autentia.tnt.businessobject.UserCategory) Account(com.autentia.tnt.businessobject.Account) User(com.autentia.tnt.businessobject.User) Organization(com.autentia.tnt.businessobject.Organization) BulletinBoardCategory(com.autentia.tnt.businessobject.BulletinBoardCategory) Activity(com.autentia.tnt.businessobject.Activity) PeriodicalAccountEntry(com.autentia.tnt.businessobject.PeriodicalAccountEntry) AccountEntry(com.autentia.tnt.businessobject.AccountEntry) TreeNodeBase(org.apache.myfaces.custom.tree2.TreeNodeBase) RequestHoliday(com.autentia.tnt.businessobject.RequestHoliday) Department(com.autentia.tnt.businessobject.Department) PeriodicalAccountEntry(com.autentia.tnt.businessobject.PeriodicalAccountEntry) TreeNode(org.apache.myfaces.custom.tree2.TreeNode) Book(com.autentia.tnt.businessobject.Book) OrganizationISOCategory(com.autentia.tnt.businessobject.OrganizationISOCategory) FinancialRatio(com.autentia.tnt.businessobject.FinancialRatio) Tutorial(com.autentia.tnt.businessobject.Tutorial) Interaction(com.autentia.tnt.businessobject.Interaction) Publication(com.autentia.tnt.businessobject.Publication) AccountEntryType(com.autentia.tnt.businessobject.AccountEntryType) CompanyState(com.autentia.tnt.businessobject.CompanyState) OrganizationType(com.autentia.tnt.businessobject.OrganizationType) Inventary(com.autentia.tnt.businessobject.Inventary) Stack(java.util.Stack) Contact(com.autentia.tnt.businessobject.Contact) BulletinBoard(com.autentia.tnt.businessobject.BulletinBoard) Project(com.autentia.tnt.businessobject.Project) Objective(com.autentia.tnt.businessobject.Objective) OfferRejectReason(com.autentia.tnt.businessobject.OfferRejectReason) Offer(com.autentia.tnt.businessobject.Offer) Idea(com.autentia.tnt.businessobject.Idea) Holiday(com.autentia.tnt.businessobject.Holiday) AdminHoliday(com.autentia.tnt.businessobject.AdminHoliday) RequestHoliday(com.autentia.tnt.businessobject.RequestHoliday) Bill(com.autentia.tnt.businessobject.Bill) ContractType(com.autentia.tnt.businessobject.ContractType) Principal(com.autentia.tnt.manager.security.Principal) Magazine(com.autentia.tnt.businessobject.Magazine) AdminHoliday(com.autentia.tnt.businessobject.AdminHoliday)

Example 5 with TreeNodeBase

use of org.apache.myfaces.custom.tree2.TreeNodeBase in project TNTConcept by autentia.

the class MenuBean method openNode.

/**
 * Add non-leaf node to current node if it is accesible by current user
 * @param path path of current node
 * @param creds current user
 * @param neededRole role needed to render the node
 * @param parent parent node
 * @param cmd command name
 * @return true if node has been created
 */
private boolean openNode(Stack<TreeNode> path, Principal creds, GrantedAuthority neededRole, String cmd) {
    boolean added = false;
    if (neededRole == null || creds.hasAuthority(neededRole)) {
        String text;
        try {
            text = msg.getString("menu." + cmd);
        } catch (MissingResourceException e) {
            text = "MISSING : " + cmd + " : MISSING";
        }
        TreeNode child = new TreeNodeBase("folder", text, cmd, false);
        path.peek().getChildren().add(child);
        path.push(child);
        added = true;
    }
    log.debug("openNode - " + (added ? "OPEN  " : "IGNORE") + ": " + cmd);
    return added;
}
Also used : TreeNode(org.apache.myfaces.custom.tree2.TreeNode) MissingResourceException(java.util.MissingResourceException) TreeNodeBase(org.apache.myfaces.custom.tree2.TreeNodeBase)

Aggregations

TreeNodeBase (org.apache.myfaces.custom.tree2.TreeNodeBase)5 TreeNode (org.apache.myfaces.custom.tree2.TreeNode)3 MissingResourceException (java.util.MissingResourceException)2 Account (com.autentia.tnt.businessobject.Account)1 AccountEntry (com.autentia.tnt.businessobject.AccountEntry)1 AccountEntryType (com.autentia.tnt.businessobject.AccountEntryType)1 Activity (com.autentia.tnt.businessobject.Activity)1 AdminHoliday (com.autentia.tnt.businessobject.AdminHoliday)1 Bill (com.autentia.tnt.businessobject.Bill)1 Book (com.autentia.tnt.businessobject.Book)1 BulletinBoard (com.autentia.tnt.businessobject.BulletinBoard)1 BulletinBoardCategory (com.autentia.tnt.businessobject.BulletinBoardCategory)1 CompanyState (com.autentia.tnt.businessobject.CompanyState)1 Contact (com.autentia.tnt.businessobject.Contact)1 ContractType (com.autentia.tnt.businessobject.ContractType)1 Department (com.autentia.tnt.businessobject.Department)1 FinancialRatio (com.autentia.tnt.businessobject.FinancialRatio)1 Holiday (com.autentia.tnt.businessobject.Holiday)1 Idea (com.autentia.tnt.businessobject.Idea)1 Interaction (com.autentia.tnt.businessobject.Interaction)1