TIP RackPlannerPlugin is not installed on Foswiki.org.
Render a rack overview (e.g. of 19'' computer racks) with HTML tables.

RackPlannerPlugin

The RackPlannerPlugin handles the tag %RACKPLANNER% and renders a rack overview (HTML table) with devices (computer, router, switches, ...).

Syntax Rules

Devices are defined within a Foswiki table. Following columns are supported:

Device Rack Starting Unit Form Factor Connected to: Owner Color/Image Notes
device name(s) (separated by ' / ' or ' # ')
rack name
a starting unit (a number between 1 and units)
a form factor (units, e.g. 4U, 2, 1U, ...)
device(s) is/are connected to ... (comma separated list of other devices, ports ...); every 'connected to' item is displayed as a icon (see connectedtoicon, e.g. MOVED TO...) with the text as tooltip; if you use links the icons are also links;
the device owner(s) is/are displayed as tooltip of the device name
colors or a background image (a URL or shortcut, e.g. @sun - see attachments) for the table data cell
notes are displayed as a icon (notesicon e.g. REFACTOR) with the note as tooltip; if you use a link the icon is also a link
must must must must optional optional optional optional
Examples
Server1
10
2U
port31
server admins
blue,white
not in use
Patchfield1 / Switch2
40
1U
switch3 / router4
network admins / network admins
blue,white / green,white
3 ports free / 8 ports free
15
4U
port12
sun server admins
blue,white,@sun

You can use following %EDITTABLE% tag (EditTablePlugin must be installed) to simplify some things (ALERT! it must be one line):
%EDITTABLE{format="|text,10,|text,10,|text,5,1|select,1,1U,2U,3U,4U,5U,6U,7U,8U,9U,10U|text,20,|text,20,|text,10,|textarea,3x20|" 
header="|*Device*|*Rack*|*Starting Unit*|*Form Factor*|*Connected to:*|*Owner*|*Color/Image*|*Notes*|"}%
This %EDITTABLE% tag is an example. Feel free to modify the attributes (format and header). Hint: Put a %TABLE{initsort="3" initdirection="down"}% tag before the %EDITTABLE% tag to sort the table like the rack (modify initdirection to "up" if your first unit is at the top of the rack (dir="topdown")).

Notes:
  • The device order in the table is not relevant (except there's a conflict) but the column order is relevant (because the table header will be ignored).
  • If more than one device uses the same unit the conflict will be displayed with a icon (see conflicticon attribute, e.g. PICK). The tooltip of the icon contains the device names.
  • If you have more than one device in the same unit you have to put them into a single table row and separate device names, 'connected to', owner, colors, notes with a ' / ' or a ' # ' (a whitespace before and after the separator is required).

Attributes

Usage: %RACKPLANNER{attribute1="value" attribute2="value" ... }%
Example: %RACKPLANNER{racks="rack1, rack2"}%

Attribute Description Example/Default
Behavior:
autotopic
set it on and every rack name is automatically used as source topic for the device definition (racks attribute is required and the value is attached to the topic attribute value); useful if you define your racks and devices on topics with the same names as the racks
autotopic="off"
dir
sets the direction of the units: topdown - unit 1 is at the top of the rack; bottomup - unit 1 is at the bottom of the rack; leftright - units are shown horizontal with unit 1 at the left; rightleft - units are shown horizontal with unit 1 at the right
dir="bottomup"
clicktooltip
if enabled JavaScript tooltips are only shown with a mouse click to the table cell instead of 'mouse over' (related: enablejstooltips, clicktooltiptext)
clicktooltip="off"
enablejstooltips
enables/disables JavaScript tooltips
enablejstooltips="1"
racks
a comma separated list of rack names to show; if omitted all racks found on topics (see topic attribute) are shown
racks="rack1,rack2"
steps
unit steps to display (useful if you use only every steps unit of a rack)
steps="1"
topic
a comma separated list of source topics
topic="%TOPIC%"
units
units to show
units="46"
Icons:
conflicticon
if a conflict exists this icon will be displayed
conflicticon="%S%"
connectedtoicon
if a 'connected to' entry exists this icon will be displayed with the entry as tooltip
connectedtoicon="%M%"
notesicon
if a 'notes' entry exists this icon will be displayed with the note as tooltip
notesicon="%P%"
ownericon
only used for JavaScript tooltips
ownericon="%ICON{persons}%"
Formatting:
clicktooltiptext
tooltip text if clicktooltip is enabled
clicktooltiptext="click for information"
columnwidth
column width
columnwidth="50px"
devicebgcolor
default device background color
devicebgcolor="#f0f0f0"
devicefgcolor
default device foreground color
devicefgcolor="#000000"
displayconnectedto
if enabled the 'connected to' text entry will be displayed in the table cell instead of the 'connected to' icon
displayconnectedto="off"
displaynotes
if enabled the 'notes' entry will be displayed in the table cell instead of the 'notes' icon
displaynotes="off"
displayowner
if enabled the 'owner' entry will be displayed in the table cell
displayowner="off"
displaystats
if enabled the statistics will be displayed
displaystats="on"
displayunitcolumn
if enabled the unit column will be displayed (related: unitcolumnpos, unitcolumnformat)
displayunitcolumn="1"
emptybgcolor
default empty unit background color
emptybgcolor="#f0f0f0"
emptyfgcolor
default empty unit foreground color
emptyfgcolor="#000000"
emptytext
text for empty units (replacements: %U - unit number; %R - rack name)
emptytext="empty"
fontsize
font size of the text (in px, pt, em, ... or xx-small, x-small, small, medium, large,x-large, xx-large, smaller, larger); don't forget to reduce the iconsize if you reduce the fontsize
fontsize="small"
iconsize
icon size
iconsize="16"
name
entry of the first cell (header of the unit row)
name="U"
rackstatformat
rack statistics format (replacements: %EU - empty units; %LEB - largest empty block; %OU - occupied units)
rackstatformat="Empty: %EUU %BR%Largest Empty Block: %LEBU %BR%Occupied: %OUU"
statformat
statistics format (replacements: %R - rack count; %EU - empty units; %LEB - largest empty block; %OU - occupied units; %U - # units)
statformat="#Racks: %R, #Units: %U, Occupied: %OUU, Empty: %EUU, Largest Empty Block: %LEBU"
textdir
defines text direction; allowed values: topdown, leftright (ALERT! only supported for dir="leftright" and dir="rightleft" yet)
textdir="leftright"
tooltipbgcolor
tooltip background color (default: color from definition table)
tooltipbgcolor=""
toolitpfgcolor
tooltip foreground color (default: color from definition table)
tooltipfgcolor=""
tooltipfixleft
tooltip position fix (skin dependent)
tooltipfixleft=-163
tooltipfixtop
tooltip position fix (skin dependent)
tooltipfixtop=0
tooltipformat
tooltip format (replacements: %DEVICE%: device name; %FORMFACTOR%: form factor; %RACK%: rack name; %SUNIT%: starting unit; %EUNIT%: ending unit; %OWNER%: onwer; %NOTES%: notes; %OWNERICON%: owner icon; %NOTESICON%: notes icon; %CONNECTEDTOICON%: 'connected to' icon; %CLOSEBUTTON%: a close button)
tooltipformat="<b><span title="Device name"> %DEVICE%: </span></b> <span title="Form factor">%FORMFACTOR%</span> (<span title="Start-End units">%SUNIT%-%EUNIT%</span>, <span title="Rack name">%RACK%</span>)<div title="Owner">%OWNERICON% %OWNER% </div><div title="Connected to">%CONNECTEDTOICON% %CONNECTEDTO% </div><div title="Notes">%NOTESICON% %NOTES% </div><div style="font-size:xx-small;text-align:right;"><span style="background-color:red;" title="Close tooltip">%CLOSEBUTTON%</span></div>"
unitcolumnbgcolor
background color of the unit column
unitcolumnbgcolor="white"
unitcolumnfgcolor
foreground color of the unit column
unitcolumnfgcolor="black"
unitcolumnformat
format of the unit column (replacement: %U - unit)
unitcolumnformat="%U"
unitcolumnpos
positions of the unit column: left, right, both (left and right), all (both and between racks)
unitcolumnpos="left"

Notes:
  • You can use TextFormattingRules for some attribute values: conflicticon, connectedtoicon, emptytext, name, notesicon
  • Every attribute of %RACKPLANNER% can also be used as plugin setting. You only have to use capital letters.

Example

%RACKPLANNER{units="46" racks="rack1,rack2" devicebgcolor="darkgray" devicefgcolor="white"}%

Device Rack Starting Unit Form Factor Connected to: Owner Color/Image Notes
server01
rack1
1
1U
me
some notes to server1
edit
server02
rack1
5
4U
@sun
some notes
edit
server03
rack1
6
1U
conflict with server02
edit
server04
rack2
40
5U
P123
someone else
green,white
goes to ..
edit
a very very very very long text
rack2
1
1U
green
edit
server06
rack1
7
1U
edit
server07
rack1
10
3U
conflict with server02 and server06
edit
rack2
30
2U
edit
Linux10
rack1
13
2U
New great Foswiki server
edit

Plugin Settings

Plugin settings are stored as preferences values. You can override the defaults for these preferences in SitePreferences, the WebPreferences topic of the current web, or in individual topics that use the plugin. Changing them here will have no effect! This allows you to upgrade the plugin without having to worry about losing your settings.

  • Debug plugin: (See output in debug.txt)
    • Set RACKPLANNERPLUGIN_DEBUG = 0

  • Rack units (default: 46):
    • Set RACKPLANNERPLUGIN_UNITS = 46

  • Device background/foreground colors:
    • Set RACKPLANNERPLUGIN_DEVICEBGCOLOR = #f0f0f0
    • Set RACKPLANNERPLUGIN_DEVICEFGCOLOR = #000000

  • Empty unit text:
    • # Set RACKPLANNERPLUGIN_EMPTYTEXT = empty

  • Font and icon sizes:
    • Set RACKPLANNERPLUGIN_FONTSIZE = small
    • Set RACKPLANNERPLUGIN_ICONSIZE = 12px

  • Fix tooltip positions (skin dependent):
    • # Set RACKPLANNERPLUGIN_TOOLTIPFIXLEFT = -163
    • # Set RACKPLANNERPLUGIN_TOOLTIPFIXTOP = 0

  • Note: Every attribute of %RACKPLANNER% can also be used as plugin setting. You only have to use capital letters.

Plugin Installation Instructions

You do not need to install anything in the browser to use this extension. The following instructions are for the administrator who installs the extension on the server.

Open configure, and open the "Extensions" section. Use "Find More Extensions" to get a list of available extensions. Select "Install".

If you have any problems, or if the extension isn't available in configure, then you can still install manually from the command-line. See http://foswiki.org/Support/ManuallyInstallingExtensions for more help.

Plugin Info

Plugin Author:
Copyright:
License:
Plugin Release:
1.1
Plugin Version:
11629 (2011-05-04)
Change History:
 
1.1 (04 May 2011)
Foswikitask:Item10709: No longer load preferences in plugin topic; bit of code cean-up -- Foswiki:Main.AndrewJones
V1.007 (13 Des 2008)
Rebranded to Foswiki. Foswiki:Main.LarsEik, Tasks.Item8030
V1.006 (30 Aug 2007)
fixed minor tooltip foreground/background color bug; added device icon shortcut feature; added some base device icons;
V1.005 (5 Jun 2007)
TWiki:Main.DanielRohde: fixed links in 'connected to' or 'owner' field bug; added new attribute (clicktooltip...); added documentation
V1.004 (20 Apr 2007)
TWiki:Main.DanielRohde: fixed replacement in tooltipformat bug; improved tooltipformat; improved HTML rendering performance; added and fixed documenation;
V1.003 (6 Mar 2007)
TWiki:Main.DanielRohde: fixed displayowner/displaynotes bug reported by TWiki:Main.PatrickTuite; added horizontal rendering feature requested by TWiki:Main.OlofStockhaus; added new attributes (tooltip..., columnwidth, textdir); fixed HTML validation bug;
V1.002 (26 Oct 2006):
TWiki:Main.DanielRohde: allowed multiple entries in a single unit; fixed rendering bug reported by TWiki:Main.SteveWray; fixed link color bug reported by TWiki:Main.SteveWray
V1.001 (7 Aug 2006):
TWiki:Main.DanielRohde: improved some features (added statistics); added attributes (rackstatformat, displayunitcolumn, unitcolumn*); renamed attribute statformat; fixed documentation; fixed tooltip bug; fixed conflict bug;
V1.000 (4 Aug 2006):
TWiki:Main.DanielRohde: Initial version
Home:
Support:

Related Topics: Plugins, DeveloperDocumentationCategory, AdminDocumentationCategory, DefaultPreferences, SitePreferences
Topic revision: r5 - 04 May 2011, AndrewJones - This page was cached on 11 Dec 2016 - 05:19.

The copyright of the content on this website is held by the contributing authors, except where stated elsewhere. See Copyright Statement. Creative Commons License