From: maps Date: Thu, 20 Jun 2013 16:33:19 +0000 (+0200) Subject: added files for webserver X-Git-Url: https://jspc29.x-matter.uni-frankfurt.de/git/?a=commitdiff_plain;h=bf31ce06cd66ef9822f24657dc7084d96171664a;p=mvdsensorcontrol.git added files for webserver --- diff --git a/index.pl b/index.pl new file mode 100755 index 0000000..20b2540 --- /dev/null +++ b/index.pl @@ -0,0 +1,47 @@ +#!/usr/bin/env perl +use CGI qw/:standard/; +print "Content-type: text/html\n"; +print "\n\n"; +my $dn = $ENV{'PWD'}; +my $daqop = $ENV{'DAQOPSERVER'}; +print <<"HTML_DOCUMENT" + + + + + + +MVD Sensor Control + + + +

MVD Sensor Control

+

Welcome to your all-round MVD sensor monitor and control tool. +
The tools accessible from here are from the stable branch of the git repository. Please add a "devel/" after "jtag" to the URL to access the development branch. + + +

Documentation

+
+Guess what? We didn't write any! +
+ +

Monitoring and Control Features

+
+ +
+ +

Update

+
+
+ + + +HTML_DOCUMENT +; diff --git a/layout/background.png b/layout/background.png new file mode 100644 index 0000000..6e6e54f Binary files /dev/null and b/layout/background.png differ diff --git a/layout/base.css b/layout/base.css new file mode 100644 index 0000000..547ddec --- /dev/null +++ b/layout/base.css @@ -0,0 +1,244 @@ +/* Page layout */ + html, body { + padding:0; + margin: 0; + text-align: center; + background: #F4F5F5; + + font-family: arial, sans-serif; + font-size: 10pt; + } + + #data-update { + font-size: 90%; + float: right; + } + + #data-update.error {color: red} + + #header .content { + width: 1000px; + margin: 0 auto 0 auto; + padding-top: 8px; + text-align: left; + } + + #header { + border-bottom: 1px solid #DDDDDD; + background: #F9F9F9; + height: 40px; + position: fixed; + left: 0; top: 0; + width: 100%; + } + + #header h1 { + margin: 0; + font-size: 1.5em; + float: left; + } + + h3 { + text-align: center; + font-weight: bold; + font-size: 100%; + margin: 0 0 3px 0; + border-bottom: 1px dotted #cccccc; + } + + #content-area { + width: 1000px; + margin: 60px auto 20px auto; + text-align: left; + } + + .hint { + display: inline; + opacity: 0; + position: absolute; + top: -100px; + left: 0; + + padding: 3px 10px 3px 10px; + + background: black; + color: white; + border: 1px solid #808080; + + text-align: left; + } + + .hint pre { + display: inline; + font-weight: bold; + color: red; + } + + .hint strong { + color: yellow; + } + +/* Expandable handling */ + .expandable { + margin: 1em 0 1em 0; + } + + .expandable .header { + border-bottom: 1px solid #dddddd; + font-size: 120%; + font-weight: bold; + color: #6B7B95; + } + + .expandable .header .indicator { + display: block; + width: 15px; + float: left; + } + + .expandable .content { + margin-left: 15px; + background: #ffffff; + overflow: hidden; + padding: 5px; + } + + .expanded .content { + border-bottom: 1px solid #dddddd; + } + + #status-indicator { + height: 30px; + width: 30px; + margin: -3px 10px 0 0; + + float: left; + + -moz-border-radius: 15px; + border-radius: 15px; + + background-color: #30ff30; + } + + #status-indicator.warning {background-color: #ffe823;} + #status-indicator.error {background-color: #ff8080;} + + div.content > div.left { + padding-right: 9px; + border-right: 2px solid #6060ff; + } + + +/* Table Generics */ + table { + border-collapse: collapse; + width: 100%; + } + + table td, table tr { + border-bottom: 1px solid #eeeeee; + padding: 0px; + } + + input.unsaved { + background: #e0e0ff; + } + + table tr.flash, table tr.flash td { + background: #b5ff00; + } + + table tr.alt:hover td, table tr:hover td { + background: #ffffd0; + } + + .alt td { + background: #f6f6f6; + border-bottom: 1px solid #e0e0e0; + } + + table pre {display: inline;} + table a { + color: #000060; + text-decoration: none; + } + + + input {text-align: right;} + input.text {width: 7em;} + input.uncommitted {font-style: italic; color: #0000ff;} + +/* Overview */ + #overview-tab {width: 470px} + #overview-tab .rate, + #overview-tab .value {text-align: right;} + + #overview-tab .fullstop {background: #ffd0d0; color: #ff0000; font-weight: bold;} + + #rate-plot-cotainer { + float: right; + display: inline; + width: 450px; + margin-right: 20px; + text-align: center; + font-size: 80%; + color: #303030; + } + + #rate-plot { + margin-bottom: 10px; + } + +/* Trigger Inputs */ + #inputs-tab input {width: 4em;} + #inputs-tab .num {width: 2%; text-align: center;} + #inputs-tab .invert {text-align: center;} + + #inputs-tab .rate {text-align: right;} + +/* Internal Trigger Channel */ + .content div.left { + float: left; + width: 470px; + } + + .content div.right { + margin-left: 490px; + } + + #itc-mask-form { + padding: 10px 0 0 0; + text-align: right; + } + + #itc-mask { + width: 8em; + } + + .itc .channel {width: 2%; text-align: center;} + .itc .enable {width: 6%; text-align: center;} + .itc .edge {width: 10%; text-align: center;} +/* .itc .assign {width: 20%} */ + .itc .rate {width: 10%; text-align: right;} + + .itc td.rate {color: #909090;} + .itc td.active {color: #000; font-weight: bold;} + +/* Coincidence Detection */ + #coin-tab .num {width: 4%;} + #coin-tab .window {width: 32%;} + #coin-tab .window input {width: 4em; text-align: right} + #coin-tab .coin {width: 32%;} + #coin-tab .inhibt {width: 32%;} + +/* Pulser */ + #pulser-tab .num {width: 4%; text-align: center} + #pulser-tab .period {text-align: right} + #pulser-tab .freq {width: 30%; text-align: right} + #pulser-tab .period input {text-align: right; width: 8em;} + + #rand-pulser-tab .freq { + text-align: right; + } + + \ No newline at end of file diff --git a/layout/styles.css b/layout/styles.css new file mode 100644 index 0000000..e738a0e --- /dev/null +++ b/layout/styles.css @@ -0,0 +1,259 @@ +body { + background:#f5f5f5; + font-size:10pt; + margin:0px 0 0 25px; + padding:0; + +} + +body.index { + background:#f5f5f5 url("/layout/background.png") fixed no-repeat; +} + +h2 { +/* position:absolute; */ + width:100%; +/* top:-15px; */ +/* left:0px; */ +/* float:left; */ + background:#f9f9f9; + border-bottom:1px solid #ccc; + padding:0px 10px 5px 10px; + margin: 10px 0 10px -25px; +} + +h3 { + border-bottom: 1px solid #dddddd; + font-size: 120%; + font-weight: bold; + color: #6B7B95; + margin:10px 30px 0 0; +} + + +div.index { + margin: 0 30px 0 15px; + background: rgba(255,255,255,.5); + overflow: hidden; + padding: 5px; +} + +div.index ul a{ + text-decoration:none; + color:#6B7B95; +} + +div.index ul li{ + color:#6B7B95; +} + + +table.form { + border:1px solid #ccc; + padding:0; + background:#f0f0f8; + margin-bottom:20px; + border-collapse:collapse; +} + +table.form td { + padding:2px 10px; +} + +table.content { + border:solid #ccc; + border-width:1px 0 0 1px; + margin:0 20px 20px 0; + border-spacing:0; +} + +table.content td:first-child, table.content th:first-child{ + width:40px; + + padding-right:0px; + text-align:center; +} + + + +table.content td, table.content th { + border:solid #ccc; + border-width:0 1px 1px 0; + width:90px; + min-width:90px; + text-align:right; + padding-right:15px; +} + +table.content { + border:1px solid #ccc; +} + + +div#bar1 { + width:900px; + overflow-x:scroll; + } + +div#bar1 div { + width:66500px; + height:0px; +} + +div#bar2 { + width:900px; + overflow-x:scroll; + } + +div#bar2 div { + width:65536px; + height:0px; +} + + +#total { + text-align:center; + font-weight:bold; + } + +.content tr:nth-child(odd), .odd { + background:#f0f0f8; +} + +.content tr:nth-child(even), .even { + background:#e0e0e8; +} + +.odd { + background:#f0f0f8; +} + +.content tr:hover, .content tr:hover { + background:#ffe; +} + +.even { + background:#e0e0e8; +} + +tr.head th { + background:#333; + color:#eef; +} + +table.content td.over { + width:50px; + margin:0 10px; + padding-right:10px; + border-left: 5px solid #fcc; + border-right:5px solid #fcc; + border-radius:20px 20px; + background:#fcc; +} + +table.content td.under { + width:50px; + margin:0 10px; + padding-right:10px; + border-left: 5px solid #cfc; + border-right:5px solid #cfc; + border-radius:20px 20px; + background:#cfc; +} + + +table.content tr:hover td.over { + background:#fdd; + border-color:#fdd; +} + +table.content tr:hover td.under { + background:#dfd; + border-color:#dfd; +} + +input { + width:182px; +} + +input.small { + width:90px; + text-align:right; + margin-right:-6px; +} + +#form_rate, #form_rate2, #form_min, #form_max { +width: 89px; +} + +.fixed { + font-family:monospace; + font-size:85%; +} + + +.content .checkbox { + display: block; + float:left; + margin:0px -15px 2px 0px; + padding:0px 0px 0px 0px; +} + + +.onoffbutton { + width:22px; +} + +.triggerbutton { + width:100px; +} + +table#content.map td {border-bottom:none; margin-left:10px; text-align:right} +table#content.map td:first-child {text-align:left;padding-left:10px; width:100px;} +table#content.map td + td + td + td {width:200px;} +table#content.map td + td + td + td + td{width:120px;} + +#content .level1 {background:#f5f5f5;} +#content .level2 {background:#eaeaea;} +#content .level3 {background:#dedede;} +#content .level4 {background:#d0d0d0;} +#content .level5 {background:#f5f5f5;} +#content .level6 {background:#eaeaea;} +#content .level7 {background:#dedede;} +#content .level8 {background:#d0d0d0;} +#content .level9 {background:#d0d0d0;} + +#content .level1 > td:first-child { border-left:10px solid #333;} +#content .level2 > td:first-child { border-left:30px solid #333;} +#content .level3 > td:first-child { border-left:50px solid #333;} +#content .level4 > td:first-child { border-left:70px solid #333; } +#content .level5 > td:first-child { border-left:90px solid #333; } +#content .level6 > td:first-child { border-left:110px solid #333; } +#content .level7 > td:first-child { border-left:130px solid #333; } +#content .level8 > td:first-child { border-left:150px solid #333; } +#content .level9 > td:first-child { border-left:170px solid #333; } +#content .newlevel td {border-top:1px solid #aaa;} + + + + +#content .level > td:first-child div { + position:relative; + left:-30px; + width:20px; + text-align:right; + color:white; + float:left; + font-size:80%; + margin-top:3px; +} + +table#server-details td.label { + padding-right: 10px; +} + +table#server-details pre { + display: inline; +} + +