From: Steven Barth Date: Sun, 15 Jun 2008 16:02:47 +0000 (+0000) Subject: * Added support for htdocs module directory X-Git-Tag: 0.8.0~809 X-Git-Url: https://git.archive.openwrt.org/?p=project%2Fluci.git;a=commitdiff_plain;h=3455ee6d8d9eb3c0ee8459adb586a800dadaf737 * Added support for htdocs module directory --- diff --git a/applications/luci-splash/htdocs/cgi-bin/luci-splash b/applications/luci-splash/htdocs/cgi-bin/luci-splash new file mode 100755 index 000000000..c75593fbe --- /dev/null +++ b/applications/luci-splash/htdocs/cgi-bin/luci-splash @@ -0,0 +1,4 @@ +#!/bin/sh +echo "Status: 302 Found" +echo "Location: /cgi-bin/luci/splash/splash$PATH_INFO" +echo \ No newline at end of file diff --git a/applications/luci-splash/root/www/cgi-bin/luci-splash b/applications/luci-splash/root/www/cgi-bin/luci-splash deleted file mode 100755 index c75593fbe..000000000 --- a/applications/luci-splash/root/www/cgi-bin/luci-splash +++ /dev/null @@ -1,4 +0,0 @@ -#!/bin/sh -echo "Status: 302 Found" -echo "Location: /cgi-bin/luci/splash/splash$PATH_INFO" -echo \ No newline at end of file diff --git a/build/config.mk b/build/config.mk index 81d3e0836..3cf13201f 100644 --- a/build/config.mk +++ b/build/config.mk @@ -7,3 +7,5 @@ LUA_LIBRARYDIR = /usr/lib/lua LUCI_MODULEDIR = $(LUA_MODULEDIR)/luci LUCI_LIBRARYDIR = $(LUA_LIBRARYDIR)/luci +HTDOCS = /www + diff --git a/build/module.mk b/build/module.mk index 4ef3668c8..b85dcda35 100644 --- a/build/module.mk +++ b/build/module.mk @@ -14,9 +14,11 @@ clean: luaclean luasource: mkdir -p dist$(LUA_MODULEDIR) mkdir -p dist$(LUCI_MODULEDIR) + mkdir -p dist$(HTDOCS) cp -a root/* dist -R 2>/dev/null || true cp -a luasrc/* dist$(LUCI_MODULEDIR) -R 2>/dev/null || true cp -a lua/* dist$(LUA_MODULEDIR) -R 2>/dev/null || true + cp -a htdocs/* dist$(HTDOCS) -R 2>/dev/null || true for i in $$(find dist -name .svn); do rm $$i -rf; done luacompile: luasource diff --git a/libs/cbi/htdocs/luci-static/resources/cbi.js b/libs/cbi/htdocs/luci-static/resources/cbi.js new file mode 100644 index 000000000..a3a47aa45 --- /dev/null +++ b/libs/cbi/htdocs/luci-static/resources/cbi.js @@ -0,0 +1,42 @@ +var cbi_d = {}; + +function cbi_d_add(field, target, value) { + if (!cbi_d[target]) { + cbi_d[target] = {}; + } + if (!cbi_d[target][value]) { + cbi_d[target][value] = []; + } + cbi_d[target][value].push(field); +} + +function cbi_d_update(target) { + if (!cbi_d[target]) { + return; + } + + for (var x in cbi_d[target]) { + for (var i=0; i + + + + + + +LuCI - Lua Configuration Interface + + \ No newline at end of file diff --git a/libs/sgi-haserl/root/www/cgi-bin/index.cgi b/libs/sgi-haserl/root/www/cgi-bin/index.cgi deleted file mode 100755 index aae8591c6..000000000 --- a/libs/sgi-haserl/root/www/cgi-bin/index.cgi +++ /dev/null @@ -1,3 +0,0 @@ -#!/usr/bin/haserl --shell=luac -print("Status: 302 Found") -print("Location: luci\n") diff --git a/libs/sgi-haserl/root/www/cgi-bin/luci b/libs/sgi-haserl/root/www/cgi-bin/luci deleted file mode 100755 index fd8e5941a..000000000 --- a/libs/sgi-haserl/root/www/cgi-bin/luci +++ /dev/null @@ -1,4 +0,0 @@ -#!/usr/bin/haserl --shell=luac -require("luci.sgi.haserl") -luci.dispatcher.indexcache = "/tmp/.luciindex" -luci.sgi.haserl.run() \ No newline at end of file diff --git a/libs/sgi-haserl/root/www/cgi-bin/luci-upload b/libs/sgi-haserl/root/www/cgi-bin/luci-upload deleted file mode 100755 index 371967ce9..000000000 --- a/libs/sgi-haserl/root/www/cgi-bin/luci-upload +++ /dev/null @@ -1,4 +0,0 @@ -#!/usr/bin/haserl --shell=luac --upload-limit=16384 --- This is a bit hacky: remove -upload from SCRIPT_NAME -ENV.SCRIPT_NAME = ENV.SCRIPT_NAME:sub(1, #ENV.SCRIPT_NAME - 7) -dofile("luci") \ No newline at end of file diff --git a/libs/sgi-haserl/root/www/index.html b/libs/sgi-haserl/root/www/index.html deleted file mode 100644 index 39ba558df..000000000 --- a/libs/sgi-haserl/root/www/index.html +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - -LuCI - Lua Configuration Interface - - \ No newline at end of file diff --git a/themes/fledermaus/htdocs/luci-static/fledermaus/cascade.css b/themes/fledermaus/htdocs/luci-static/fledermaus/cascade.css new file mode 100644 index 000000000..8f30015f3 --- /dev/null +++ b/themes/fledermaus/htdocs/luci-static/fledermaus/cascade.css @@ -0,0 +1,297 @@ +@charset "utf-8"; + +body { + font-family: Verdana, Arial, sans-serif; + background-color: #aaaaaa; +} + +h1 { + margin: 0%; + font-size: 1.4em; + font-weight: bold; + margin-bottom: 0.5em; +} + +h2 { + margin: 0%; + font-size: 1.2em; + font-weight: bold; +} + +h3 { + margin: 0%; +} + +#header { + padding: 0.2em; + height: 4.5em; + background-color: #262626; +} + +#columns { + border-left: 10.1em solid #262626; + border-right: 10.1em solid #262626; + display: block; + background-color: white; + padding: 0.1em; +} + +#columnswrapper { + display: block; + margin-left: -10em; + margin-right: -10em; +} + +#content { + margin-left: 14em; + margin-right: 14em; + display: block; + position: relative; + padding: 2px; + font-size: 0.8em; +} + +.headerlogo { + height: 4em; + padding: 5px; +} + +.headerlogo img { + height: 100%; +} + +.headertitle { + font-size: 2.4em; + color: gray; + letter-spacing: 0.5em; + text-transform: lowercase; +} + +.separator { + padding-left: 0.25em; + font-weight: bold; + font-size: 0.8em; + line-height: 1.4em; +} + +.whitetext { + color: white; +} + +.yellowtext { + color: #ffcb05; +} + +.magentatext { + color: #dc0065; +} + +.inheritcolor { + color: inherit; +} + +.smalltext { + font-size: 0.8em; +} + +.yellow { + background-color: #ffcb05; +} + +.magenta { + background-color: #dc0065; +} + +.nodeco { + text-decoration: none; +} + +.redhover:hover { + color: red; +} + +.bold { + font-weight: bold; +} + +.sidebar { + position: relative; + padding: 0.25em; + color: gray; + width: 9em; + font-weight: bold; +} + +.separator a, .sidebar a { + color: inherit; + text-decoration: inherit; +} + +.separator a:hover, .sidebar a:hover { + color: red; +} + +.sidebar div { + padding-bottom: 0.5em; +} + +.sidebar ul { + font-size: 0.9em; + color: white; + list-style-type: none; + padding-left: 1em; + margin-top: 0%; +} + +.table { + display: table; +} + +.table-row { + display: table-row; +} + +.table-cell { + display: table-cell; +} + +.left { + float: left; + text-align: left; +} + +.right { + float: right; + text-align: right; +} + +.clear { + clear: both; +} + +.hidden { + display: none; +} + +.inline { + display: inline; +} + +.code { + background: #f7f7f7; + border: 1px solid #d7d7d7; + margin: 1em 1.75em; + padding: 1em; +} + +code { + display: block; + background: #f7f7f7; + border: 1px solid #d7d7d7; + margin: 1em 1.75em; + padding: 1em; + overflow: auto; + white-space: pre; +} + +.cbi-section { + margin-top: 1em; +} + +.cbi-section-remove { + text-align: right; +} + +.cbi-value { + display: table-row; +} + +.cbi-value-title { + display: table-cell; + line-height: 1.75em; + font-weight: bold; + padding: 0.25em; +} + +.cbi-value-field { + display: table-cell; + text-align: left; + padding: 0.25em; + line-height: 1.75em; +} + +.cbi-value-field input, .cbi-value-field select, +.cbi-optionals select, .cbi-optionals input, +.cbi-section-remove input, .cbi-section-create input { + font-size: 0.8em; + margin: 0%; +} + +.cbi-section-descr { + padding-bottom: 1em; +} + +.cbi-value-description { + display: inline; + font-style: italic; + font-size: 0.8em; + padding: 0.25em; + margin-bottom: 0.5em; +} + +.cbi-form-separator { + margin-top: 1em; +} + +.cbi-section-node { + display: table; + padding: 0.25em; + background: #f7f7f7; + border: 1px solid #d7d7d7; +} + +.cbi-section-row { + display: table-row; +} + +.cbi-section-row-head { + display: table-cell; + font-weight: bold; + padding: 0.25em; +} + +.cbi-section-row-descr { + display: table-cell; + padding: 0.25em; + font-size: 0.8em; +} + +.cbi-section-node h3 { + margin-bottom: 0.5em; +} + +.cbi-error { + color: red; + font-weight: bold; + font-size: 0.8em; + margin-bottom: 0.75em; +} + +.cbi-optionals { + margin-top: 1em; + display: table-cell; +} + +.cbi-optionals option { + font-size: 0.8em; +} + +.error { + color: red; + font-weight: bold; +} + +.ok { + color: green; + font-weight: bold; +} \ No newline at end of file diff --git a/themes/fledermaus/htdocs/luci-static/fledermaus/logo.png b/themes/fledermaus/htdocs/luci-static/fledermaus/logo.png new file mode 100644 index 000000000..d4c5dd9a3 Binary files /dev/null and b/themes/fledermaus/htdocs/luci-static/fledermaus/logo.png differ diff --git a/themes/fledermaus/root/www/luci-static/fledermaus/cascade.css b/themes/fledermaus/root/www/luci-static/fledermaus/cascade.css deleted file mode 100644 index 8f30015f3..000000000 --- a/themes/fledermaus/root/www/luci-static/fledermaus/cascade.css +++ /dev/null @@ -1,297 +0,0 @@ -@charset "utf-8"; - -body { - font-family: Verdana, Arial, sans-serif; - background-color: #aaaaaa; -} - -h1 { - margin: 0%; - font-size: 1.4em; - font-weight: bold; - margin-bottom: 0.5em; -} - -h2 { - margin: 0%; - font-size: 1.2em; - font-weight: bold; -} - -h3 { - margin: 0%; -} - -#header { - padding: 0.2em; - height: 4.5em; - background-color: #262626; -} - -#columns { - border-left: 10.1em solid #262626; - border-right: 10.1em solid #262626; - display: block; - background-color: white; - padding: 0.1em; -} - -#columnswrapper { - display: block; - margin-left: -10em; - margin-right: -10em; -} - -#content { - margin-left: 14em; - margin-right: 14em; - display: block; - position: relative; - padding: 2px; - font-size: 0.8em; -} - -.headerlogo { - height: 4em; - padding: 5px; -} - -.headerlogo img { - height: 100%; -} - -.headertitle { - font-size: 2.4em; - color: gray; - letter-spacing: 0.5em; - text-transform: lowercase; -} - -.separator { - padding-left: 0.25em; - font-weight: bold; - font-size: 0.8em; - line-height: 1.4em; -} - -.whitetext { - color: white; -} - -.yellowtext { - color: #ffcb05; -} - -.magentatext { - color: #dc0065; -} - -.inheritcolor { - color: inherit; -} - -.smalltext { - font-size: 0.8em; -} - -.yellow { - background-color: #ffcb05; -} - -.magenta { - background-color: #dc0065; -} - -.nodeco { - text-decoration: none; -} - -.redhover:hover { - color: red; -} - -.bold { - font-weight: bold; -} - -.sidebar { - position: relative; - padding: 0.25em; - color: gray; - width: 9em; - font-weight: bold; -} - -.separator a, .sidebar a { - color: inherit; - text-decoration: inherit; -} - -.separator a:hover, .sidebar a:hover { - color: red; -} - -.sidebar div { - padding-bottom: 0.5em; -} - -.sidebar ul { - font-size: 0.9em; - color: white; - list-style-type: none; - padding-left: 1em; - margin-top: 0%; -} - -.table { - display: table; -} - -.table-row { - display: table-row; -} - -.table-cell { - display: table-cell; -} - -.left { - float: left; - text-align: left; -} - -.right { - float: right; - text-align: right; -} - -.clear { - clear: both; -} - -.hidden { - display: none; -} - -.inline { - display: inline; -} - -.code { - background: #f7f7f7; - border: 1px solid #d7d7d7; - margin: 1em 1.75em; - padding: 1em; -} - -code { - display: block; - background: #f7f7f7; - border: 1px solid #d7d7d7; - margin: 1em 1.75em; - padding: 1em; - overflow: auto; - white-space: pre; -} - -.cbi-section { - margin-top: 1em; -} - -.cbi-section-remove { - text-align: right; -} - -.cbi-value { - display: table-row; -} - -.cbi-value-title { - display: table-cell; - line-height: 1.75em; - font-weight: bold; - padding: 0.25em; -} - -.cbi-value-field { - display: table-cell; - text-align: left; - padding: 0.25em; - line-height: 1.75em; -} - -.cbi-value-field input, .cbi-value-field select, -.cbi-optionals select, .cbi-optionals input, -.cbi-section-remove input, .cbi-section-create input { - font-size: 0.8em; - margin: 0%; -} - -.cbi-section-descr { - padding-bottom: 1em; -} - -.cbi-value-description { - display: inline; - font-style: italic; - font-size: 0.8em; - padding: 0.25em; - margin-bottom: 0.5em; -} - -.cbi-form-separator { - margin-top: 1em; -} - -.cbi-section-node { - display: table; - padding: 0.25em; - background: #f7f7f7; - border: 1px solid #d7d7d7; -} - -.cbi-section-row { - display: table-row; -} - -.cbi-section-row-head { - display: table-cell; - font-weight: bold; - padding: 0.25em; -} - -.cbi-section-row-descr { - display: table-cell; - padding: 0.25em; - font-size: 0.8em; -} - -.cbi-section-node h3 { - margin-bottom: 0.5em; -} - -.cbi-error { - color: red; - font-weight: bold; - font-size: 0.8em; - margin-bottom: 0.75em; -} - -.cbi-optionals { - margin-top: 1em; - display: table-cell; -} - -.cbi-optionals option { - font-size: 0.8em; -} - -.error { - color: red; - font-weight: bold; -} - -.ok { - color: green; - font-weight: bold; -} \ No newline at end of file diff --git a/themes/fledermaus/root/www/luci-static/fledermaus/logo.png b/themes/fledermaus/root/www/luci-static/fledermaus/logo.png deleted file mode 100644 index d4c5dd9a3..000000000 Binary files a/themes/fledermaus/root/www/luci-static/fledermaus/logo.png and /dev/null differ diff --git a/themes/openwrt.org/htdocs/luci-static/openwrt.org/cascade.css b/themes/openwrt.org/htdocs/luci-static/openwrt.org/cascade.css new file mode 100644 index 000000000..90827ab4e --- /dev/null +++ b/themes/openwrt.org/htdocs/luci-static/openwrt.org/cascade.css @@ -0,0 +1,298 @@ +@charset "utf-8"; + +body { + font-family: Verdana, Arial, sans-serif; + background-color: #557788; +} + +h1 { + margin: 0%; + font-size: 1.4em; + font-weight: bold; + margin-bottom: 0.5em; +} + +h2 { + margin: 0%; + font-size: 1.2em; + font-weight: bold; +} + +h3 { + margin: 0%; +} + +#page { + background-color: #d4dce0; + border-left: 3px solid #000000; + border-right: 3px solid #000000; +} + +#header { + padding: 0.2em; + height: 4.5em; + padding-left: 1.2em; +} + +#columns { + border-left: 10.1em solid #ccd6db; + border-right: 10.1em solid #ccd6db; + display: block; + padding: 0.1em; +} + +#columnswrapper { + display: block; + margin-left: -10em; + margin-right: -10em; +} + +#content { + margin-left: 14em; + margin-right: 14em; + display: block; + position: relative; + padding: 2px; + font-size: 0.8em; +} + +.headerlogo { + height: 4em; + padding: 5px; +} + +.headerlogo img { + height: 100%; +} + +.headertitle { + font-size: 2.4em; + color: black; + font-weight: bold; + letter-spacing: 0.6em; + text-transform: lowercase; +} + +.separator { + padding-left: 0.25em; + font-weight: bold; + font-size: 0.8em; + line-height: 1.4em; +} + +.whitetext { + color: white; +} + +.blacktext { + color: #000000; +} + +.magentatext { + color: #dc0065; +} + +.inheritcolor { + color: inherit; +} + +.smalltext { + font-size: 0.8em; +} + +.black { + background-color: #000000; +} + +.nodeco { + text-decoration: none; +} + +.redhover:hover { + color: red; +} + +.bold { + font-weight: bold; +} + +.sidebar { + position: relative; + padding: 0.25em; + color: gray; + width: 9em; + font-weight: bold; +} + +.separator a, .sidebar a { + color: inherit; + text-decoration: inherit; +} + +.separator a:hover, .sidebar a:hover { + color: red; +} + +.sidebar div { + padding-bottom: 0.5em; +} + +.sidebar ul { + font-size: 0.9em; + color: white; + list-style-type: none; + padding-left: 1em; + margin-top: 0%; +} + +.table { + display: table; +} + +.table-row { + display: table-row; +} + +.table-cell { + display: table-cell; +} + +.left { + float: left; + text-align: left; +} + +.right { + float: right; + text-align: right; +} + +.clear { + clear: both; +} + +.hidden { + display: none; +} + +.inline { + display: inline; +} + +.code { + background: #f7f7f7; + border: 1px solid #d7d7d7; + margin: 1em 1.75em; + padding: 1em; +} + +code { + display: block; + background: #f7f7f7; + border: 1px solid #d7d7d7; + margin: 1em 1.75em; + padding: 1em; + overflow: auto; + white-space: pre; +} + +.cbi-section { + margin-top: 1em; +} + +.cbi-section-remove { + text-align: right; +} + +.cbi-value { + display: table-row; +} + +.cbi-value-title { + display: table-cell; + line-height: 1.75em; + font-weight: bold; + padding: 0.25em; +} + +.cbi-value-field { + display: table-cell; + text-align: left; + padding: 0.25em; + line-height: 1.75em; +} + +.cbi-value-field input, .cbi-value-field select, +.cbi-optionals select, .cbi-optionals input, +.cbi-section-remove input, .cbi-section-create input { + font-size: 0.8em; + margin: 0%; +} + +.cbi-section-descr { + padding-bottom: 1em; +} + +.cbi-value-description { + display: inline; + font-style: italic; + font-size: 0.8em; + padding: 0.25em; + margin-bottom: 0.5em; +} + +.cbi-form-separator { + margin-top: 1em; +} + +.cbi-section-node { + display: table; + padding: 0.25em; + border: 1px solid #000000; +} + +.cbi-section-row { + display: table-row; +} + +.cbi-section-row-head { + display: table-cell; + font-weight: bold; + padding: 0.25em; +} + +.cbi-section-row-descr { + display: table-cell; + padding: 0.25em; + font-size: 0.8em; +} + +.cbi-section-node h3 { + margin-bottom: 0.5em; +} + +.cbi-error { + color: red; + font-weight: bold; + font-size: 0.8em; + margin-bottom: 0.75em; +} + +.cbi-optionals { + margin-top: 1em; + display: table-cell; +} + +.cbi-optionals option { + font-size: 0.8em; +} + +.error { + color: red; + font-weight: bold; +} + +.ok { + color: green; + font-weight: bold; +} \ No newline at end of file diff --git a/themes/openwrt.org/root/www/luci-static/openwrt.org/cascade.css b/themes/openwrt.org/root/www/luci-static/openwrt.org/cascade.css deleted file mode 100644 index 90827ab4e..000000000 --- a/themes/openwrt.org/root/www/luci-static/openwrt.org/cascade.css +++ /dev/null @@ -1,298 +0,0 @@ -@charset "utf-8"; - -body { - font-family: Verdana, Arial, sans-serif; - background-color: #557788; -} - -h1 { - margin: 0%; - font-size: 1.4em; - font-weight: bold; - margin-bottom: 0.5em; -} - -h2 { - margin: 0%; - font-size: 1.2em; - font-weight: bold; -} - -h3 { - margin: 0%; -} - -#page { - background-color: #d4dce0; - border-left: 3px solid #000000; - border-right: 3px solid #000000; -} - -#header { - padding: 0.2em; - height: 4.5em; - padding-left: 1.2em; -} - -#columns { - border-left: 10.1em solid #ccd6db; - border-right: 10.1em solid #ccd6db; - display: block; - padding: 0.1em; -} - -#columnswrapper { - display: block; - margin-left: -10em; - margin-right: -10em; -} - -#content { - margin-left: 14em; - margin-right: 14em; - display: block; - position: relative; - padding: 2px; - font-size: 0.8em; -} - -.headerlogo { - height: 4em; - padding: 5px; -} - -.headerlogo img { - height: 100%; -} - -.headertitle { - font-size: 2.4em; - color: black; - font-weight: bold; - letter-spacing: 0.6em; - text-transform: lowercase; -} - -.separator { - padding-left: 0.25em; - font-weight: bold; - font-size: 0.8em; - line-height: 1.4em; -} - -.whitetext { - color: white; -} - -.blacktext { - color: #000000; -} - -.magentatext { - color: #dc0065; -} - -.inheritcolor { - color: inherit; -} - -.smalltext { - font-size: 0.8em; -} - -.black { - background-color: #000000; -} - -.nodeco { - text-decoration: none; -} - -.redhover:hover { - color: red; -} - -.bold { - font-weight: bold; -} - -.sidebar { - position: relative; - padding: 0.25em; - color: gray; - width: 9em; - font-weight: bold; -} - -.separator a, .sidebar a { - color: inherit; - text-decoration: inherit; -} - -.separator a:hover, .sidebar a:hover { - color: red; -} - -.sidebar div { - padding-bottom: 0.5em; -} - -.sidebar ul { - font-size: 0.9em; - color: white; - list-style-type: none; - padding-left: 1em; - margin-top: 0%; -} - -.table { - display: table; -} - -.table-row { - display: table-row; -} - -.table-cell { - display: table-cell; -} - -.left { - float: left; - text-align: left; -} - -.right { - float: right; - text-align: right; -} - -.clear { - clear: both; -} - -.hidden { - display: none; -} - -.inline { - display: inline; -} - -.code { - background: #f7f7f7; - border: 1px solid #d7d7d7; - margin: 1em 1.75em; - padding: 1em; -} - -code { - display: block; - background: #f7f7f7; - border: 1px solid #d7d7d7; - margin: 1em 1.75em; - padding: 1em; - overflow: auto; - white-space: pre; -} - -.cbi-section { - margin-top: 1em; -} - -.cbi-section-remove { - text-align: right; -} - -.cbi-value { - display: table-row; -} - -.cbi-value-title { - display: table-cell; - line-height: 1.75em; - font-weight: bold; - padding: 0.25em; -} - -.cbi-value-field { - display: table-cell; - text-align: left; - padding: 0.25em; - line-height: 1.75em; -} - -.cbi-value-field input, .cbi-value-field select, -.cbi-optionals select, .cbi-optionals input, -.cbi-section-remove input, .cbi-section-create input { - font-size: 0.8em; - margin: 0%; -} - -.cbi-section-descr { - padding-bottom: 1em; -} - -.cbi-value-description { - display: inline; - font-style: italic; - font-size: 0.8em; - padding: 0.25em; - margin-bottom: 0.5em; -} - -.cbi-form-separator { - margin-top: 1em; -} - -.cbi-section-node { - display: table; - padding: 0.25em; - border: 1px solid #000000; -} - -.cbi-section-row { - display: table-row; -} - -.cbi-section-row-head { - display: table-cell; - font-weight: bold; - padding: 0.25em; -} - -.cbi-section-row-descr { - display: table-cell; - padding: 0.25em; - font-size: 0.8em; -} - -.cbi-section-node h3 { - margin-bottom: 0.5em; -} - -.cbi-error { - color: red; - font-weight: bold; - font-size: 0.8em; - margin-bottom: 0.75em; -} - -.cbi-optionals { - margin-top: 1em; - display: table-cell; -} - -.cbi-optionals option { - font-size: 0.8em; -} - -.error { - color: red; - font-weight: bold; -} - -.ok { - color: green; - font-weight: bold; -} \ No newline at end of file