wiki:Develop/Administration

Corinis Adminsitration Interface

The Corinis administration interface is a html based user interface aimed at usability and easy integration of new modules.

Basic Layout

|--------|--------------------------------|
|        | Menu                           |
|        | Quickbar                       |
| Module |--------------------------------|
|  List  | Main content                   |
...
|--------|--------------------------------|

Directory Layout per Module

wwwroot-admin/modules/MODULENAME

  • module.props
  • module.lang.props
  • jsp, images, javascripts etc per module
  • one "main.jsp" (defined in module.props->module.main) displayed in the Main content area
  • one "nav.jsp" (defined in module.props->module.nav)
  • one "info.jsp" (defined in module.props->module.infostart)

All defined modulepages are being load on first call of the module, except nav.jsp, which will be called everytime the user clicks on navigation on the module List area. The administration pages automatically look for the module.props and module.lang.props load them und use the information within to create the elements like the menu, the quickbar and the module entry in the list.

module.props

# This is the module property file
# defines basic information about this module

# module.image
# ------------
# sets the relative path to the module's image
# the physical location is: adminwwwdir/modules/MYMODULE/images/mymodule.png
module.image=images/mymodule.png

# module.authority
# --------------------
# define an Authority, if the user does not have it, the module will not be displayed in the module list
module.authority=MYMODULE_CREATE

# module.menu
# -----------
# this specifies the per-module menu entries
# every entry is specified as:
# Title>url!subtitle>suburl!...;Title2>url2!sub2title1>url21,...;
# the title can be specified in the language files as menu.Title=thename to display
module.menu=maincreate;articlemain;moderator;

module.menu.maincreate=New>!NewMainEntry>contentWnd.showWindow('createnewForum')!NewEntry>contentWnd.showWindow('createnewArticle');\
	Entry>!PropMainEntry>contentWnd.propMainSelected()!PropEntry>contentWnd.propSelected()!LockMainEntry>contentWnd.lock_unlock()!LockEntryMainWindow>contentWnd.lock_unlockEntry()!DeleteMainEntry>contentWnd.deleteForum()!DeleteEntry>contentWnd.deleteEntry();\
	Help>!ForumHelp>window.open('help/index.jsp?book=Forum&chapter=1');
module.menu.articlemain=ArticleEntry>!NewArticleEntry>contentWnd.showWindow('createnewArticle')!PropEntry>contentWnd.propSelected()!LockEntry>contentWnd.lock_unlock()!DeleteEntry>contentWnd.deleteEntry();\
	ArticleHelp>!ArticleForumHelp>window.open('help/index.jsp?book=Forum&chapter=10');
module.menu.moderator=Moderator>!Change>change_moderator();

# module.quickBar
# ---------------
# specify what is displayed in the quickbar.
# the action executed has to specified in the module.menu property
# usage:
# Menutitle>imageurl;
module.quickBar=maincreate;articlemain;moderator

module.quickBar.maincreate=NewMainEntry>images/quickbar/foldernew.png;NewEntry>images/quickbar/filenew.png;|>;PropMainEntry>../../images/quickbar/properties.png#../../images/quickbar/properties_on.png;LockMainEntry>images/quickbar/lock.gif;LockEntryMainWindow>images/quickbar/lock.gif;DeleteMainEntry>../../images/quickbar/trash.png#../../images/quickbar/trash_on.png;
module.quickBar.articlemain=NewArticleEntry>images/quickbar/filenew.png;PropEntry>../../images/quickbar/properties.png#../../images/quickbar/properties_on.png;LockEntry>images/quickbar/lock.gif;DeleteEntry>../../images/quickbar/trash.png#../../images/quickbar/trash_on.png;
module.quickBar.moderator=change_moderator>images/quickbar/moderators.png;

# module.nav
# ----------
# specify the file that is responsible for the main navigation 
# it can also be empty if no main navigation is available
module.nav=nav.jsp

# module.main
# -----------
# specify the file that should be displayed in the main content
# iframe
module.main=getMainEntries.jsp

# module.infoheader
# -----------------
# what is the name of the info block?
module.infoheader=info

# module.infostart
# ----------------
# specify a page that should be displayed in the info block
# when the module is being called
module.infostart=info.html

# module.vars
# -----------
# javascript variables that should be predefined in the main.jsp
# in order to work with the module.
#module.vars=