i2b2 Web Client
Space shortcuts
Space Tools
Skip to end of metadata
Go to start of metadata

Framework and Core Cells

The i2b2 web client framework has been designed to exist and run in a structured namespace within the JavaScript VM. The base namespace is i2b2 and exists within the JSVM's global scope. Various subsystems, cells and plug-in modules also extend this namespace using an abbreviated code such as ONT for the Ontology Cell, WORK for the Workspace Cell.

Namespace

Description

events

Collection of YUI Events objects for major events that occur within the Framework

h

Namespace containing helper functions for use by the framework and plug-ins

hive

 

      HelpViewer

The help viewer system

      MasterView

Top level view controller that handles the main view windows

      MsgSniffer

The communications channel sniffer subsystem and display window

      cfg

Configuration for the Hive including: known plug-ins / cells, loaded plug-in / cells, known login

domains

 

sdx

 

      Master

All SDX calls go through this object and are routed to the correct even handlers

      TypeControllers

Namespace containing all SDX data type specific processing libraries



Plug-ins

Each cell or module extends its own namespace in its own way but there are some extensions which are automatically created by the core web client framework.

These standard extensions are as follows:

Namespace

Description

ajax

Namespace used to contain all communications layer objects and functionality

cellCode

String containing the code for the module's namespace root (ONT for i2b2.ONT namespace)

cfg

Namespace used to store all configuration information (auto-populated from JSON config file)

            baseDir

URI pointing to the base directory used by the code module

      cellParams

Cell parameters loaded at login from the PM for this Cell-based code module

      cellURL

URL to the Cell Server's access point (only set for Cell-based modules)

      config

            assetDir

URI to the asset directory of the module

            category

Array of Strings - search categories this module represents (auto-loaded from JSON config)

            icons

                  size32x32

String – filename of image to be used for 32x32 pixel icon

                  size16x16

String – filename of image to be used for 16x16 pixel icon

            name

Friendly-name for this module (short_name in JSON config for module.

            css

Array of Strings - filenames of CSS files to be loaded (See note listed below)

            files

Array of Strings - filenames of JavaScript files to load

ctrlr

Namespace for controller objects used by the code module

isLoaded

Boolean - is the code module fully loaded into the web client framework?

model

Namespace to contain any local data used by the module

view

Namespace to contain the view objects used by the module

      {someview}

 

            cellRoot

Reference pointer back to the module's namespace root

            visible

Boolean - is the view visible?

            modal

Namespace to contain references of any modal forms used by the View



Be Careful

A single CSS file should only be specified here because of problems caused by Internet Explorer's limit on the number of dynamically loaded CSS files allowed. If your module requires multiple CSS files, create amaster_load.css file which uses @import "filename.css" to import the rest of the CSS files.




Firebug showing Workspace Cell Namespace (i2b2.WORK)


  • No labels