ZCS 6.0:Zimlet Developers Guide:Examples:Menu Items JS: Difference between revisions

(New page: {| cellspacing="0" cellpadding="5" style="border: 1px solid rgb(153, 153, 170); margin: 0pt 0.5em 0.5em 0pt; float: none; background-color: rgb(249, 249, 255);" |[[Image:zdg-6-menu-icon-zi...)
 
No edit summary
(12 intermediate revisions by 4 users not shown)
Line 1: Line 1:
{| cellspacing="0" cellpadding="5" style="border: 1px solid rgb(153, 153, 170); margin: 0pt 0.5em 0.5em 0pt; float: none; background-color: rgb(249, 249, 255);"
{{BC|Community Sandbox}}
__FORCETOC__
<div class="col-md-12 ibox-content">
=ZCS 6.0: Zimlet Developer Guide:Examples:Menu Items JS=
{{KB|{{Unsupported}}|{{ZCS 7.0}}|{{ZCS 6.0}}|}}
{{WIP}}{| cellspacing="0" cellpadding="5" style="border: 1px solid rgb(153, 153, 170); margin: 0pt 0.5em 0.5em 0pt; float: none; background-color: rgb(249, 249, 255);"
|[[Image:zdg-6-menu-icon-zimbra.jpg|20px]]
|[[Image:zdg-6-menu-icon-zimbra.jpg|20px]]
|[[ZCS 6.0:Zimlet Developers Guide:Introduction|Introduction]]
|[[ZCS 6.0:Zimlet Developers Guide:Introduction|Introduction]]
Line 8: Line 13:
|style="border-left: 1px solid rgb(153, 153, 170);"|[[Image:zdg-6-menu-icon-gear.png|20px]]
|style="border-left: 1px solid rgb(153, 153, 170);"|[[Image:zdg-6-menu-icon-gear.png|20px]]
|[[ZCS 6.0:Zimlet Developers Guide:Developing Zimlets|Developing Zimlets]]
|[[ZCS 6.0:Zimlet Developers Guide:Developing Zimlets|Developing Zimlets]]
|style="border-left: 1px solid rgb(153, 153, 170);"|[[Image:zdg-6-menu-icon-advanced.jpg|20px]]
|[[ZCS 6.0:Zimlet Developers Guide:Advanced Concepts|Advanced Concepts]]
|style="border-left: 1px solid rgb(153, 153, 170);"|[[Image:zdg-6-menu-icon-library.jpg|20px]]
|style="border-left: 1px solid rgb(153, 153, 170);"|[[Image:zdg-6-menu-icon-library.jpg|20px]]
|[[ZCS 6.0:Zimlet Developers Guide:Zimlet API Specifications|API Specifications]]
|[[ZCS 6.0:Zimlet Developers Guide:Zimlet API Specifications|API Specifications]]
Line 13: Line 20:
|[[ZCS 6.0:Zimlet Developers Guide:Example Zimlets|Example Zimlets]]
|[[ZCS 6.0:Zimlet Developers Guide:Example Zimlets|Example Zimlets]]
|}
|}
== Description ==
== Description ==


Line 30: Line 36:


<pre>
<pre>
<zimlet name="com_zimbra_menuitemsjs" version="0.1" description="Demos menu item with actions in JS">
<zimlet name="com_zimbra_example_menuitemsjs" version="1.0" description="Demos menu item with actions in JS">
   <include>menuitems.js</include>
   <include>com_zimbra_example_menuitemsjs.js</include>
   <handlerObject>com_zimbra_menuitemsjsHandlerObject</handlerObject>
   <handlerObject>com_zimbra_example_menuitemsjs_HandlerObject</handlerObject>
   <contentObject>
   <contentObject>
    <matchOn>
<matchOn>
      <regex attrs="ig">lab|user|remodel</regex> <!-- matches lab or user or remodel -->
<regex attrs="ig">lab|user|remodel</regex> <!-- matches lab or user or remodel -->
    </matchOn>
</matchOn>
    <toolTip>Menu Items Example</toolTip> <!-- the tool tip to display when content matches -->
<toolTip>Menu Items Example</toolTip> <!-- the tool tip to display when content matches -->
    <contextMenu>
<contextMenu>
      <menuItem label="First Context Menu Item - Go to Yahoo!" icon="Search" id="SOME_MENU_ITEM_ID1" />
  <menuItem label="First Context Menu Item - Go to Yahoo!" icon="Search" id="SOME_MENU_ITEM_ID1" />
      <menuItem label="Second Context Menu Item - Go to Yahoo! Sports" icon="NewContact" id="SOME_MENU_ITEM_ID2" />
  <menuItem label="Second Context Menu Item - Go to Yahoo! Sports" icon="NewContact" id="SOME_MENU_ITEM_ID2" />
    </contextMenu>
</contextMenu>
   </contentObject>
   </contentObject>
</zimlet>
</zimlet>
Line 54: Line 60:
  * @param itemId the Id of selected menu item
  * @param itemId the Id of selected menu item
  */
  */
com_zimbra_menuitemsjsHandlerObject.prototype.menuItemSelected =
com_zimbra_example_menuitemsjs_HandlerObject.prototype.menuItemSelected =
function(itemId) {
function(itemId) {
  debugger;
switch (itemId) {
case "SOME_MENU_ITEM_ID1":
  switch (itemId) {
window.open ("http://www.yahoo.com",
    case "SOME_MENU_ITEM_ID1":
"mywindow","menubar=1,resizable=1,width=800,height=600");  
      window.open ("http://www.yahoo.com", "mywindow","menubar=1,resizable=1,width=800,height=600");  
break;
      break;
case "SOME_MENU_ITEM_ID2":
    case "SOME_MENU_ITEM_ID2":
window.open ("http://sports.yahoo.com",
      window.open ("http://sports.yahoo.com", "mywindow","menubar=1,resizable=1,width=800,height=600");  
"mywindow","menubar=1,resizable=1,width=800,height=600");  
      break;
break;
    default:
default:
      // do nothing
// do nothing
      break;
break;
  }
}
 
};
};
</pre>
</pre>
Line 76: Line 83:
{| cellspacing="0" cellpadding="5" border="1"
{| cellspacing="0" cellpadding="5" border="1"
|Zimlet Package
|Zimlet Package
|[[Media:zdg-6-examples-menuitemsjs-com_zimbra_menuitemsjs.zip|com_zimbra_menuitemsjs.zip]]
|[http://files.zimbra.com/docs/zimlet/zcs/6.0/examples/com_zimbra_example_menuitemsjs/com_zimbra_example_menuitemsjs.zip com_zimbra_example_menuitemsjs.zip]
|}
|}
{{Article Footer|Zimbra Collaboration Server 7.0|12/22/2009}}
[[Category:Developers]]
[[Category:Zimlets]]
[[Category:ZCS 7.0]]
[[Category:ZCS 6.0]]

Revision as of 12:51, 13 July 2015

ZCS 6.0: Zimlet Developer Guide:Examples:Menu Items JS

   KB 3218        Last updated on 2015-07-13  




0.00
(0 votes)
Zdg-6-menu-icon-zimbra.jpg Introduction Zdg-6-menu-icon-green-flag.png Getting Started Zdg-6-menu-icon-terminal.png Dev Environment Setup Zdg-6-menu-icon-gear.png Developing Zimlets Zdg-6-menu-icon-advanced.jpg Advanced Concepts Zdg-6-menu-icon-library.jpg API Specifications Zdg-6-menu-icon-checkbox.jpg Example Zimlets

Description

This zimlet will match the words lab, user or remodel and display a tool tip. On mouse right-click, a menu is presented. Each menu item will launch a website.

The Zimlet ZIP Package contains the Zimlet Definition File and a JavaScript file. The two menu items are defined using <menuItem>. The a zimlet menuitems.js JavaScript file is included with <include>menuitems.js</include>. The zimlet Handler Object is defined with <handlerObject>com_zimbra_menuitemsjsHandlerObject</handlerObject>.

When a menu item is selected, the zimlet Handler Object menuItemSelected(itemId) method is called and passes the menu item id, as specified in the definition file (either "SOME_MENU_ITEM_ID1" or "SOME_MENU_ITEM_ID2").


Screen Shot

Zdg-6-examples-menuitemsjs.png

Definition File

<zimlet name="com_zimbra_example_menuitemsjs" version="1.0" description="Demos menu item with actions in JS">
  <include>com_zimbra_example_menuitemsjs.js</include>
  <handlerObject>com_zimbra_example_menuitemsjs_HandlerObject</handlerObject>
  <contentObject>
	<matchOn>
	<regex attrs="ig">lab|user|remodel</regex> <!-- matches lab or user or remodel -->
	</matchOn>
	<toolTip>Menu Items Example</toolTip> <!-- the tool tip to display when content matches -->
	<contextMenu>
	  <menuItem label="First Context Menu Item - Go to Yahoo!" icon="Search" id="SOME_MENU_ITEM_ID1" />
	  <menuItem label="Second Context Menu Item - Go to Yahoo! Sports" icon="NewContact" id="SOME_MENU_ITEM_ID2" />
	</contextMenu>
  </contentObject>
</zimlet>

JS File

/**
 * This method gets called by the Zimlet framework when a context menu item is selected.
 * 
 * @param	itemId		the Id of selected menu item
 */
com_zimbra_example_menuitemsjs_HandlerObject.prototype.menuItemSelected =
function(itemId) {
	switch (itemId) {
	case "SOME_MENU_ITEM_ID1":
		window.open ("http://www.yahoo.com",
			"mywindow","menubar=1,resizable=1,width=800,height=600"); 
		break;
	case "SOME_MENU_ITEM_ID2":
		window.open ("http://sports.yahoo.com",
			"mywindow","menubar=1,resizable=1,width=800,height=600"); 
		break;
	default:
		// do nothing
		break;
	}

};

Download

Zimlet Package com_zimbra_example_menuitemsjs.zip


Verified Against: Zimbra Collaboration Server 7.0 Date Created: 12/22/2009
Article ID: https://wiki.zimbra.com/index.php?title=ZCS_6.0:Zimlet_Developers_Guide:Examples:Menu_Items_JS Date Modified: 2015-07-13



Try Zimbra

Try Zimbra Collaboration with a 60-day free trial.
Get it now »

Want to get involved?

You can contribute in the Community, Wiki, Code, or development of Zimlets.
Find out more. »

Looking for a Video?

Visit our YouTube channel to get the latest webinars, technology news, product overviews, and so much more.
Go to the YouTube channel »

Jump to: navigation, search