New Custom Pages (2017)
A new scheme of custom pages making use of modern HTML5 techniques has been introduced in 2017. This page describes all new elements and gives some example pages.
Required Elements
For the new custom pages to work, following elements in a custom HTML page are required:
- Including
midas.js
- Including
mhttpd.js
- Including style sheet
midas.css
- Setting the class of the HTML body to
mcss
- Calling
mhttpd_init('name')
on page load wherename
is the name of the page shown on the left menu bar - Using
div
elements with various pre-defined id's and names
modbvalue
The special HTML div tag (abbreviation stands for Midas ODB VALUE) <div name="modbvalue" data-odb-path="/Some/Path">
is now automatically replaced by the value in the ODB found at the given path. Updates are one once per second, which can be changed by passing a second argument to mhttpd_init('name', interval)
where interval is in milliseconds. Following options are valid for this tag:
Option | Example | Meaning |
---|---|---|
name | name="modbvalue" | Tells the framework to replace this tag with an ODB value |
data-odb-path | data-odb-path = "/Runinfo/Run number" | Path to the value in the ODB |
data-odb-editable | data-odb-editable="1" | If set, the value is not only shown, but is also clickable for in-line editing. Hitting return send the new value to the ODB. |
data-format | data-format="f3" | Specify format of data shown. See table below for options. |
Following format specifiers are possible together with an modbvalue tag data-format="..."
:
Option | Example | Meaning |
---|---|---|
d | 1234 | Shows a number in decimal encoding |
x | 0x4D2 | Shows a number in hexadecimal encoding |
b | 10011010010b | Shows a number in binary encoding. Options d, x, b can be combined, like data-format="dxb"
|
f<x> | 1.234 | Shows a floating point number with <x> digits after the decimal. A value of f0 shows only the integer part. |
p<x> | 1.23 | Shows a floating point number with <x> significant digits of precision, independent of the decimal. For example a value of p2 can render a number to 12000 or to 0.00012 |
modbbutton
This tag generates a push-button which can set a certain ODB entry to a specific value. To set the run number to 100, one can use the following tag:
<button name="modbbutton" class="mbutton" data-odb-path="/Runinfo/Run number" data-odb-value="100">