menu.xml file

The menu.xml file can be used to override default behavior for displaying the various menu options and Add links within Unanet.  

Note: this functionality is enabled by creating the necessary entries in the menu.xml file, which resides in your system's config directory.  You cannot manage this functionality via the user interface.

The following items can be accomplished via menu.xml entries:

Note that you cannot add access to menu options for roles that do not already have access.

 

 

This file can be viewed/edited by your Unanet Administrator with any standard text editor.   This file is not required.

WARNING - All changes to the menu.xml file should take place in the file located in your config directory.  DO NOT attempt to modify the copy of the menu.xml file packaged within the unanet.war file (this can result in unpredictable system behavior).  

You may also be interested in:

In order to create these entries, you will need to understand the XML definition in the unanet.dtd and the internal refids, roles values, etc.,  which you may be able to determine by viewing the page source in your browser. However, you should probably contact Unanet Support for assistance with creating appropriate entries for your menu.xml file.


Example menu.xml file

Note that a sample menu.xml file is included in your config directory by default with a number of common entries commented out.

<?xml version="1.0"?>

<!DOCTYPE menus SYSTEM "unanet.dtd">

<menus>

   <!-- Example of removing Expense Request Add menu item menu -->

   <!-- <menu refid="menu.people.expense.add.request" remove="true"/>-->

   <!-- <menu refid="menu.expense.add.request" remove="true"/>-->

   

   <!-- Example changing role permissions for Reports/User menu (timesheetuser role only) -->

   <!--<menu refid="menu.reports.home.user">-->

   <!--   <role>timesheetUser|timesheetUser~</role>-->

   <!--</menu>-->

 

   <!-- Example to remove Project Add for project managers (only for admins) -->

   <!--<menu refid="menu.project.add.node"> -->

   <!--   <role>administrator</role> -->

   <!--</menu> -->

   

   <!-- Example to remove Organization Add menu item -->

   <!-- <menu refid="menu.organization.add.node" remove="true" /> -->

 

   <!-- Example to remove Timesheet Add menu item -->

   <!-- <menu refid="menu.timesheet.add.node" remove="true"/> -->

   <!-- <menu refid="menu.people.timesheet.add.node" remove="true"/> -->

 

   <!-- Example to remove People Assignment Add and Add with Search menu item -->

   <!-- <menu refid="menu.assignment.add.add" remove="true"/> -->

   <!-- <menu refid="menu.assignment.add.search" remove="true"/> -->

   

   <!-- Example to remove People Plan Add, Add with Search, Add with Assign menu item -->

   <!-- <menu refid="menu.plan.add.add" remove="true"/>  -->

   <!-- <menu refid="menu.plan.add.search" remove="true"/> -->

   <!-- <menu refid="menu.plan.add.assign" remove="true"/>  -->

   

   <!-- Example to remove Expense Budget Add menu item -->

   <!-- <menu refid="menu.expense_budget.add.add" remove="true"/> -->

   

   <!-- Example to remove Expense Plan Add, Expense Plan Budget -->

   <!-- <menu refid="menu.expense_plan.add.add" remove="true"/> -->   

   <!-- <menu refid="menu.expense_plan.add.budget" remove="true"/> -->

</menus>

 

Note: all lines beginning with    <!--    and ending with    -->      are comments.  In order to activate the commented out example entries in the default file above, you would need to remove the comment symbols from before and after the desired rows.  

The following example file would hide the Expense Requests add icon, but the removal of the copy project menu is still commented out.

<?xml version="1.0"?>
<!DOCTYPE menus SYSTEM "unanet.dtd">
<menus>
   <!-- Example of removing Expense Request Add menu item link-->
   <menu refid="menu.people.expense.add.request" remove="true"/>
   <menu refid="menu.expense.add.request" remove="true"/>

   </menu>

   <!-- Example of removing Copy Project menu item link for any role-->
   <!-- <menu refid="menu.project.copy.node" remove="true"/> -->

   <!--</menu> -->

 

</menus>