ZCS 6.0:Zimlet Developers Guide:Examples:Tab iFrame: Difference between revisions

(Adding categories)
No edit summary
Line 28: Line 28:


<pre>
<pre>
<zimlet name="com_zimbra_tabiframe" version="0.2" description="Demos a tab that loads an iframe">
<zimlet name="com_zimbra_example_tabiframe" version="1.0" description="Demos a tab that loads an iframe">
    <include>com_zimbra_tabiframe.js</include>
  <include>com_zimbra_example_tabiframe.js</include>
    <handlerObject>com_zimbra_tabiframeHandlerObject</handlerObject>
  <handlerObject>com_zimbra_example_tabiframe_HandlerObject</handlerObject>
</zimlet>
</zimlet>
</pre>
</pre>
Line 43: Line 43:
  *   
  *   
  */
  */
com_zimbra_tabiframeHandlerObject.prototype.init =
com_zimbra_example_tabiframe_HandlerObject.prototype.init =
function() {
function() {
  this._simpleAppName = this.createApp("Tab iFrame App", "zimbraIcon", "An app in a new tab");
    this._simpleAppName = this.createApp("Tab iFrame App", "zimbraIcon", "An app in a new tab");
};
};
</pre>
</pre>
Line 57: Line 57:
  * @param {String} appName the application name
  * @param {String} appName the application name
  */
  */
com_zimbra_tabiframeHandlerObject.prototype.appLaunch =
com_zimbra_example_tabiframe_HandlerObject.prototype.appLaunch =
function(appName) {
function(appName) {
  switch (appName) {
  switch (appName) {
    case this._simpleAppName: {
case this._simpleAppName: {
      var app = appCtxt.getApp(appName); // get access to ZmZimletApp
    // do something
      app.setContent("<iframe name=\"tabiframe-app\" src=\"http://www.yahoo.com/\" width=\"100%\" height=\"100%\" /></iframe>"); // write HTML to app
            var app = appCtxt.getApp(appName); // get access to ZmZimletApp
      break;
            app.setContent("<iframe id=\"tabiframe-app\" name=\"tabiframe-app\" src=\"http://www.yahoo.com\" width=\"100%\" height=\"100%\" /></iframe>"); // write HTML to app
    }
    break;
  }
}
  }
};
};
</pre>
</pre>
Line 73: Line 74:
{| cellspacing="0" cellpadding="5" border="1"
{| cellspacing="0" cellpadding="5" border="1"
|Zimlet Package
|Zimlet Package
|[[Media:zcs-6-examples-tabiframe-02-com_zimbra_tabiframe.zip|com_zimbra_tabiframe.zip]]
|[http://files.zimbra.com/docs/zimlet/zcs/6.0/examples/com_zimbra_example_tabiframe/com_zimbra_example_tabiframe.zip com_zimbra_example_tabiframe.zip]
|}
|}



Revision as of 19:56, 10 February 2010

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 create a "tab" application that loads an iframe as the tab content.

Screen Shot

Zcs-6-examples-tabiframe.png


Definition File

<zimlet name="com_zimbra_example_tabiframe" version="1.0" description="Demos a tab that loads an iframe">
  <include>com_zimbra_example_tabiframe.js</include>
  <handlerObject>com_zimbra_example_tabiframe_HandlerObject</handlerObject>
</zimlet>

Handler Object

Below is a snippet from the Handler Object from the zimlet JavaScript file. In zimlet init(), the "tab" application is created. The newly created application name is returned and set as a local zimlet property _simpleAppName for later use.

/**
 * This method gets called by the Zimlet framework when the zimlet loads.
 *  
 */
com_zimbra_example_tabiframe_HandlerObject.prototype.init =
function() {
    this._simpleAppName = this.createApp("Tab iFrame App", "zimbraIcon", "An app in a new tab");
};

In this snippet, when the tab application is launched, HTML code (that produces an iframe) is loaded into the tab application content:

/**
 * This method gets called by the Zimlet framework when the application is opened for the first time.
 *  
 * @param	{String}	appName		the application name		
 */
com_zimbra_example_tabiframe_HandlerObject.prototype.appLaunch =
function(appName) {
   switch (appName) {
	case this._simpleAppName: {
	    // do something
            var app = appCtxt.getApp(appName); // get access to ZmZimletApp
            app.setContent("<iframe id=\"tabiframe-app\" name=\"tabiframe-app\" src=\"http://www.yahoo.com\" width=\"100%\" height=\"100%\" /></iframe>"); // write HTML to app
	    break;
	}
   }
};

Download

Zimlet Package com_zimbra_example_tabiframe.zip

Useful Links


Verified Against: Zimbra Collaboration Suite 6.0 Date Created: 01/06/2010
Article ID: https://wiki.zimbra.com/index.php?title=ZCS_6.0:Zimlet_Developers_Guide:Examples:Tab_iFrame Date Modified: 2010-02-10



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