Core Reference
Engage Core
RequireJS Path
'engage/engage_core'
Inherited object functions of the BackboneJS view, see http://backbonejs.org/#View
Added object functions and properties:
Name | Parameters | Type | Description |
---|---|---|---|
log(value):void | value:String | function | function to log via the core cross browser |
Event:EngageEvent | none | property | Returns the EngageEvent object prototype, the see EngageEvent Object for more information |
trigger(event):void | event:EngageEvent | function | triggers an EngageEvent |
on(event, handler, context):void | event:EngageEvent, handler:function, context:object | function | install an event handler on a EngageEvent |
model:EngageModel | none | property | Returns the singleton engage model for this session, see EngageModel for more information's |
getPluginPath(pluginName):String | pluginName:String | function | Returns the absolute path of a plugin by name. |
EngageEvent Object
Name | Paramters | Type | Description |
---|---|---|---|
EngageEvent(name, description, type) | name:String, description:String, type:String | constructor | Create a new unbound EngageEvent, with a name, description and a type. For Example: var myEvent = new EngageEvent('play', 'plays the video', 'trigger') |
getName:String | none | function | Gets the name |
getDescription:String | none | function | Gets the description |
getType:String | none | function | Gets the Type, can be a "handler", "trigger" or "both" |
toString:String | none | function | Build a string that describes the event |
Engage Model
Inherited object functions of the BackboneJS model, see http://backbonejs.org/#Model, how to use BackboneJS models. This model is a global singleton object and can be used by each plugin to add new models which can be used by another plugin again.
No special functions are added, but the model is filled with some default data. This default data can be used by each plugin, which has a reference to the EngageModel.
Property Name | Type | Description |
---|---|---|
pluginsInfo | Backbone Model | Contains Information's of each plugin |
pluginModels | Backbone Collection | Contains the plugin models |
urlParameters | Object | Contains the data of the URL parameters. |
Plugin Object
Each plugin must create and return a object with some properties which are set by the plugin itself. It is recommend to keep a reference to the object because some properties are set by the core after the plugin is processed.
Property Name | Type | Description |
---|---|---|
name | String | Name of the plugin, e.g. "Engage Controls". This property is set by the plugin. |
type | String | Type of the plugin, e.g. "engage_controls", see the plugin table in Architecture for the other plugin types. This property is set by the plugin. |
version | String | Version of plugin. This property is set by the plugin. |
styles | Array of Strings | Array of the paths of css files relative to the static folder of each plugin . This property is set by the plugin. |
template | String | Before the plugin object is returned by the plugin logic, the template property contains the path to the template relative to the static folder. The path property is set first by the plugin. After the plugin object is returned and the Theodul core processed the plugin, the template property is filled with the real template data and can be used to re-render the view. |
container | String | Contains the ID of the HTML div container, which contains the rendered template. This can be used to re-render the view. This property is set by the core. |
pluginPath | String | Contains the absolute path of the plugin. This property is set by the core. |
events | Object | Contains all events which are used of this plugin. Each handled and each triggered event. |