Font Size Body Font Header Font Export  
TXT HTML PDF Print

Helipad add-on documentation

FAQ

Q: How to I make a plugin?

  • Create a Helipad document with the XML layout shown below
  • Tag your document with system:theme or system:plugin
  • To allow other users to access it, enable sharing

Q: What happens when I install a plugin?

A: The system copies the document to your account.

Q: What happens when someone deletes a plugin?

A: Nothing; you should still be able to use it if you installed it. Installing a plugin creates a copy that they can upgrade. Use versions and a changelog to let them know when a plugin has been updated.

Q: How are upgrades handled?

A: Helipad checks the installed version against the original plugin and replaces the content.

Q: What pages are plugins executed on?

A: The dashboard, tag search, document edit and document preview pages.

XML format for themes

Title and tags are derived from the document.

<theme>
<description>What is this theme?</description>
<image>http://example.com/your_image.jpg</image>
<code><![CDATA[
/* CSS GOES HERE */
]]>
</code>
</theme>


XML format for plugins

Title and tags are derived from the document. Use a tag called “code” to contain your JavaScript, and one called “style” to contain any CSS your plugin requires.

<plugin>
<description>This is an example plugin.</description>
<image></image>
<version>1</version>
<changelog>
<change>
<version>1</version>
<description>Created this plugin</description>
</change>
</changelog>
<style>
.my_plugin_style { color: #990000; }
</style>
<code><![CDATA[
var ExamplePlugin = Class.create()
ExamplePlugin.prototype = {
initialize: function()
{
},
}
plugin_manager.register(ExamplePlugin, {dependsOn: ’’})
]]></code>
</plugin>

Set dependsOn to a page element your plugin depends on. For example, I used “document_source” to make sure the word count plugin only runs on the document edit/create pages.