diff options
Diffstat (limited to 'config/widescreen/bin')
-rw-r--r-- | config/widescreen/bin/all.css_ | 1413 | ||||
-rw-r--r-- | config/widescreen/bin/fbegin.inc_ | 430 | ||||
-rw-r--r-- | config/widescreen/bin/fend.inc_ | 23 | ||||
-rw-r--r-- | config/widescreen/bin/footer-left.png | bin | 0 -> 811 bytes | |||
-rw-r--r-- | config/widescreen/bin/footer-middle.png | bin | 0 -> 338 bytes | |||
-rw-r--r-- | config/widescreen/bin/footer-right.png | bin | 0 -> 769 bytes | |||
-rw-r--r-- | config/widescreen/bin/header-mid.png | bin | 0 -> 257 bytes | |||
-rw-r--r-- | config/widescreen/bin/horiz-left.png | bin | 0 -> 224 bytes | |||
-rw-r--r-- | config/widescreen/bin/horiz-right.png | bin | 0 -> 228 bytes | |||
-rw-r--r-- | config/widescreen/bin/index.php_ | 775 |
10 files changed, 2641 insertions, 0 deletions
diff --git a/config/widescreen/bin/all.css_ b/config/widescreen/bin/all.css_ new file mode 100644 index 00000000..d11dedca --- /dev/null +++ b/config/widescreen/bin/all.css_ @@ -0,0 +1,1413 @@ +/* Element CSS Definitions */ +html, body, td, th, input, select { + font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif; + font-size: 0.9em; + +} + +.infobox { + width:100%; +} + +.infoboxsave { + padding-right: 10px; +} + +.infoboxnptd2 { + width:100%; + color:white; + background-color:#990000; + padding-right: 10px; +} + +.infoboxnptd { + width:8%; + background-color:#990000; +} + +.infoboxnptable { + height:32px; + width:100%; + background-color:#990000; +} + +.infoboxnptable2 { + height:32px; + width:100%; + background-color:#990000; +} + +.infoboxnp { + background-color:#990000; + width:100%; +} + +.infoboxnpimg { + vertical-align:middle; + width:28px; + height:32px; + background-color:#990000; +} + +.inputerrorsleft { + background-color: #990000; + width: 36px; +} + +.inputerrorsright { + background-color: #FFD9D1; + color: #000000; + font-size: 11px; + padding-left: 8px; + padding-top: 6px; +} + +div.GraphLink { + position: relative; +} + +span.GraphLinkLine { + position: absolute; + background-color: #990000; + width: 100%; +} + +/* DOM Tooltip CSS definitions */ +div.niceTitle +{ + background-color: #333333; + color: #FFFFFF; + font-weight: bold; + font-size: 13px; + font-family: "Trebuchet MS", sans-serif; + width: 220px; + left: 0; + top: 0; + padding: 4px; + position: absolute; + text-align: left; + z-index: 20; + -moz-border-radius: 0 10px 10px 10px; + filter: progid:DXImageTransform.Microsoft.Alpha(opacity=87); + -moz-opacity: .87; + -khtml-opacity: .87; + opacity: .87; +} +div.niceTitle h1 +{ + background: #990000; + border-bottom: 1px dotted #FFFFFF; + font-weight: bold; + font-size: 13px; + font-family: "Trebuchet MS", sans-serif; + margin: 3px; + padding-top: 1px; + padding-bottom: 1px; + padding-left: 3px; + text-align: left; + left: 0; + top: 0; + -moz-border-radius: 0 8px 0 0; + -moz-opacity: 1; +} +div.niceTitle .contents +{ + margin: 0; + padding: 0 3px; + filter: progid:DXImageTransform.Microsoft.Alpha(opacity=100); + -moz-opacity: 1; + -khtml-opacity: 1; + opacity: 1; +} +div.niceTitle p +{ + background: #FFFFFF; + border: 1px solid #990000; + color: #000000; + font-size: 11px; + font-family: "Trebuchet MS", sans-serif; + padding: 5px; + margin: 3px; + text-align: left; + -moz-opacity: 1; + -moz-border-radius: 0 0 8px 8px; +} + +body { + margin: 0px auto; + align: left; + background: url('images/background.jpg') no-repeat; + background-position : left 0px; + background-attachment: fixed; + background-color: #7f7f7f; +} +a:link { + color: #550000; +} + +a:visited { + color: #550000; +} + +a:active { + color: #550000; +} + +a:hover { + color: #550000; +} + +form { + margin: 0px; +} +a { + text-decoration: none; +} +form input { + font-size: 1.1em; +} + +iframe { + z-index: 1; + border: 1px dashed #990000; +} +.iframe { + background-color: #FFFFFF; +} + +/* style of disabled formelements */ +#wrap div {margin:1em 0} +[disabled] { + color:#666666; + background:#eeeeee; +} + +/* ID Based CSS Definitions */ +/* margin: 0px auto makes the content centered, margin 0px 0px makes it aligned to the left */ +#wrapper { +/*+++ width: 810px;*/ + width: 100%; + margin: 0px 0px; +/* left: 0px; */ +} + +#header { + background: url('images/header.png') no-repeat; + background-position: 0px; + height: 40px; + min-width: 910px; +/*+++ width: 810px;*/ + width: 100%; + position: fixed; + left: 0; + margin-bottom: 5px; + z-index: 1; +} +#header-left { + position: relative; +/* background: url('images/logo.gif') no-repeat;*/ + background-position: center; + height: 40px; + width: 80px; + left: 0px; + top:0px; + float: left; +} +#header-leftright { +/*+++ position: relative;*/ + position: absolute; + background: url('images/header-mid.png') repeat-x; + background-position: center; + height: 40px; + left: 900px; + right:0; + top:0px; + z-index: 2; /*+++*/ +} +#header-left #status-link { + position: relative; + top: 0px; + left: 0px; +} +#header-right { +/*+++ position: relative;*/ + position: absolute; + /* background: url('images/header.gif') no-repeat; */ + height: 70px; + color: #fff; +/*+++ left: 0px;*/ +/* margin-left: 165px; +++*/ +/* left: -300px;*/ + right: 0px; + width: 400px; + z-index: 2;/*+++*/ +} +#header-right .alert { + position: relative; + /* background: url('images/alert.gif') no-repeat; */ + background-position: 4px 2px; + color: #fff; + height: 17px; + width: 500px; + padding: 4px; + padding-left: 27px; + float: left; +} +#header-right .container { +/*+++ position: relative;*/ + postition: absolute; +} +#header-right .container .left { +/*+++ position: relative; */ + position: absolute; + float: left; + font-size: 1.3em; + font-weight: bold; + top: 15px; + left: 4px; + display: none; +} +#header-right .container .right { +/*+++ position: relative;*/ + position: absolute; + float: right; + top: 22px; + padding-right: 4px; + z-index: 1; +} + +/* for forcing an alert run the following command from diagnostics>command, php command: +file_notice("blah", "blah blah...testing my new theme..."); +*/ + +#header-right .container .right #alerts { + position: fixed; + background: url('images/alert_bgr.png') no-repeat; + height: 40px; + width: 400px; + top: 0px; + left: 810px; + z-index: 2; + padding-top: 1px; + padding-left: 10px; + margin: 0px; +} + +#header-right .container .right #hostname { +/*+++ position: fixed;*/ + position: absolute; + background: url('images/hostname.png') no-repeat; + height: 40px; + width: 400px; + z-index: 1; + padding-right: 5px; + margin: 0px; +/*+++ top: 0px;*/ + top: -22px; +/*+++ left: 810px;*/ + left: 0px; /*+++*/ + font-size: 12px; + color: #000000; + font-weight: bold; + padding-left: 40px; + padding-top: 2px; + text-align: left; +} + + + + +table#marquee { + position: relative; + top: -4px; + left: 15px; + border: 0; + padding: 0; + margin: 0; + width: 350px; + background-color: transparent; + padding: 2px; + border: 0px; +} +span#marquee-container { + position: absolute; + visibility: hidden; + top: -100px; + left: -10000px; +} +div#marquee-text { +/* font-size: 1.18em; + font-weight: normal; + font-family: Verdana; + color: #ffffff; */ + font-size: 12px; + font-weight: normal; + font-style: italic; + color: #000000; +} +table#marquee div#container { + position: relative; + overflow: hidden; + width: 330px; + height: 16px; +} +table#marquee div#container div#scroller { + position: absolute; + left: 0px; + top: 0px; +} + + + + + +#content { + position: relative; + top: 0px; +/*+++ left: 75px; */ + left: 10%; + margin-top: 0px; + margin-left: 0px; + padding-top: 50px; +/*+++ padding-left: 20px;*/ + padding-left: 20px; +/*+++ width: 840px; */ + width: 80%; + min-width: 900px; + background-color: #ffffff; +/*+++ background-color: #009900;*/ +/*+++ background: url('images/horizontal.png') repeat-y;*/ +} + + +/* try to abuse left as a fadeout at the end of the page */ +/*+++ #left {*/ +/*+++ width: 810px; */ +/* width: 100%; + height: 1px; +}*/ +#left { + position: absolute; + top: 0; + width: 20px; + height: 100%; + left: -20px; + background: url('images/horiz-left.png') repeat-y; +} +#right { + position: relative; +/*+++ top: -10px;*/ + top: 10px; + left: 0px; +/*+++ width: 770px;*/ + width: 100%; + margin-top: 0px; +/*+++ margin-left: 5px;*/ + margin-right: 5px; + padding-top: 20px; +/*+++ padding-left: 10px;*/ +/*+++ padding-right: 10px;*/ + padding-bottom: 90px; + min-height: 400px; +/*+++ background-color: #000099; */ +} +#right-right { + position: absolute; + top: 0px; + right: -20px; + width: 20px; + height: 100%; + background: url('images/horiz-right.png') repeat-y; +} + +#footer { + position: absolute; +/* margin-bottom: 5px; */ +/*+++ background: url('images/footer.png') no-repeat;*/ +/* top: -100px; */ +/*+++ bottom: 0px;*/ +/*+++ left: 75px;*/ + left: 10%; +/*+++ width: 840px;*/ + width: 80%; + min-width: 900px; + height: 60px; + color: #000000; + text-align: center; + font-size: 0.9em; +/*+++ padding-top: 10px;*/ +/*+++ padding-left: 10px;*/ +/*+++ clear: both;*/ +} +#footer-left { + position: absolute; + left: -20px; + width: 30px; + height: 80px; + background: url('images/footer-left.png') no-repeat; +} +#footer-center { + position: absolute; + left: 10px; + width: 100%; + height: 80px; + background: url('images/footer-middle.png') repeat-x; +} +#footer-right { + position: absolute; + right: -40px; + width: 30px; + height: 80px; + background: url('images/footer-right.png') no-repeat; +} +#footer p { + padding: 0px; + margin: 0px; + +} + +/* Style the List */ +#navigation { + /* background: url('images/menu.gif') no-repeat; */ + /* width: 693px; */ +/* position: relative;*/ + position: fixed; + top: 0px; + left: 100px; + width: 810px; + padding: 0px; + height: 28px; + z-index: 1000; + +} +#navigation ul { + padding: 0; + margin: 0; + list-style: none; + text-align: center; +} +#navigation ul#menu { + padding-top: 3px; + padding-left: 5px; +} + +/* Style the List Elements */ +#navigation ul li { + float: left; + position: relative; + width: 7.0em; + top: 0px; + /* top: -1px; */ +} +/* Text mainmenubar */ +#navigation ul li div { + + background-image: url(images/mainmenu-right.gif); + background-position: 5% 50%; + background-repeat: no-repeat; + padding-top:0px; + font-size: 12px; + font-weight: normal; + color: #ffffff; + text-align: center; + height: 13px; + + + + +/* +background: url("images/mainmenuitem.gif") top left no-repeat; +vertical-align: top; +border: 0px; +width: 100px; +height:20px; +*/ + + +} +/* Make the List inside the List Elements */ +/* initially hidden with absolute position */ +#navigation ul li ul { + display: none; + position: absolute; +/* top: 2em; + left: -2px; */ + width: 120px; + font-weight: normal; +/* background: transparent bottom left no-repeat; /* This is key to making the menu maintain visibility when not on a link */ + /* background-color: #202020; */ + background: url("images/menubgr_footer.png") no-repeat; + background-position: bottom; +/* padding: 0em 0 0.4em 0; */ + padding-top: 5px; + padding-bottom: 10px; +} +/* to override top and left in browsers other than IE */ +/* which will position to the top right of the containing */ +/* li, rather than bottom left */ +#navigation ul li > ul { + top: auto; + left: auto; + left: -1px !important; +} +/* Show initial drop down upon mouse over, but do not show */ +/* nested side drop menus within listed elements */ +#navigation ul li:hover ul { + display: block; + cursor: pointer; +} +#navigation ul li:hover { + cursor: pointer; + cursor: pointer; +} +#navigation ul li:hover div { + text-decoration: none; + background-image: url(images/mainmenu-down.gif); + background-position: 5% 50%; + background-repeat: no-repeat; + +} + +#navigation ul li { + background-color: transparent; + color: #000000; +} +/* dropdownmenu */ +#navigation ul li ul li { + border: 0px solid #850000; + width: 120px; + height: 1.6em; + line-height: 1.6em; +/* background-color: #850000; */ + background: url(images/menubgr.png) repeat-y; + z-index: 2; +/* color: #000000; */ +/* filter:alpha(opacity=95); + -moz-opacity:0.95; + -khtml-opacity: 0.95; + opacity: 0.95; */ +} +#navigation ul li ul li:hover { +/* background-color: #666666; */ + background-image: url(images/menubgr_highlight.png); + background-repeat: repeat-y; +} + +/* textcolor in dropdownmenu */ +#navigation li li a { + display: block; + padding-left: 8px; + padding-right: 8px; + color: #ffffff; + font-size: 11px; + font-weight: normal; + text-align: left; +/* + background-image: url(images/menu-dot.gif); + background-position: 0% 50%; + background-repeat: no-repeat; +*/ +} + +#navigation ul li ul li a.navlnk:hover { + text-decoration: none; +} +#navigation ul li.first { + border-right: 0px; +} +#navigation ul li.middle { + border-right: 0px; +} +#navigation ul li.last { + +} + +#navigation ul li.dropfirst { + border-bottom: 0px; +} +#navigation ul li.dropmiddle { + border-bottom: 0px; +} +#navigation ul li.droplast { +} + +#wzdtabcont { + float: left; + background-color: #FFFFFF; + color: #000000; + padding: 0; +} + +ul#wzdnav { + font-size: 0.96em; + float: left; + width: 14.5em; + margin: 0; + padding-left: 18px; +} + +ul#wzdnav li { + list-style: none; + margin: 0; + padding-bottom: 0.2em; + padding-left: 0; +} + +ul#wzdnav a { + display: block; + padding: 0.3em; + font-weight: normal; +} + +#wzdnavbold a { + display: block; + padding: 0.3em; + font-weight: bold ! important; +} + +ul#wzdnav a:link { + color: black; + background-color: #eee; +} + +ul#wzdnav a:visited { + color: #666; + background-color: #eee; +} + +ul#wzdnav a:hover { + color: black; + background-color: white; +} + +ul#wzdnav a:active { + color: white; + background-color: gray; +} + +#graph { + position: relative; + z-index: 1; +} + +#logoutbtn { + position: absolute; + left: 95%; + vertical-align: middle; +} + +/* Class Based CSS Definitions */ +.pgtitle { + font-size: 18px; + color: #777777; + font-weight: bold; +} +.tfrtitle { + font-size: 18px; + color: #ffffff; + font-weight: bold; +} +.vncell { + background-color: #DDDDDD; + padding-right: 20px; + padding-left: 8px; + border-bottom: 1px solid #999999; +} +.formfld { + padding-left: 19px; + font-size: small; +} +.formselect { + font-size: 1.0em; +} +.langopt { + padding-left: 34px; + padding-top: 2px; + padding-bottom: 2px; +} +.saved { + /* background: url('/themes/nione/images/icons/icon_wzd_saved.png') no-repeat 0 1px #FFFFFF; */ + list-style-image: url('/themes/nervecenter/images/icons/icon_wzd_saved.png') ! important; +} +.notsaved { + /* background: url('/themes/nione/images/icons/icon_wzd_nsaved.png') no-repeat 0 1px #FFFFFF; */ + list-style-image: url('/themes/nervecenter/images/icons/icon_wzd_nsaved.png') ! important; +} +.en { + background: url('/themes/nervecenter/images/icons/icon_flag_en.png') no-repeat 0 1px #FFFFFF; +} +.de { + background: url('/themes/nervecenter/images/icons/icon_flag_de.png') no-repeat 0 1px #FFFFFF; +} +.es { + background: url('/themes/nervecenter/images/icons/icon_flag_es.png') no-repeat 0 1px #FFFFFF; +} +.pt_BR { + background: url('/themes/nervecenter/images/icons/icon_flag_pt_BR.png') no-repeat 0 1px #FFFFFF; +} +.host { + background: url('/themes/nervecenter/images/icons/icon_frmfld_host.png') no-repeat 0 1px #FFFFFF; +} +.search { + background: url('/themes/nervecenter/images/icons/icon_frmfld_search.png') no-repeat 0 1px #FFFFFF; +} +.file { + background: url('/themes/nervecenter/images/icons/icon_frmfld_file.png') no-repeat 0 1px #FFFFFF; +} +.mail { + background: url('/themes/nervecenter/images/icons/icon_frmfld_mail.png') no-repeat 0 1px #FFFFFF; +} +.imp { + background: url('/themes/nervecenter/images/icons/icon_frmfld_imp.png') no-repeat 0 1px #FFFFFF; +} +.pwd { + background: url('/themes/nervecenter/images/icons/icon_frmfld_pwd.png') no-repeat 0 1px #FFFFFF; +} +.user { + background: url('/themes/nervecenter/images/icons/icon_frmfld_user.png') no-repeat 0 1px #FFFFFF ; +} +.group { + background: url('/themes/nervecenter/images/icons/icon_frmfld_group.png') no-repeat 0 1px #FFFFFF; +} +.url { + background: url('/themes/nervecenter/images/icons/icon_frmfld_url.png') no-repeat 0 1px #FFFFFF; +} +.time { + background: url('/themes/nervecenter/images/icons/icon_frmfld_time.png') no-repeat 0 1px #FFFFFF; +} +.unknown { + background: url('/themes/nervecenter/images/icons/icon_frmfld_unknown.png') no-repeat 0 1px #FFFFFF; +} +.formfld_cert { + background: url('/themes/nervecenter/images/icons/icon_frmfld_cert.png') no-repeat 0 1px #FFFFFF; + padding-left: 28px; + font-family: Courier New, Courier, monospaced; + font-size: 11px; +} +.formfldalias { + background-color: #990000; + color: #FFFFFF; +} +.formpre { + font-family: Courier New, Courier, monospaced; + font-size: 10px; +} +.formbtn { + font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif; + font-size: 13px; + font-weight: bold; +} +.formbtns { + font-family: Tahoma, Verdana, Arial, Helvetica, sans-serif; + font-size: 10px; + font-weight: bold; +} +.vvcell { + background-color: #FFFFC6; +} +.errmsg { + font-weight: bold; + color: #CC0000; +} +.red { + color: #CC0000; +} +.gray { + color: #A0A0A0; +} +.vexpl { + font-size: 11px; +} +.navlnk { + color: #FFFFFF; + text-decoration: none; + font-size: 13px; +} +.navlnks { + color: #FFFFFF; + text-decoration: none; + font-size: 11px; +} +.redlnk { + color: #990000; + text-decoration: none; +} +.tblnk { + color: #FFFFFF; + text-decoration: none; +} +.vncellreq { + background-color: #DDDDDD; + padding-right: 20px; + padding-left: 8px; + font-weight: bold; + border-bottom: 1px solid #999999; +} +.vncellt { + background-color: #DDDDDD; + padding-right: 20px; + padding-left: 8px; + padding-top: 4px; + padding-bottom: 4px; + font-weight: bold; + border-bottom: 1px solid #999999; +} +.vtable { + border-bottom: 1px solid #999999; +} +.vnsepcell { + background-color: #BBBBBB; + padding-right: 20px; + padding-left: 8px; + font-weight: bold; + border-bottom: 1px solid #999999; + font-size: 11px; +} +.cpline { + font-size: 11px; + color: #FFFFFF; +} +.hostname { + font-size: 11px; + color: #990000; + font-weight: bold; +} +.vnsepcellr { + background-color: #BBBBBB; + padding-right: 20px; + padding-left: 8px; + font-weight: bold; + border-right: 1px solid #999999; + border-bottom: 1px solid #999999; + font-size: 11px; +} +.listrborder { + background-color: #FFFFFF; + border-right: 1px solid #999999; + border-left: 1px solid #999999; + border-bottom: 1px solid #999999; + font-size: 11px; + padding-right: 6px; + padding-left: 6px; + padding-top: 4px; + padding-bottom: 4px; +} +.listr { + background-color: #FFFFFF; + border-right: 1px solid #999999; + border-bottom: 1px solid #999999; + font-size: 11px; + padding-right: 6px; + padding-left: 6px; + padding-top: 4px; + padding-bottom: 4px; +} +.listrpad { + border-right: 1px solid #999999; + border-bottom: 1px solid #999999; + font-size: 11px; + padding-right: 16px; + padding-left: 10px; + padding-top: 8px; + padding-bottom: 8px; +} +.listn { + font-size: 11px; + padding-right: 16px; + padding-left: 6px; + padding-top: 4px; + padding-bottom: 4px; +} +.listbg { + border-right: 1px solid #999999; + border-bottom: 1px solid #999999; + font-size: 11px; + color: #FFFFFF; + background-color: #990000; + padding-right: 16px; + padding-left: 6px; + padding-top: 4px; + padding-bottom: 4px; +} +.listbggrey { + border-right: 1px solid #999999; + border-bottom: 1px solid #999999; + font-size: 11px; + background-color: #999999; + padding-right: 16px; + padding-left: 6px; + padding-top: 4px; + padding-bottom: 4px; +} +.listhdr { + background-color: #BBBBBB; + padding-right: 16px; + padding-left: 6px; + font-weight: bold; + border-bottom: 1px solid #999999; + font-size: 11px; + padding-top: 5px; + padding-bottom: 5px; +} +.listhdr a { + color: #000000; +} +.listhdrr { + background-color: #BBBBBB; + padding-right: 16px; + padding-left: 6px; + font-weight: bold; + border-right: 1px solid #999999; + border-bottom: 1px solid #999999; + font-size: 11px; + padding-top: 5px; + padding-bottom: 5px; +} +.listhdrr a { + color: #000000; +} +.listlr { + background-color: #FFFFFF; + border-right: 1px solid #999999; + border-bottom: 1px solid #999999; + border-left: 1px solid #999999; + font-size: 11px; + padding-right: 6px; + padding-left: 6px; + padding-top: 4px; + padding-bottom: 4px; +} +.listlrns { + background-color: #FFFFFF; + border-right: 1px solid #999999; + border-bottom: 1px solid #999999; + border-left: 1px solid #999999; + font-size: 11px; + padding-top: 4px; + padding-bottom: 4px; +} +.list { + font-size: 11px; + padding-left: 6px; + padding-top: 2px; + padding-bottom: 2px; +} +.listt { + font-size: 11px; + padding-top: 5px; +} +.listhdrrns { + background-color: #BBBBBB; + padding-left: 6px; + padding-top: 5px; + padding-bottom: 5px; + padding-right: 6px; + font-weight: bold; + border-right: 1px solid #999999; + border-bottom: 1px solid #999999; + font-size: 11px; +} +.listbgns { + border-right: 1px solid #999999; + border-bottom: 1px solid #999999; + font-size: 11px; + background-color: #D9DEE8; + padding-left: 6px; + padding-right: 4px; + padding-top: 4px; + padding-bottom: 4px; +} +.listtopic { + border-right: 1px solid #999999; + font-size: 11px; + background-color: #990000; + padding-right: 16px; + padding-left: 6px; + color: #FFFFFF; + font-weight: bold; + padding-top: 5px; + padding-bottom: 5px; +} + +.optsect_t { + border-right: 1px solid #999999; + background-color: #990000; + padding-right: 6px; + padding-left: 6px; + padding-top: 2px; + padding-bottom: 2px; +} +.optsect_s { + font-size: 11px; + color: #FFFFFF; + font-weight: bold; +} +.tabnavtbl { +} + + +/* MISC CSS Definitions */ +ul#tabnav { + font-size: 11px; + font-weight: bold; + list-style-type: none; + margin: 0; + padding: 0; +} +ul#tabnav li.tabinact1 { + float: left; + background-color: #777777; + color: #FFFFFF; + padding: 0; + white-space: nowrap; +} +ul#tabnav li.tabinact { + float: left; + border-left: 1px solid #999999; + background-color: #777777; + color: #FFFFFF; + padding: 0; + white-space: nowrap; +} +ul#tabnav li.tabinact a { + float: left; + display: block; + text-decoration: none; + padding: 5px 8px 5px 8px; + color: #FFFFFF; +} +ul#tabnav li.tabinact1 a { + float: left; + display: block; + text-decoration: none; + padding: 5px 8px 5px 8px; + color: #FFFFFF; +} +ul#tabnav li.tabact { + float: left; + background-color: #EEEEEE; + color: #000000; + padding: 5px 8px 5px 8px; + white-space: nowrap; +} +.tabcont { + background-color: #DDDDDD; + padding-right: 12px; + padding-left: 12px; + padding-top: 12px; + padding-bottom: 12px; +} +.tabact { + float: left; + background-color: #EEEEEE; + color: #000000; + padding: 5px 8px 5px 8px; + white-space: nowrap; +} +.tabinact { + font-weight: bold; + float: left; + border-left: 1px solid #999999; + background-color: #777777; + color: #FFFFFF; + padding: 0; + white-space: nowrap; +} +.menu { + background-color: #000000; + white-space: nowrap; + padding: 0px 5px 0px 5px; + width: 100%; + vertical-align: top; +} + +/* style of disabled formelements */ +[disabled] { + color:#666666; + background:#eeeeee; +} + + +/* Auto Complete Suggestions */ +div.suggestions { + -moz-box-sizing: border-box; + /* box-sizing: border-box; */ + border: 1px solid black; + position: absolute; + background-color: #990000; + color: #FFF; +} + +div.suggestions div { + cursor: default; + padding: 0px 3px; + background-color: #990000; + color: #FFF; +} + +div.suggestions div.current { + background-color: #3366cc; + color: #FFF; +} +/* End Auto Complete Suggestions */ + + +/* Nifty Corners Crap */ +.rtop,.artop{display:block} +.rtop *,.artop *{display:block;height:1px;overflow:hidden;font-size:1px} +.artop *{border-style: solid;border-width:0 1px} +.r1,.rl1,.re1,.rel1{margin-left:5px} +.r1,.rr1,.re1,.rer1{margin-right:5px} +.r2,.rl2,.re2,.rel2,.ra1,.ral1{margin-left:3px} +.r2,.rr2,.re2,.rer2,.ra1,.rar1{margin-right:3px} +.r3,.rl3,.re3,.rel3,.ra2,.ral2,.rs1,.rsl1,.res1,.resl1{margin-left:2px} +.r3,.rr3,.re3,.rer3,.ra2,.rar2,.rs1,.rsr1,.res1,.resr1{margin-right:2px} +.r4,.rl4,.rs2,.rsl2,.re4,.rel4,.ra3,.ral3,.ras1,.rasl1,.res2,.resl2{margin-left:1px} +.r4,.rr4,.rs2,.rsr2,.re4,.rer4,.ra3,.rar3,.ras1,.rasr1,.res2,.resr2{margin-right:1px} +.rx1,.rxl1{border-left-width:5px} +.rx1,.rxr1{border-right-width:5px} +.rx2,.rxl2{border-left-width:3px} +.rx2,.rxr2{border-right-width:3px} +.re2,.rel2,.ra1,.ral1,.rx3,.rxl3,.rxs1,.rxsl1{border-left-width:2px} +.re2,.rer2,.ra1,.rar1,.rx3,.rxr3,.rxs1,.rxsr1{border-right-width:2px} +.rxl1,.rxl2,.rxl3,.rxl4,.rxsl1,.rxsl2,.ral1,.ral2,.ral3,.ral4,.rasl1,.rasl2{border-right-width:0} +.rxr1,.rxr2,.rxr3,.rxr4,.rxsr1,.rxsr2,.rar1,.rar2,.rar3,.rar4,.rasr1,.rasr2{border-left-width:0} +.r4,.rl4,.rr4,.re4,.rel4,.rer4,.ra4,.rar4,.ral4,.rx4,.rxl4,.rxr4{height:2px} +.rer1,.rel1,.re1,.res1,.resl1,.resr1{border-width:1px 0 0;height:0px !important;height /**/:1px} +/* End Nifty Corners Crap */ + + + +/* CSS for Dynamic Log Viewer */ +/* Author: Erik Kristensen */ +div#log div.log-entry { + clear: both; +} + +div#log div.log-entry span, +div#log div.log-header span { + padding: 3px 2px 3px 2px; + padding-left: 8px; +} + +div#log div.log-entry span.log-action { + padding-bottom: 6px; + padding-left: 5px; + padding-right: 5px; +} + +div#log div.log-header span { + border-top: 1px solid #999; + background-color: #bbb; + font-weight: bold; + text-align: left; +} + +div#log span.log-action, +div#log span.log-time, +div#log span.log-interface, +div#log span.log-source, +div#log span.log-destination, +div#log span.log-protocol { + float: left; + text-align: left; + border-left: 1px solid #999; + border-bottom: 1px solid #999; + +} + +div#log span.log-general { + +} + +div#log span.log-protocol { + border-right: 1px solid #999; +} + +div#log span.log-action { + width: 2em; + text-align: center; +} + +div#log span.log-time { + width: 12.5em; +} + +div#log span.log-interface { + width: 5em; +} + +div#log span.log-source, +div#log span.log-destination { + width: 17.6em; +} + +div#log span.log-protocol { + width: 5.5em; +} +/* END CSS FOR DYNAMIC LOG VIEWER */ + +#login { + background: #cccccc; + border: 0px solid #666666; + margin: 5em auto; + padding: 0em; + width: 340px; +} + +#login h1 { + background: url(images/misc/logon.png) no-repeat top left; + margin-top: 0; + display: block; + text-indent: -1000px; + height: 50px; + border-bottom: none; +} + +#login p { + font-size: 1em; + font-weight: bold; + padding: 3px; + margin: 0em; + text-indent: 10px; +} + +#login span { + font-size: 1em; + font-weight: bold; + width: 20%; + padding: 3px; + margin: 0em; + text-indent: 10px; +} + +#login p#text { + font-size: 1em; + font-weight: normal; + padding: 3px; + margin: 0em; + text-indent: 10px; +} + +#login #username, #password, #password2 { + font-size: small; + width: 60%; + padding-left:19px + padding: 3px; + margin: 0em; +} + +#login #submit { + font-size: 1em; + font-weight: bold; + padding: 3px; + margin: 0em; + text-indent: 10px; +} + +/* Widget CSS */ +.widgetsubheader { + border-right: 1px solid #999999; + font-size: 11px; + background-color: #B1B1B1; + padding-right: 6px; + padding-left: 6px; + color: #000000; + font-weight: bold; + padding-top: 5px; + padding-bottom: 5px; +} +.widgetheader { + border-right: 1px solid #999999; + font-size: 11px; + background-color: #990000; + padding-right: 6px; + padding-left: 6px; + color: #FFFFFF; + font-weight: bold; + padding-top: 5px; + padding-bottom: 5px; +} +.widgetdiv{ + margin-top:5px; + padding: 5px; + background:#CCCCCC; +} +.widgetconfigdiv{ + background:#BBBBBB; + font-size: 11px; + color: #000000; + padding-right: 5px; + padding-left: 5px; + padding-top: 5px; + padding-bottom: 5px; +} + +div#log div.log-entry-mini { + clear: both; +} + +div#log div.log-entry-mini span { + padding: 2px 2px 2px 2px; + padding-left: 8px; +} + +div#log span.log-action-mini-header, +div#log span.log-interface-mini-header, +div#log span.log-source-mini-header, +div#log span.log-destination-mini-header, +div#log span.log-protocol-mini-header { + float: left; + text-align: left; + background-color: #B1B1B1; + font-size: 12px; + border-left: 1px solid #999; + border-bottom: 1px solid #999; +} + +div#log span.log-action-mini, +div#log span.log-time-mini, +div#log span.log-interface-mini, +div#log span.log-source-mini, +div#log span.log-destination-mini, +div#log span.log-protocol-mini { + float: left; + text-align: left; + background-color: #FFFFFF; + font-size: 11px; + border-left: 1px solid #999; + border-bottom: 1px solid #999; +} + +div#log span.log-action-mini, +div#log span.log-action-mini-header { + width: 6%; +} + +div#log span.log-interface-mini, +div#log span.log-interface-mini-header { + width: 8%; +} + +div#log span.log-source-mini, +div#log span.log-destination-mini, +div#log span.log-source-mini-header, +div#log span.log-destination-mini-header { + width: 31%; +} + +div#log span.log-protocol-mini, +div#log span.log-protocol-mini-header { + width: 8%; + border-right: 1px solid #999; +} + +/* Sortable tables */ +table.sortable thead { + cursor: default; + background-color: #EEEEEE; + padding-right: 12px; + padding-left: 12px; + padding-top: 12px; + padding-bottom: 12px; +} diff --git a/config/widescreen/bin/fbegin.inc_ b/config/widescreen/bin/fbegin.inc_ new file mode 100644 index 00000000..a7a96e0f --- /dev/null +++ b/config/widescreen/bin/fbegin.inc_ @@ -0,0 +1,430 @@ +<script src="/javascript/sorttable.js"></script> + +<?php +/* + pfSense_MODULE: header +*/ + +require_once("globals.inc"); +require_once("functions.inc"); + +/* $Id$ */ + + +/* Determine automated help URL. Should output the page name and + parameters separately */ +$uri_split = ""; +preg_match("/\/(.*)\?(.*)/", $_SERVER["REQUEST_URI"], $uri_split); + +/* If there was no match, there were no parameters, just grab the filename + Otherwise, use the matched filename from above. */ +if (empty($uri_split[0])) { + $pagename = ltrim($_SERVER["REQUEST_URI"], '/'); +} else { + $pagename = $uri_split[1]; +} +/* If the page name is still empty, the user must have requested / (index.php) */ +if (empty($pagename)) { + $pagename = "index.php"; +} + +/* If the filename is pkg_edit.php or wizard.php, reparse looking + for the .xml filename */ +if (($pagename == "pkg.php") || ($pagename == "pkg_edit.php") || ($pagename == "wizard.php")) { + $param_split = explode('&', $uri_split[2]); + foreach ($param_split as $param) { + if (substr($param, 0, 4) == "xml=") { + $xmlfile = explode('=', $param); + $pagename = $xmlfile[1]; + } + } +} + +/* Build the full help URL. */ +$helpurl .= "{$g['help_base_url']}?page={$pagename}"; + +function return_ext_menu($section) { + global $config; + $htmltext = ""; + $extarray = array(); + if($config['installedpackages']['menu'] <> "") { + foreach($config['installedpackages']['menu'] as $menuitem) { + if($menuitem['section'] != $section) continue; + if($menuitem['url'] <> "") { + $addresswithport = getenv("HTTP_HOST"); + $colonpos = strpos($addresswithport, ":"); + if ($colonpos !== False){ + //my url is actually just the IP address of the pfsense box + $myurl = substr($addresswithport, 0, $colonpos); + } else { + $myurl = $addresswithport; + } + $description = str_replace('$myurl', $myurl, $menuitem['url']); + } else { + $description = '/pkg.php?xml=' . $menuitem['configfile']; + } + $extarray[] = array($menuitem['name'], $description); + } + } + return $extarray; +} + +function output_menu($arrayitem, $target="") { + foreach($arrayitem as $item) { + if($target) + $targetinfo = "target='{$target}'"; + echo '<li><a ' . $targetinfo. ' href="' . $item[1] . '" class="navlnk">' . $item[0] . '</a></li>' . "\n"; + } +} + +// System +$system_menu = array(); +$system_menu[] = array("Advanced", "/system_advanced_admin.php"); +$system_menu[] = array("Firmware", "/system_firmware.php"); +$system_menu[] = array("General Setup", "/system.php"); +$system_menu[] = array("Logout", "/index.php?logout"); +if ($g['platform'] == "pfSense" or $g['platform'] == "nanobsd") + $system_menu[] = array("Packages", "/pkg_mgr_installed.php"); +$system_menu[] = array("Setup Wizard", "/wizard.php?xml=setup_wizard.xml"); +$system_menu[] = array("Routing", "/system_gateways.php"); +$system_menu[] = array("Cert Manager", "/system_camanager.php"); +$system_menu[] = array("User Manager", "/system_usermanager.php"); +$system_menu = msort(array_merge($system_menu, return_ext_menu("System")),0); + +// Interfaces +$interfaces_menu = array(); +if (!isset($config['system']['webgui']['noassigninterfaces'])) + $interfaces_menu[] = array("(assign)", "/interfaces_assign.php"); +$opts = get_configured_interface_with_descr(false, true); +foreach ($opts as $oif => $odescr) + if (!isset($config['interfaces'][$oif]['ovpn'])) + $interfaces_menu[] = array(htmlspecialchars($odescr), "/interfaces.php?if={$oif}"); +$interfaces_menu = msort(array_merge($interfaces_menu, return_ext_menu("Interfaces")),0); + +// Firewall +$firewall_menu = array(); +$firewall_menu[] = array("Aliases", "/firewall_aliases.php"); +$firewall_menu[] = array("NAT", "/firewall_nat.php"); +$firewall_menu[] = array("Rules", "/firewall_rules.php"); +$firewall_menu[] = array("Schedules", "/firewall_schedule.php"); +$firewall_menu[] = array("Traffic Shaper", "/firewall_shaper.php"); +$firewall_menu[] = array("Virtual IPs", "/firewall_virtual_ip.php"); +$firewall_menu = msort(array_merge($firewall_menu, return_ext_menu("Firewall")),0); + +// Services +$services_menu = array(); +$services_menu[] = array("Captive Portal", "/services_captiveportal.php"); +$services_menu[] = array("DNS Forwarder", "/services_dnsmasq.php"); +$services_menu[] = array("DHCP Relay", "/services_dhcp_relay.php"); +if($g['services_dhcp_server_enable']) + $services_menu[] = array("DHCP Server", "/services_dhcp.php"); +$services_menu[] = array("Dynamic DNS", "/services_dyndns.php"); +$services_menu[] = array("IGMP proxy", "/services_igmpproxy.php"); +$services_menu[] = array("Load Balancer", "/load_balancer_pool.php"); +$services_menu[] = array("OLSR", "/pkg_edit.php?xml=olsrd.xml&id=0"); +$services_menu[] = array("PPPoE Server", "/vpn_pppoe.php"); +$services_menu[] = array("RIP", "/pkg_edit.php?xml=routed.xml&id=0"); +$services_menu[] = array("SNMP", "/services_snmp.php"); +if(count($config['interfaces']) > 1) { + /* no use for UPnP in single-interface deployments + remove to reduce user confusion + */ + $services_menu[] = array("UPnP & NAT-PMP", "/pkg_edit.php?xml=miniupnpd.xml&id=0"); +} +$services_menu[] = array("OpenNTPD", "/pkg_edit.php?xml=openntpd.xml&id=0"); +$services_menu[] = array("Wake on LAN", "/services_wol.php"); +$services_menu = msort(array_merge($services_menu, return_ext_menu("Services")),0); + +// VPN +$vpn_menu = array(); +$vpn_menu[] = array("IPsec", "/vpn_ipsec.php"); +$vpn_menu[] = array("OpenVPN", "/vpn_openvpn_server.php"); +$vpn_menu[] = array("PPTP", "/vpn_pptp.php"); +$vpn_menu[] = array("L2TP", "/vpn_l2tp.php"); +$vpn_menu = msort(array_merge($vpn_menu, return_ext_menu("VPN")),0); + +// Status +$status_menu = array(); +if (isset($config['captiveportal']['enable'])) + $status_menu[] = array("Captive Portal", "/status_captiveportal.php"); +$status_menu[] = array("CARP (failover)", "/carp_status.php"); +$status_menu[] = array("Dashboard", "/index.php"); +$status_menu[] = array("Gateways", "/status_gateways.php"); +$status_menu[] = array("DHCP Leases", "/status_dhcp_leases.php"); +$status_menu[] = array("Filter Reload", "/status_filter_reload.php"); +$status_menu[] = array("Interfaces", "/status_interfaces.php"); +$status_menu[] = array("IPsec", "/diag_ipsec.php"); +$status_menu[] = array("Load Balancer", "/status_lb_pool.php"); +$status_menu[] = array("OpenVPN", "/status_openvpn.php"); +if ($g['platform'] == "pfSense") + $status_menu[] = array("Package Logs", "/diag_pkglogs.php"); +$status_menu[] = array("Queues", "/status_queues.php"); +$status_menu[] = array("RRD Graphs", "/status_rrd_graph.php"); +$status_menu[] = array("Services", "/status_services.php"); +$status_menu[] = array("System Logs", "/diag_logs.php"); +$status_menu[] = array("Traffic Graph", "/status_graph.php?if=wan"); +if(count($config['interfaces']) > 1) + $status_menu[] = array("UPnP & NAT-PMP", "/status_upnp.php"); +$ifentries = get_configured_interface_with_descr(); +foreach ($ifentries as $ent => $entdesc) { + if (is_array($config['interfaces'][$ent]['wireless']) && + preg_match($g['wireless_regex'], $config['interfaces'][$ent]['if'])) + $ifdescrs[$ent] = $entdesc; +} +if (count($ifdescrs) > 0) + $status_menu[] = array("Wireless", "/status_wireless.php"); +$status_menu = msort(array_merge($status_menu, return_ext_menu("Status")),0); + +// Diagnostics +$diagnostics_menu = array(); +$diagnostics_menu[] = array("ARP Tables", "/diag_arp.php"); +$diagnostics_menu[] = array("Authentication", "/diag_authentication.php"); +$diagnostics_menu[] = array("Backup/Restore", "/diag_backup.php"); +$diagnostics_menu[] = array("Command Prompt", "/exec.php"); +$diagnostics_menu[] = array("DNS Lookup", "/diag_dns.php"); +$diagnostics_menu[] = array("Edit File", "/edit.php"); +$diagnostics_menu[] = array("Factory Defaults", "/diag_defaults.php"); +$diagnostics_menu[] = array("Halt System", "/halt.php" ); +$diagnostics_menu[] = array("Limiter Info", "/diag_limiter_info.php"); +$diagnostics_menu[] = array("NDP Table", "/diag_ndp.php"); +$diagnostics_menu[] = array("Ping", "/diag_ping.php"); +$diagnostics_menu[] = array("pfInfo", "/diag_pf_info.php"); +$diagnostics_menu[] = array("pfTOP", "/diag_system_pftop.php"); +$diagnostics_menu[] = array("Reboot", "/reboot.php"); +$diagnostics_menu[] = array("Routes", "/diag_routes.php"); +$diagnostics_menu[] = array("SMART Status", "/diag_smart.php"); +$diagnostics_menu[] = array("States", "/diag_dump_states.php"); +$diagnostics_menu[] = array("States Summary", "/diag_states_summary.php"); +$diagnostics_menu[] = array("System Activity", "/diag_system_activity.php"); +$diagnostics_menu[] = array("Tables", "/diag_tables.php"); +$diagnostics_menu[] = array("Traceroute", "/diag_traceroute.php"); +$diagnostics_menu[] = array("Packet Capture", "/diag_packet_capture.php"); +if($g['platform'] == "nanobsd") + $diagnostics_menu[] = array("NanoBSD", "/diag_nanobsd.php"); + +if (isset($config['system']['developer'])) { + echo "<li><hr width=\"80%\"/></li>"; + $diagnostics_menu[] = array("Restart HTTPD", "/restart_httpd.php"); +} +$diagnostics_menu = msort(array_merge($diagnostics_menu, return_ext_menu("Diagnostics")),0); + +if(! $g['disablehelpmenu']) { + $help_menu = array(); + $help_menu[] = array("About this Page", $helpurl); + $help_menu[] = array("User Forum", "http://www.pfsense.org/j.php?jumpto=forum"); + $help_menu[] = array("Documentation", "http://www.pfsense.org/j.php?jumpto=doc"); + $help_menu[] = array("Developers Wiki", "http://www.pfsense.org/j.php?jumpto=devwiki"); + $help_menu[] = array("Paid Support", "http://www.pfsense.org/j.php?jumpto=portal"); + $help_menu[] = array("pfSense Book", "http://www.pfsense.org/j.php?jumpto=book"); + $help_menu[] = array("Search portal", "http://www.pfsense.org/j.php?jumpto=searchportal"); + $help_menu[] = array("FreeBSD Handbook", "http://www.pfsense.org/j.php?jumpto=fbsdhandbook"); + $help_menu = msort(array_merge($help_menu, return_ext_menu("Help")),0); +} + +/* NOTICE ACKNOWLEDGE CODE by Erik Kristensen */ +if ($_REQUEST['noticeaction'] == 'acknowledge') { + $notice_id = htmlspecialchars($_REQUEST['noticeid']); + close_notice($notice_id); +} +/**********************************************/ + +?> + +<div id="wrapper"> + <div id="header"> + <div id="header-left"><a href="index.php" id="status-link"><img src="/themes/<?= $g['theme']; ?>/images/transparent.gif" border="0"></a></div> + <div id="header-leftright"> + <div id="header-right"> + <div class="container"> + <div class="left">webConfigurator</div> + <div class="right"> + +<? + if (are_notices_pending()) { + $notices = get_notices(); + + $requests=array(); + + ## Get Query Arguments from URL ### + foreach ($_REQUEST as $key => $value) { + if ($key != "PHPSESSID") + $requests[] = $key.'='.$value; + } + if(is_array($requests)) + $request_string = implode("&", $requests); + + if(is_array($notices)) { + foreach ($notices as $key => $value) { + $date = date("m-d-y H:i:s", $key); + $noticemsg = str_replace("'", "", $value['notice']); + $noticemsg = str_replace('"', "", $noticemsg); + $noticemsg = str_replace("\n", "", $noticemsg); + $noticemsg = str_replace("<p>", "", $noticemsg); + $noticemsg = str_replace("<pre>", "", $noticemsg); + $noticemsg = str_replace("</pre>", "", $noticemsg); + $noticemsg = str_replace("</p>", "", $noticemsg); + $noticemsg = str_replace("<br>", "", $noticemsg); + $extra_args = ""; + if($_GET['xml']) + $extraargs="&xml=" . htmlspecialchars($_GET['xml']); + if($_POST['xml']) + $extraargs="&xml=" . htmlspecialchars($_POST['xml']); + if($_GET['id']) + $extraargs="&xml=" . htmlspecialchars($_GET['id']); + if($_POST['id']) + $extraargs="&xml=" . htmlspecialchars($_POST['id']); + $notice_msgs = '<a href="?noticeaction=acknowledge¬iceid=all' . $extraargs . '">Acknowledge All</a> .:. '; + if ($value['url']) { + $notice_msgs .= $date.' - <a href="'.$url.'?' . htmlspecialchars($request_string) . '¬iceaction=acknowledge¬iceid='.$key.'">['.$value['id'].']</a>'; + } else { + $notice_msgs .= $date.' - <a href="?' . htmlspecialchars($request_string) . '¬iceaction=acknowledge¬iceid='.$key.'">['.$value['id'].']'.htmlspecialchars($noticemsg).'</a>'; + } + $notice_msgs .= " .:. "; + } + } +?> + <div id="alerts"> + <script type="text/javascript"> + var content='<div id="marquee-text"><?= $notice_msgs; ?></div>' + </script> + <script type="text/javascript" src="/javascript/ticker.js"></script> + </div> +<? + } else { +?> + <div id="hostname"> + <? print $config['system']['hostname'] . "." . $config['system']['domain']; ?> + </div> +<? + } +?> + </div> + </div> + </div> + </div> + <div id="navigation" style="z-index:1000"> + <ul id="menu"> + <li class="firstdrop"> + <div>System</div> + <ul class="subdrop"> + <?php + output_menu($system_menu); + ?> + </ul> + </li> + <li class="drop"> + <div>Interfaces</div> + <ul class="subdrop"> + <?php + output_menu($interfaces_menu); + ?> + </ul> + </li> + <li class="drop"> + <div>Firewall</div> + <ul class="subdrop"> + <?php + output_menu($firewall_menu); + ?> + </ul> + </li> + <li class="drop"> + <div>Services</div> + <ul class="subdrop"> + <? + output_menu($services_menu); + ?> + </ul> + </li> + <li class="drop"> + <div>VPN</div> + <ul class="subdrop"> + <?php + output_menu($vpn_menu); + ?> + </ul> + </li> + <li class="drop"> + <div>Status</div> + <ul class="subdrop"> + <?php + output_menu($status_menu); + ?> + </ul> + </li> + <li class="drop"> + <div>Diagnostics</div> + <ul id="diag" class="subdrop"> + <? + output_menu($diagnostics_menu); + ?> + </ul> + </li> + <?php if(! $g['disablehelpmenu']): ?> + <li class="lastdrop"> + <div>Help</div> + <ul id="help" class="subdrop"> + <? + output_menu($help_menu, "_new"); + ?> + </ul> + </li> + <?php endif; ?> + </ul> + </div> + </div> <!-- Header DIV --> + <div id="content"> + <div id="left"> + </div> <!-- Left DIV --> + + <div id="right"> + +<?php + + /* display a top alert bar if need be */ + $need_alert_display = false; + $found_notices = are_notices_pending(); + if($found_notices == true) { + $notices = get_notices(); + if(!$notices) { + $need_alert_display = true; + $display_text = print_notices() . "<br>"; + } + } + if($need_alert_display == true) { + echo "<div style=\"background-color:#000000\" id=\"roundalert\">"; + echo "<table>"; + echo "<tr><td><font color=\"#ffffff\">"; + echo " <img align=\"middle\" src=\"/top_notification.gif\"> "; + echo $display_text; + echo "</td>"; + echo "</tr>"; + echo "</table>"; + echo "</div>"; + } + +function add_to_menu($url, $name) { + if (isAllowedPage($url)) + echo "<li><a href=\"{$url}\" class=\"navlnk\">{$name}</a></li>\n"; +} +?> + +<div> +<span class="pgtitle"><a href="<?= $_SERVER['SCRIPT_NAME'] ?>"><?=genhtmltitle($pgtitle);?></a></span> +<span style="float:right; margin: 0 0 20px 20px;"> +<?php if(! empty($statusurl)): ?> +<a href="<?php echo $statusurl; ?>" target="_new" title="Status of items on this page."><img src="/themes/<?php echo $g['theme']; ?>/images/status.png" border="0"></a> +<?php endif; ?> +<?php if(! empty($logurl)): ?> +<a href="<?php echo $logurl; ?>" target="_new" title="Log entries for items on this page."><img src="/themes/<?php echo $g['theme']; ?>/images/log.png" border="0"></a> +<?php endif; ?> +<?php if(! $g['disablehelpicon']): ?> +<a href="<?php echo $helpurl; ?>" target="_new" title="Help for items on this page."><img src="/themes/<?php echo $g['theme']; ?>/images/help.png" border="0"></a> +<?php endif; ?> +</span> +</div> +<br /> + +<?php + $pgtitle_output = true; +?> diff --git a/config/widescreen/bin/fend.inc_ b/config/widescreen/bin/fend.inc_ new file mode 100644 index 00000000..1eb3ada8 --- /dev/null +++ b/config/widescreen/bin/fend.inc_ @@ -0,0 +1,23 @@ +<!-- + pfSense_MODULE: footer +--> + + </div> <!-- Right DIV --> + <div id="right-right"> + </div> + </div> <!-- Content DIV --> + + <div id="footer"> + <div id="footer-left"></div> + <div id="footer-center"> + <a target="_blank" href="<?=$g['product_website_footer']?>" class="redlnk"><?=$g['product_name']?></a> is © + <?=$g['product_copyright_years']?> by <a href="<?=$g['product_copyright_url']?>" class="tblnk"><?=$g['product_copyright']?></a>. All Rights Reserved. + [<a href="/license.php" class="tblnk">view license</a>] + </div> + <div id="footer-right"></div> + </div> <!-- Footer DIV --> + +</div> <!-- Wrapper Div --> + +<?php outputJavaScriptFileInline("/usr/local/www/themes/{$g['theme']}/bottom-loader.js"); ?> + diff --git a/config/widescreen/bin/footer-left.png b/config/widescreen/bin/footer-left.png Binary files differnew file mode 100644 index 00000000..7c068c21 --- /dev/null +++ b/config/widescreen/bin/footer-left.png diff --git a/config/widescreen/bin/footer-middle.png b/config/widescreen/bin/footer-middle.png Binary files differnew file mode 100644 index 00000000..2176e741 --- /dev/null +++ b/config/widescreen/bin/footer-middle.png diff --git a/config/widescreen/bin/footer-right.png b/config/widescreen/bin/footer-right.png Binary files differnew file mode 100644 index 00000000..33169290 --- /dev/null +++ b/config/widescreen/bin/footer-right.png diff --git a/config/widescreen/bin/header-mid.png b/config/widescreen/bin/header-mid.png Binary files differnew file mode 100644 index 00000000..93963c65 --- /dev/null +++ b/config/widescreen/bin/header-mid.png diff --git a/config/widescreen/bin/horiz-left.png b/config/widescreen/bin/horiz-left.png Binary files differnew file mode 100644 index 00000000..8f772a4f --- /dev/null +++ b/config/widescreen/bin/horiz-left.png diff --git a/config/widescreen/bin/horiz-right.png b/config/widescreen/bin/horiz-right.png Binary files differnew file mode 100644 index 00000000..edacbc23 --- /dev/null +++ b/config/widescreen/bin/horiz-right.png diff --git a/config/widescreen/bin/index.php_ b/config/widescreen/bin/index.php_ new file mode 100644 index 00000000..a6ad1019 --- /dev/null +++ b/config/widescreen/bin/index.php_ @@ -0,0 +1,775 @@ +<?php +/* $Id$ */ +/* + index.php + Copyright (C) 2004, 2005 Scott Ullrich + All rights reserved. + + Originally part of m0n0wall (http://m0n0.ch/wall) + Copyright (C) 2003-2004 Manuel Kasper <mk@neon1.net>. + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, + oR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. +*/ +/* + pfSense_BUILDER_BINARIES: /sbin/ifconfig + pfSense_MODULE: interfaces +*/ + +##|+PRIV +##|*IDENT=page-system-login/logout +##|*NAME=System: Login / Logout page / Dashboard +##|*DESCR=Allow access to the 'System: Login / Logout' page and Dashboard. +##|*MATCH=index.php* +##|-PRIV + +// Turn on buffering to speed up rendering +ini_set('output_buffering','true'); + +// Start buffering with a cache size of 100000 +ob_start(null, "1000"); + +## Load Essential Includes +require_once('functions.inc'); +require_once('guiconfig.inc'); +require_once('notices.inc'); + +##build list of widgets +$directory = "/usr/local/www/widgets/widgets/"; +$dirhandle = opendir($directory); +$filename = ""; +$widgetnames = array(); +$widgetfiles = array(); +$widgetlist = array(); + +while (false !== ($filename = readdir($dirhandle))) { + $periodpos = strpos($filename, "."); + $widgetname = substr($filename, 0, $periodpos); + $widgetnames[] = $widgetname; + if ($widgetname != "system_information") + $widgetfiles[] = $filename; +} + +##sort widgets alphabetically +sort($widgetfiles); + +##insert the system information widget as first, so as to be displayed first +array_unshift($widgetfiles, "system_information.widget.php"); + +##if no config entry found, initialize config entry +if (!is_array($config['widgets'])) { + $config['widgets'] = array(); +} + + if ($_POST && $_POST['submit']) { + $config['widgets']['sequence'] = $_POST['sequence']; + + foreach ($widgetnames as $widget){ + if ($_POST[$widget . '-config']){ + $config['widgets'][$widget . '-config'] = $_POST[$widget . '-config']; + } + } + + write_config(gettext("Widget configuration has been changed.")); + header("Location: index.php"); + exit; + } + + ## Load Functions Files + require_once('includes/functions.inc.php'); + + ## Check to see if we have a swap space, + ## if true, display, if false, hide it ... + if(file_exists("/usr/sbin/swapinfo")) { + $swapinfo = `/usr/sbin/swapinfo`; + if(stristr($swapinfo,'%') == true) $showswap=true; + } + + ## User recently restored his config. + ## If packages are installed lets resync + if(file_exists('/conf/needs_package_sync')) { + if($config['installedpackages'] <> '') { + conf_mount_rw(); + @unlink('/conf/needs_package_sync'); + conf_mount_ro(); + if($g['platform'] == "pfSense" || $g['platform'] == "nanobsd") { + header('Location: pkg_mgr_install.php?mode=reinstallall'); + exit; + } + } + } + + ## If it is the first time webConfigurator has been + ## accessed since initial install show this stuff. + if(file_exists('/conf/trigger_initial_wizard')) { + echo <<<EOF +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html> +<head> + <title>{$g['product_name']}.localdomain - {$g['product_name']} first time setup</title> + <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> + <link rel="stylesheet" type="text/css" href="/niftycssprintCode.css" media="print" /> + <script type="text/javascript">var theme = "nervecenter"</script> + <script type="text/javascript" src="/themes/nervecenter/loader.js"></script> + +EOF; + + echo "<body link=\"#0000CC\" vlink=\"#0000CC\" alink=\"#0000CC\">\n"; + + if(file_exists("/usr/local/www/themes/{$g['theme']}/wizard.css")) + echo "<link rel=\"stylesheet\" href=\"/themes/{$g['theme']}/wizard.css\" media=\"all\" />\n"; + else + echo "<link rel=\"stylesheet\" href=\"/themes/{$g['theme']}/all.css\" media=\"all\" />"; + + echo "<form>\n"; + echo "<center>\n"; + echo "<img src=\"/themes/{$g['theme']}/images/logo.gif\" border=\"0\"><p>\n"; + echo "<div \" style=\"width:700px;background-color:#ffffff\" id=\"nifty\">\n"; + echo sprintf(gettext("Welcome to %s!\n"),$g['product_name']) . "<p>"; + echo gettext("One moment while we start the initial setup wizard.") . "<p>\n"; + echo gettext("Embedded platform users: Please be patient, the wizard takes a little longer to run than the normal GUI.") . "<p>\n"; + echo sprintf(gettext("To bypass the wizard, click on the %s logo on the initial page."),$g['product_name']) . "\n"; + echo "</div>\n"; + echo "<meta http-equiv=\"refresh\" content=\"1;url=wizard.php?xml=setup_wizard.xml\">\n"; + echo "<script type=\"text/javascript\">\n"; + echo "NiftyCheck();\n"; + echo "Rounded(\"div#nifty\",\"all\",\"#AAA\",\"#FFFFFF\",\"smooth\");\n"; + echo "</script>\n"; + exit; + } + + + ## Find out whether there's hardware encryption or not + unset($hwcrypto); + $fd = @fopen("{$g['varlog_path']}/dmesg.boot", "r"); + if ($fd) { + while (!feof($fd)) { + $dmesgl = fgets($fd); + if (preg_match("/^hifn.: (.*?),/", $dmesgl, $matches) or preg_match("/.*(VIA Padlock)/", $dmesgl, $matches) or preg_match("/^safe.: (\w.*)/", $dmesgl, $matches) or preg_match("/^ubsec.: (.*?),/", $dmesgl, $matches) or preg_match("/^padlock.: <(.*?)>,/", $dmesgl, $matches) or preg_match("/^glxsb.: (.*?),/", $dmesgl, $matches)) { + $hwcrypto = $matches[1]; + break; + } + } + fclose($fd); + } + +##build widget saved list information +if ($config['widgets'] && $config['widgets']['sequence'] != "") { + $pconfig['sequence'] = $config['widgets']['sequence']; + $widgetlist = $pconfig['sequence']; + $colpos = array(); + $savedwidgetfiles = array(); + $widgetname = ""; + $widgetlist = explode(",",$widgetlist); + + ##read the widget position and display information + foreach ($widgetlist as $widget){ + $dashpos = strpos($widget, "-"); + $widgetname = substr($widget, 0, $dashpos); + $colposition = strpos($widget, ":"); + $displayposition = strrpos($widget, ":"); + $colpos[] = substr($widget,$colposition+1, $displayposition - $colposition-1); + $displayarray[] = substr($widget,$displayposition+1); + $savedwidgetfiles[] = $widgetname . ".widget.php"; + } + + ##add widgets that may not be in the saved configuration, in case they are to be displayed later + foreach ($widgetfiles as $defaultwidgets){ + if (!in_array($defaultwidgets, $savedwidgetfiles)){ + $savedwidgetfiles[] = $defaultwidgets; + } + } + + ##find custom configurations of a particular widget and load its info to $pconfig + foreach ($widgetnames as $widget){ + if ($config['widgets'][$widget . '-config']){ + $pconfig[$widget . '-config'] = $config['widgets'][$widget . '-config']; + } + } + + $widgetlist = $savedwidgetfiles; +} else{ + // no saved widget sequence found, build default list. + $widgetlist = $widgetfiles; +} + +##build list of php include files +$phpincludefiles = array(); +$directory = "/usr/local/www/widgets/include/"; +$dirhandle = opendir($directory); +$filename = ""; +while (false !== ($filename = readdir($dirhandle))) { + $phpincludefiles[] = $filename; +} +foreach($phpincludefiles as $includename) { + if(!stristr($includename, ".inc")) + continue; + include($directory . $includename); +} + +##begin AJAX +$jscriptstr = <<<EOD +<script language="javascript" type="text/javascript"> + + +function widgetAjax(widget) { + uri = "widgets/widgets/" + widget + ".widget.php"; + var opt = { + // Use GET + method: 'get', + evalScripts: 'true', + asynchronous: true, + // Handle 404 + on404: function(t) { + alert('Error 404: location "' + t.statusText + '" was not found.'); + }, + // Handle other errors + onFailure: function(t) { + alert('Error ' + t.status + ' -- ' + t.statusText); + }, + onSuccess: function(t) { + widget2 = widget + "-loader"; + Effect.Fade(widget2, {queue:'front'}); + Effect.Appear(widget, {queue:'end'}); + } + } + new Ajax.Updater(widget, uri, opt); +} + + +function addWidget(selectedDiv){ + selectedDiv2 = selectedDiv + "-container"; + d = document; + textlink = d.getElementById(selectedDiv2); + Effect.Appear(selectedDiv2, {duration:1}); + if (textlink.style.display != "none") + { + Effect.Shake(selectedDiv2); + } + else + { + widgetAjax(selectedDiv); + selectIntLink = selectedDiv2 + "-input"; + textlink = d.getElementById(selectIntLink); + textlink.value = "show"; + showSave(); + } +} + +function configureWidget(selectedDiv){ + selectIntLink = selectedDiv + "-settings"; + d = document; + textlink = d.getElementById(selectIntLink); + if (textlink.style.display == "none") + Effect.BlindDown(selectIntLink, {duration:1}); + else + Effect.BlindUp(selectIntLink, {duration:1}); +} + +function showWidget(selectedDiv,swapButtons){ + //appear element + Effect.BlindDown(selectedDiv, {duration:1}); + showSave(); + d = document; + if (swapButtons){ + selectIntLink = selectedDiv + "-min"; + textlink = d.getElementById(selectIntLink); + textlink.style.display = "inline"; + + + selectIntLink = selectedDiv + "-open"; + textlink = d.getElementById(selectIntLink); + textlink.style.display = "none"; + + } + selectIntLink = selectedDiv + "-container-input"; + textlink = d.getElementById(selectIntLink); + textlink.value = "show"; + +} + +function minimizeWidget(selectedDiv,swapButtons){ + //fade element + Effect.BlindUp(selectedDiv, {duration:1}); + showSave(); + d = document; + if (swapButtons){ + selectIntLink = selectedDiv + "-open"; + textlink = d.getElementById(selectIntLink); + textlink.style.display = "inline"; + + selectIntLink = selectedDiv + "-min"; + textlink = d.getElementById(selectIntLink); + textlink.style.display = "none"; + } + selectIntLink = selectedDiv + "-container-input"; + textlink = d.getElementById(selectIntLink); + textlink.value = "hide"; + +} + +function closeWidget(selectedDiv){ + showSave(); + selectedDiv = selectedDiv + "-container"; + Effect.Fade(selectedDiv, {duration:1}); + d = document; + selectIntLink = selectedDiv + "-input"; + textlink = d.getElementById(selectIntLink); + textlink.value = "close"; +} + +function showSave(){ + d = document; + selectIntLink = "submit"; + textlink = d.getElementById(selectIntLink); + textlink.style.display = "inline"; +} + +function updatePref(){ + var widgets = document.getElementsByClassName('widgetdiv'); + var widgetSequence = ""; + var firstprint = false; + d = document; + for (i=0; i<widgets.length; i++){ + if (firstprint) + widgetSequence += ","; + var widget = widgets[i].id; + widgetSequence += widget + ":" + widgets[i].parentNode.id + ":"; + widget = widget + "-input"; + textlink = d.getElementById(widget).value; + widgetSequence += textlink; + firstprint = true; + } + selectLink = "sequence"; + textlink = d.getElementById(selectLink); + textlink.value = widgetSequence; + return true; +} + +function hideAllWidgets(){ + Effect.Fade('niftyOutter', {to: 0.2}); +} + +function showAllWidgets(){ + Effect.Fade('niftyOutter', {to: 1.0}); +} + + +function changeTabDIV(selectedDiv){ + var dashpos = selectedDiv.indexOf("-"); + var tabclass = selectedDiv.substring(0,dashpos); + d = document; + + //get deactive tabs first + tabclass = tabclass + "-class-tabdeactive"; + var tabs = document.getElementsByClassName(tabclass); + var incTabSelected = selectedDiv + "-deactive"; + for (i=0; i<tabs.length; i++){ + var tab = tabs[i].id; + dashpos = tab.lastIndexOf("-"); + var tab2 = tab.substring(0,dashpos) + "-deactive"; + if (tab2 == incTabSelected){ + tablink = d.getElementById(tab2); + tablink.style.display = "none"; + tab2 = tab.substring(0,dashpos) + "-active"; + tablink = d.getElementById(tab2); + tablink.style.display = "table-cell"; + + //now show main div associated with link clicked + tabmain = d.getElementById(selectedDiv); + tabmain.style.display = "block"; + } + else + { + tab2 = tab.substring(0,dashpos) + "-deactive"; + tablink = d.getElementById(tab2); + tablink.style.display = "table-cell"; + tab2 = tab.substring(0,dashpos) + "-active"; + tablink = d.getElementById(tab2); + tablink.style.display = "none"; + + //hide sections we don't want to see + tab2 = tab.substring(0,dashpos); + tabmain = d.getElementById(tab2); + tabmain.style.display = "none"; + + } + } +} + +</script> +EOD; +$closehead = false; + +## Set Page Title and Include Header +$pgtitle = array(sprintf(gettext("%s Dashboard"), $g['product_name'])); +include("head.inc"); + +echo "\t<script type=\"text/javascript\" src=\"javascript/domTT/domLib.js\"></script>\n"; +echo "\t<script type=\"text/javascript\" src=\"javascript/domTT/domTT.js\"></script>\n"; +echo "\t<script type=\"text/javascript\" src=\"javascript/domTT/behaviour.js\"></script>\n"; +echo "\t<script type=\"text/javascript\" src=\"javascript/domTT/fadomatic.js\"></script>\n"; + +?> + +<body link="#0000CC" vlink="#0000CC" alink="#0000CC"> +<form action="index.php" method="post"> +<script language="javascript" type="text/javascript"> +// <![CDATA[ + columns = ['col1','col2','col3','col4','col5','col6']; +// ]]> + var currwidth; + currwidth = document.documentElement.clientWidth; + window.onresize = function (){ + if (currwidth != document.documentElement.clientWidth){ + // let's refresh window if width was changed + window.location.href=window.location.href; + }; + currwidth = document.documentElement.clientWidth; + } +</script> + +<?php +include("fbegin.inc"); +echo $jscriptstr; + if(!file_exists("/usr/local/www/themes/{$g['theme']}/no_big_logo")) + echo "<center><img src=\"./themes/".$g['theme']."/images/logobig.jpg\"></center><br>"; +?> +<div id="widgetcontainer" style="display:none"> + <div id="content1"><h1><?=gettext("Available Widgets"); ?></h1><p><?php + $widgetfiles_add = $widgetfiles; + sort($widgetfiles_add); + foreach($widgetfiles_add as $widget) { + if(!stristr($widget, "widget.php")) + continue; + + $periodpos = strpos($widget, "."); + $widgetname = substr($widget, 0, $periodpos); + $nicename = $widgetname; + $nicename = str_replace("_", " ", $nicename); + //make the title look nice + $nicename = ucwords($nicename); + + $widgettitle = $widgetname . "_title"; + $widgettitlelink = $widgetname . "_title_link"; + if ($$widgettitle != "") + { + //echo widget title + ?> + <span style="cursor: pointer;" onclick='return addWidget("<?php echo $widgetname; ?>")'> + <u><?php echo $$widgettitle; ?></u></span><br> + <?php + } + else {?> + <span style="cursor: pointer;" onclick='return addWidget("<?php echo $widgetname; ?>")'> + <u><?php echo $nicename; ?></u></span><br><?php + } + } + ?> + </p> + </div> +</div> + +<div id="welcomecontainer" style="display:none"> + <div id="welcome-container"> + <h1> + <div style="float:left;width:80%;padding: 2px"> + <?=gettext("Welcome to the Dashboard page"); ?>! + </div> + <div onclick="domTT_close(this);showAllWidgets();" style="float:right;width:8%; cursor:pointer;padding: 5px;" > + <img src="./themes/<?= $g['theme']; ?>/images/icons/icon_close.gif" /> + </div> + <div style="clear:both;"></div> + </h1> + <p> + <?=gettext("This page allows you to customize the information you want to be displayed!");?><br/> + <?=gettext("To get started click the");?> <img src="./themes/<?= $g['theme']; ?>/images/icons/icon_plus.gif"> <?=gettext("icon to add widgets.");?><br/> + <br/> + <?=gettext("You can move any widget around by clicking and dragging the title.");?> + </p> + </div> +</div> + +<input type="hidden" value="" name="sequence" id="sequence"> +<img src="./themes/<?= $g['theme']; ?>/images/icons/icon_plus.gif" alt="<?=gettext("Click here to add widgets"); ?>" style="cursor: pointer;" onmouseup="domTT_activate(this, event, 'content', document.getElementById('content1'), 'type', 'velcro', 'delay', 0, 'fade', 'both', 'fadeMax', 100, 'styleClass', 'niceTitle');" /> + +<img src="./themes/<?= $g['theme']; ?>/images/icons/icon_info_pkg.gif" alt="<?=gettext("Click here for help"); ?>" style="cursor: help;" onmouseup="hideAllWidgets();domTT_activate(this, event, 'content', document.getElementById('welcome-container'), 'type', 'sticky', 'closeLink', '','delay', 0, 'fade', 'both', 'fadeMax', 100, 'styleClass', 'niceTitle');" /> + + + + <input id="submit" name="submit" type="submit" style="display:none" onclick="return updatePref();" class="formbtn" value="<?=gettext("Save Settings");?>" /> +</p> + +<div id="niftyOutter"> + <?php + $widgetcounter = 0; + $directory = "/usr/local/www/widgets/widgets/"; + $firstprint = false; + ?> +<script language="javascript" type="text/javascript"> +var printed2 = false; +var printed3 = false; +var printed4 = false; +var printed5 = false; +var printed6 = false; +var numofcols = parseInt(currwidth/400); // one column is minimum 350px +if (numofcols < 2) numofcols = 2; +var colpercent; // column width in percents +if (numofcols <= 2) colpercent = parseInt(100/numofcols-2); +else colpercent = parseInt(100/numofcols-1); + +function PrintDiv(colpos){ + if (colpos == "col2" && printed2 == false){ + document.write("</div><div id=\"col2\" style=\"float:left;width:"+colpercent+"%;padding-bottom:40px;padding-left:10px;\">"); + printed2=true; + }else if (colpos == "col3" && numofcols >= 3 && printed3 == false){ + document.write("</div><div id=\"col3\" style=\"float:left;width:"+colpercent+"%;padding-bottom:40px;padding-left:10px;\">"); + printed3=true; + }else if (colpos == "col4" && numofcols >= 4 && printed4 == false){ + document.write("</div><div id=\"col4\" style=\"float:left;width:"+colpercent+"%;padding-bottom:40px;padding-left:10px;\">"); + printed4=true; + }else if (colpos == "col5" && numofcols >= 5 && printed5 == false){ + document.write("</div><div id=\"col5\" style=\"float:left;width:"+colpercent+"%;padding-bottom:40px;padding-left:10px;\">"); + printed5=true; + }else if (colpos == "col6" && numofcols >= 6 && printed6 == false){ + document.write("</div><div id=\"col6\" style=\"float:left;width:"+colpercent+"%;padding-bottom:40px;padding-left:10px;\">"); + printed6=true; + } +} +document.write("<div id=\"col1\" style=\"float:left;width:"+colpercent+"%;padding-bottom:40px;padding-left:10px;\">"); +</script> + <?php + + foreach($widgetlist as $widget) { + + if(!stristr($widget, "widget.php")) + continue; + $periodpos = strpos($widget, "."); + $widgetname = substr($widget, 0, $periodpos); + if ($widgetname != ""){ + $nicename = $widgetname; + $nicename = str_replace("_", " ", $nicename); + + //make the title look nice + $nicename = ucwords($nicename); + } + + if ($config['widgets'] && $pconfig['sequence'] != ""){ + switch($displayarray[$widgetcounter]){ + case "show": + $divdisplay = "block"; + $display = "block"; + $inputdisplay = "show"; + $showWidget = "none"; + $mindiv = "inline"; + break; + case "hide": + $divdisplay = "block"; + $display = "none"; + $inputdisplay = "hide"; + $showWidget = "inline"; + $mindiv = "none"; + break; + case "close": + $divdisplay = "none"; + $display = "block"; + $inputdisplay = "close"; + $showWidget = "none"; + $mindiv = "inline"; + break; + default: + $divdisplay = "none"; + $display = "block"; + $inputdisplay = "none"; + $showWidget = "none"; + $mindiv = "inline"; + break; + } + } else { + if ($firstprint == false){ + $divdisplay = "block"; + $display = "block"; + $inputdisplay = "show"; + $showWidget = "none"; + $mindiv = "inline"; + $firstprint = true; + } else { + switch ($widget) { + case "interfaces.widget.php": + case "traffic_graphs.widget.php": + $divdisplay = "block"; + $display = "block"; + $inputdisplay = "show"; + $showWidget = "none"; + $mindiv = "inline"; + break; + default: + $divdisplay = "none"; + $display = "block"; + $inputdisplay = "close"; + $showWidget = "none"; + $mindiv = "inline"; + break; + } + } + } + + if ($config['widgets'] && $pconfig['sequence'] != ""){ +?> + <script language="javascript" type="text/javascript"> + colpos="<?=$colpos[$widgetcounter]?>"; + PrintDiv(colpos); + </script> + +<?php + } +?> + <div style="clear:both;"></div> + <div id="<?php echo $widgetname;?>-container" class="widgetdiv" style="display:<?php echo $divdisplay; ?>;"> + <input type="hidden" value="<?php echo $inputdisplay;?>" id="<?php echo $widgetname;?>-container-input" name="<?php echo $widgetname;?>-container-input"> + <div id="<?php echo $widgetname;?>-topic" class="widgetheader" style="cursor:move"> + <div style="float:left;"> + <?php + + $widgettitle = $widgetname . "_title"; + $widgettitlelink = $widgetname . "_title_link"; + if ($$widgettitle != "") + { + //only show link if defined + if ($$widgettitlelink != "") {?> + <u><span onClick="location.href='/<?php echo $$widgettitlelink;?>'" style="cursor:pointer"> + <?php } + //echo widget title + echo $$widgettitle; + if ($$widgettitlelink != "") { ?> + </span></u> + <?php } + } + else{ + if ($$widgettitlelink != "") {?> + <u><span onClick="location.href='/<?php echo $$widgettitlelink;?>'" style="cursor:pointer"> + <?php } + echo $nicename; + if ($$widgettitlelink != "") { ?> + </span></u> + <?php } + } + ?> + </div> + <div align="right" style="float:right;"> + <div id="<?php echo $widgetname;?>-configure" onclick='return configureWidget("<?php echo $widgetname;?>")' style="display:none; cursor:pointer" ><img src="./themes/<?= $g['theme']; ?>/images/icons/icon_configure.gif" /></div> + <div id="<?php echo $widgetname;?>-open" onclick='return showWidget("<?php echo $widgetname;?>",true)' style="display:<?php echo $showWidget;?>; cursor:pointer" ><img src="./themes/<?= $g['theme']; ?>/images/icons/icon_open.gif" /></div> + <div id="<?php echo $widgetname;?>-min" onclick='return minimizeWidget("<?php echo $widgetname;?>",true)' style="display:<?php echo $mindiv;?>; cursor:pointer" ><img src="./themes/<?= $g['theme']; ?>/images/icons/icon_minus.gif"/></div> + <div id="<?php echo $widgetname;?>-close" onclick='return closeWidget("<?php echo $widgetname;?>",true)' style="display:inline; cursor:pointer" ><img src="./themes/<?= $g['theme']; ?>/images/icons/icon_close.gif" /></div> + </div> + <div style="clear:both;"></div> + </div> + <?php if ($divdisplay != "block") { ?> + <div id="<?php echo $widgetname;?>-loader" style="display:<?php echo $display; ?>;"> + <br> + <center> + <img src="./themes/<?= $g['theme']; ?>/images/misc/widget_loader.gif" width=25 height=25 alt="<?=gettext("Loading selected widget"); ?>..."> + </center> + <br> + </div> <?php } if ($divdisplay != "block") $display = none; ?> + <div id="<?php echo $widgetname;?>" style="display:<?php echo $display; ?>;"> + <?php + if ($divdisplay == "block") + { + include($directory . $widget); + } + ?> + </div> + <div style="clear:both;"></div> + </div> +<?php + $widgetcounter++; + + }//end foreach +?> + <script type="text/javascript"> + // If some columns still do not have widgets let's print them anyway so a user can move wigets to them + if (printed2 == false){ + document.write("</div><div id=\"col2\" style=\"float:left;width:"+colpercent+"%;padding-bottom:40px\">"); + } + if (numofcols >= 3 && printed3 == false){ + document.write("</div><div id=\"col3\" style=\"float:left;width:"+colpercent+"%;padding-bottom:40px\">"); + } + if (numofcols >= 4 && printed4 == false){ + document.write("</div><div id=\"col4\" style=\"float:left;width:"+colpercent+"%;padding-bottom:40px\">"); + } + if (numofcols >= 5 && printed5 == false){ + document.write("</div><div id=\"col5\" style=\"float:left;width:"+colpercent+"%;padding-bottom:40px\">"); + } + if (numofcols >= 6 && printed6 == false){ + document.write("</div><div id=\"col6\" style=\"float:left;width:"+colpercent+"%;padding-bottom:40px\">"); + } + </script> + </div> + <div style="clear:both;"></div> +</div> + +<!-- +<script type="text/javascript"> + document.write("+++test+++<br>"); + document.write("currwidth="+currwidth+"<br>"); + document.write("numofcols="+numofcols+"<br>"); + document.write("colpercent="+colpercent+"<br>"); +</script> +--> +<?php include("fend.inc"); ?> + +<script type="text/javascript"> + document.observe('dom:loaded', function(in_event) + { + Sortable.create("col1", {tag:'div',dropOnEmpty:true,containment:columns,handle:'widgetheader',constraint:false,only:'widgetdiv',onChange:showSave}); + Sortable.create("col2", {tag:'div',dropOnEmpty:true,containment:columns,handle:'widgetheader',constraint:false,only:'widgetdiv',onChange:showSave}); + Sortable.create("col3", {tag:'div',dropOnEmpty:true,containment:columns,handle:'widgetheader',constraint:false,only:'widgetdiv',onChange:showSave}); + Sortable.create("col4", {tag:'div',dropOnEmpty:true,containment:columns,handle:'widgetheader',constraint:false,only:'widgetdiv',onChange:showSave}); + Sortable.create("col5", {tag:'div',dropOnEmpty:true,containment:columns,handle:'widgetheader',constraint:false,only:'widgetdiv',onChange:showSave}); + Sortable.create("col6", {tag:'div',dropOnEmpty:true,containment:columns,handle:'widgetheader',constraint:false,only:'widgetdiv',onChange:showSave}); + <?php if (!$config['widgets'] && $pconfig['sequence'] != ""){ ?> + hideAllWidgets(); + domTT_activate('welcome1', null, 'x', 287, 'y', 107, 'content', document.getElementById('welcome-container'), 'type', 'sticky', 'closeLink', '','delay', 1000, 'fade', 'both', 'fadeMax', 100, 'styleClass', 'niceTitle'); + <?php } ?> + }); +</script> + +<?php + //build list of javascript include files + $jsincludefiles = array(); + $directory = "widgets/javascript/"; + $dirhandle = opendir($directory); + $filename = ""; + while (false !== ($filename = readdir($dirhandle))) { + $jsincludefiles[] = $filename; + } + foreach($jsincludefiles as $jsincludename) { + if(!stristr($jsincludename, ".js")) + continue; + echo "<script src='{$directory}{$jsincludename}' type='text/javascript'></script>\n"; + } +?> +</form> +</body> +</html> |