From 2e2b4e59db3d57b7d742189749dc3e12d71c38dc Mon Sep 17 00:00:00 2001 From: bp-sawyers Date: Fri, 2 Nov 2007 19:42:07 +0000 Subject: [PATCH] Clean up of the main table git-svn-id: https://svn.code.sf.net/p/xcat/code/xcat-core/trunk@34 8638fb3e-16cb-4fca-ae20-7b5d299a9bcd --- xCAT-web/functions.php | 28 ++-- xCAT-web/images/Thumbs.db | Bin 135168 -> 144896 bytes xCAT-web/images/xCAT_icon.gif | Bin 3550 -> 3692 bytes xCAT-web/index.css | 1 + xCAT-web/index.php | 34 ++--- xCAT-web/lib/GroupNodeTable.class.php | 135 ++++++++++++++++++ xCAT-web/lib/XCAT/HTML/HTMLProducer.class.php | 1 + xCAT-web/menu.css | 24 ++-- xCAT-web/nodes_by_group.php | 4 +- xCAT-web/style.css | 76 ++++++---- 10 files changed, 226 insertions(+), 77 deletions(-) create mode 100644 xCAT-web/index.css create mode 100644 xCAT-web/lib/GroupNodeTable.class.php diff --git a/xCAT-web/functions.php b/xCAT-web/functions.php index 93c950f57..4bfe31028 100644 --- a/xCAT-web/functions.php +++ b/xCAT-web/functions.php @@ -64,15 +64,17 @@ if ($javascripts) { ?> + '; +echo '
'; //Console section insertInner('open', 1,'Console', 'constab', $currentLink, array( @@ -198,14 +200,14 @@ $plusgif = "$TOPDIR/images/plus-sign.gif"; $hoverTxt = $exTxt; $style = "display:none"; } -?> - - + + + +EOS; + return; +} + +function insertGroupTableFooter() { + echo "
> -

- id=>

- width="100%" cellpadding="0" cellspacing="0" border=0 style=> - + -\n"; + +} //end insertInner /** ---------------------------------------------------------------------------------------------- diff --git a/xCAT-web/images/Thumbs.db b/xCAT-web/images/Thumbs.db index d04552cae0ef82560a70aaa18838b92e6b1afe42..97ae00819a1246fcd88440f9ab1460fa139586b7 100644 GIT binary patch delta 9124 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 delta 4014 zcmds(eQ;FO6~OPk`}Sowd7Es=ZpdbL^RZblUyvniDj*p_D~0l+ZNF=sO8g;%T?nDn zAq?M0#Z@cR=2))!`e?nH5CrwA@P>M7bdhGbZ^}`_o;}*Qua20)HvdIaP-lv|JR<0R z3Lh1_;C}nw^>v{Lr2!WKWog)Di8yBO8f2Q85NfQ1wdXT1fz9 z->eB@_UtiP@mxP%nZLva!mrL#S^@0g;m zcu2)+B|T6Gs+&+ZS_rKd{ScN$C=QLC8Qr^UOD**GpvCCMG4r9@!^WIbckK&iXpNUt zh`#A-AN*sAwli5hlN*MGAM%nrwbWu4_Q50wC81^QoRp<<0Qo#LlI=d+1SG~&r3olo zuZW|X(e#{4eeVd>8khAlTkX*j&2=vA-t-2do@_m6c3oMy7E4v2#ZHx7dX+5s0nFi{ zu?iNM2ZS9iJG2dGA&>w^HKVQDy8fBf_Vth7WeW3Nkh}13IO}PMj+C0+H>ccmI z?s86FRXS`huz!_KS$%ahp&6asOlyxev;Ka;Jc)MlzQ+XCrz$<>7}e;pbd_FPr+3g5 z%3fbJtRq1~tDjxC?1|UtIWLKcEzgX#JeZ+4K&r(b4}}?T2#~n=RPd)vz9#@>1{CPVt|yn_NS}qn<7clRFKq&a?OGk=-C=1gYGSl zw=F)dPHqibUb^j~bt5y%IF^_(osatbkH!V|kGf&|a!WY4Jz)yk>FxCrhFzABM1I)) ztK{(v?nPVBM$}CUOUPW>Q9^q0JKE&#-Pp27zikowR~e9{T>JRu5)jUsG4PxfIf*BS zh&TVKzrw6NXfyqN9$BG!MvBb+j*s|VdqZSi>7~0L_rJ&nSU&#))Q2{s?JPdj73pKz z_+FXJbpj;;OECvVhx=2$7c;aoL~69uFPXC!1FePT>_S!c$XqROyd4JNwW@R6BaQ`nX8h<)z3G1JJ#X8UdClYQs^s^k4_Ma+%9S(#@ zZNas!`H#J1+5jw@Mk9xvXrL=qY)s> zc&Z!)8U=C-M>XT9B)ZS{-TIb!$wjoQl*}zWw(_IpZ)G42ZA1^EMliLOI-cS^x)G*e zF^QTQi#EQLp)FAoq~ld2Uq}JeCiPu{50`<+2AXy;)A)oPV)n1{vK=lj%O#fgoUy&< z%sTVEP~J5aG~?aVg~RD;ZRT(5L~G!TJ<$GDF3VC4EY-#>rx};e7cRICtN#<|RcK89 z7yN!~%WPxp^9lO`hV)NdxJ{5MK)f9q!|eT`iU))3DgoWWW5a`GsUFB`o+@4#j1~a8 zlf$~<#e*b|r5(p;!x0jq(`6*GH%#23ZAlX*Vx+i$rCW9;#^y+0F&=$ zvaRt%7&3@0pXB)aocw7RGKf8a+WdK5M^J z*~-k$=3WEMIiYRLQ)K{X3y`}xsvAIyC3d0? z4pZd-%#2$Bb@JFS@k&5lJXXeF>f373!Mz@I21%W=|C#_K9 z=FnIDWI|8<86PG3(P>PvE)_pd}DzXmrQ3X^0wgZ({l6q&% zno8hy)cv*+-re7nl6-ow5^BpVUFf&61MY^by&3-c%#hG?W8@O1kNU}SI^>5!Vb)jU zh#YW>P^w?oaWVN2|4$XN-xt5uib^yqsxPR9a^IO%(A>;w7}2U>XkCcR7qg{Ft;iJt zqE!S?JwzTA$8LC$Yd`ZMXRFK4eT(TtY1TjfFCH7m**`D)H&j5Newpm=q~EVHdFzn8 X-~Sq;ypi}_wBJvfX9su^GLG~gtRF`} diff --git a/xCAT-web/images/xCAT_icon.gif b/xCAT-web/images/xCAT_icon.gif index ce87160e85c5d1fc5b01f6149ffd05e2e2d00279..e69ef91f68971bf2626d02f8ec6285b412e042cf 100644 GIT binary patch literal 3692 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 v=`8M_BJuK-%U-@--oBSfJ|zDD(zPJ}8@I0A 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 TPD@^7K<+c32J%24;Q0RlzgCfx diff --git a/xCAT-web/index.css b/xCAT-web/index.css new file mode 100644 index 000000000..55589ab37 --- /dev/null +++ b/xCAT-web/index.css @@ -0,0 +1 @@ +/* Styles specific to the index.php page */ \ No newline at end of file diff --git a/xCAT-web/index.php b/xCAT-web/index.php index f895f4f9e..da533653a 100644 --- a/xCAT-web/index.php +++ b/xCAT-web/index.php @@ -4,18 +4,16 @@ $TOPDIR = '.'; require_once "$TOPDIR/functions.php"; -//require_once "$TOPDIR/nav.php"; if (isAIX()) { $aixDisabled = 'disabled'; } -//require_once("globalconfig.php"); -require_once("lib/XCAT/HTML/HTMLProducer.class.php"); +require_once("lib/GroupNodeTable.class.php"); require_once("lib/XCAT/XCATCommand/XCATCommandRunner.class.php"); insertHeader('Nodes', NULL, NULL); insertNav('nodes'); -echo "

Cluster Groups and Nodes

"; +echo "

Cluster Groups and Nodes

"; insertButtons(array( @@ -40,15 +38,11 @@ insertButtons(array( ), )); -echo '
'; +echo ''; -/* -$output = array(); -runcmd("\bin\sudo listattr", 2, $output); -foreach ($output as $line) { echo "

line=$line

"; } -*/ +/* $output = array(); runcmd("\bin\sudo listattr", 2, $output); foreach ($output as $line) { echo "

line=$line

"; } */ -echo HTMLProducer::getXCATNodeTableHeader(); +GroupNodeTable::insertGroupTableHeader(); // Get all the names of the groups $xcmdr = new XCATCommandRunner(); @@ -57,10 +51,10 @@ $nodeGroupNames = $xcmdr->getAllXCATGroups(); // Print the HTML for each of them foreach($nodeGroupNames as $key => $nodeGroupName) { - echo HTMLProducer::getXCATGroupTableRow($nodeGroupName); + echo GroupNodeTable::insertGroupTableRow($nodeGroupName); } -echo HTMLProducer::getXCATNodeTableFooter(); +GroupNodeTable::insertGroupTableFooter(); ?> @@ -70,21 +64,21 @@ echo HTMLProducer::getXCATNodeTableFooter(); --> -
+

+ $title

+ +EOS; foreach ($list as $key => $link) { if ($key == $currentLink){ @@ -214,10 +216,10 @@ foreach ($list as $key => $link) { echo "\n"; } } -?> -
- - + + - - + + - - + +
Node is good (Status is ready/pbs/sshd)Node is good (Status is ready/pbs/sshd)
Node is bad (Status is 'noping')Node is bad (Status is 'noping')
Other status (unknown/node unavailable...)Other status (unknown/node unavailable...)
+

This interface is still under construction and not yet ready for use.

\ No newline at end of file diff --git a/xCAT-web/lib/GroupNodeTable.class.php b/xCAT-web/lib/GroupNodeTable.class.php new file mode 100644 index 000000000..208ac5269 --- /dev/null +++ b/xCAT-web/lib/GroupNodeTable.class.php @@ -0,0 +1,135 @@ + +
GroupsHW TypeOSModeStatusHW Ctrl PtComment
"; + return; +} + +/** + * @param String nodeGroupName The name of the node group. + */ +function getToggleString($nodeGroupName) { +global $TOPDIR; +//$colTxt = "Click to collapse section"; +$exTxt = "Click to expand section"; +//$bulgif = "$TOPDIR/images/h3bg_new.gif"; +//$minusgif = "$TOPDIR/images/minus-sign.gif"; +$plusgif = "$TOPDIR/images/plus-sign.gif"; + + $html = << + +EOS; + + return $html; +} + +/** + * @param String nodeGroup The group. + */ +function insertGroupTableRow($nodeGroup) { +$nodeGroupName = $nodeGroup->getName(); +$img_string = XCATNodeGroupUtil::getImageString($nodeGroup->getStatus()); + +//echo ''; +echo ''; +echo GroupNodeTable::getToggleString($nodeGroupName); +echo <<$nodeGroupName + +   +   +   + $img_string +   +   + + +EOE; +return; +} + + /** + * @param XCATNodeGroup nodeGroup The node group for which we want to generate the html. + * returns the table that contains all the nodes information of that group + */ +function getXCATNodeGroupSection($nodeGroup) { + $imagedir = 'images'; + $right_arrow_gif = $imagedir . "/grey_arrow_r.gif"; + $left_arrow_gif = $imagedir . "/grey_arrow_l.gif"; + + $html .= << +EOS; + + $nodes = $nodeGroup->getNodes(); + + foreach($nodes as $nodeName => $node) { + $html .= GroupNodeTable::getXCATNodeTableRow($node); + } + + $html .= "\"Previous    \"Next  "; + $html .= << +EOS; + + return $html; +} + + /** + * @param XCATNode node The node for which we want to generate the html. + */ +function getXCATNodeTableRow($node) { + + $imagedir = 'images'; + + //echo $node->getName(); + $html = " + getName(). "\" />" .$node->getName(). "" . + "
" . $node->getHwType(). "
". + "
" . $node->getOs(). "
". + "
" . $node->getMode(). "
"; + + $stat = $node->getStatus(); + $img_string = XCATNodeGroupUtil::getImageString($stat); + + $html .= "
" . $img_string . "
". + "
" . $node->getHwCtrlPt(). "
". + "
" . $node->getComment(). "
"; + +EOS; + return $html; + } +} +?> diff --git a/xCAT-web/lib/XCAT/HTML/HTMLProducer.class.php b/xCAT-web/lib/XCAT/HTML/HTMLProducer.class.php index 283e3a143..413ab5250 100644 --- a/xCAT-web/lib/XCAT/HTML/HTMLProducer.class.php +++ b/xCAT-web/lib/XCAT/HTML/HTMLProducer.class.php @@ -1,4 +1,5 @@ getXCATNodeByGroupName($nodeGroupName); -echo HTMLProducer::getXCATNodeGroupSection($nodeGroup); +echo GroupNodeTable::getXCATNodeGroupSection($nodeGroup); ?> diff --git a/xCAT-web/style.css b/xCAT-web/style.css index de106ff5d..704ea3144 100644 --- a/xCAT-web/style.css +++ b/xCAT-web/style.css @@ -1,15 +1,23 @@ + +div#header { + /* background-color : #d8dff1; */ + position: absolute; + left: 15px; + top: 15px; +} + div#nav { /* background-color : #d8dff1; */ position: absolute; left: 0px; - top: 95px; + top: 80px; } div#content { - background-color : #fcfaeb; + /* background-color : #fcfaeb; */ position: absolute; left: 120px; - top: 90px; + top: 80px; } /* not used... @@ -25,9 +33,9 @@ P#logo { #banner { font-weight: bolder; - font-size: 20pt; + font-size: 16pt; font-style: italic; - color: gray; + color: #6a8ab5; /* #3F5B7F; gray; */ text-align: center; margin: 10px; } @@ -37,28 +45,55 @@ P#logo { font-size: 9pt; color: red; text-align: center; + margin: 5px; } .PageHeading { - background-color: #c0c0c0; - margin-top: 5px; - margin-bottom: 5px; + /* font-size: 10pt; */ + font: bold 1.4em "Trebuchet MS", Helvetica, Sans-Serif; + color: white; + background-color: transparent; /* #c0c0c0; */ + border: 1px solid white; + border-bottom-style: none; + margin: 2px 2px 10px 2px; } +.ContentForm { margin: 10px 2px 15px 2px; } + +BODY { + font-size : 10pt; + font-family : Arial; + margin: 0; + padding: 10px; + background: url(images/background.gif) repeat-y; + /* background: black; */ + font: normal 12px Tahoma, Verdana, Arial, Helvetica, Sans-Serif; + line-height: 1.6em; + color: white; /* #333; */ +} + +INPUT {vertical-align : middle; font-size : 8pt; font-family : sans-serif; font-weight : bold;} +SELECT {vertical-align : middle; font-size : 8pt; font-family : sans-serif; font-weight : bold;} +TEXTAREA {vertical-align : middle; font-size : 8pt; font-family : sans-serif; font-weight : bold;} +TABLE {font-size : 10pt; font-family : Arial;} + /* pre { padding: 0px; margin: 0px; } */ -.TableRow { background-color : #d8dff1; } +.TableHeader { color: black; background-color : #fffdb0; font-weight : bold; font-size : 9pt; white-space: nowrap; } +.TableRow { color: black; background-color : #b3c2d9; font-size : 9pt; white-space: nowrap; } /* #d8dff1 */ .Info {color : blue;} .Error {font-weight : bold; color : red;} .Trace {color: gray; padding: 0px; margin: 0px;} .BasicHeading {background-color : #8CA4D9;} .BlueBack {background-color : #C2CEDE; /* #8CA4D9; */ } - .LightBlueBack {background-color : #bfccea;} - .FilterBox {background-color : #e8e8e8;} .LightGrayBack {background-color : #e8e8e8;} +.CreamHeading { font-weight : bolder; background-color : #fffdb0; } +.LightCreamHeading { font-weight : bolder; background-color : #fffece; } +.SlateBackground { background-color : #95aece; } +.DarkSlateBackground { background-color : #698ebc; } .Middle {vertical-align : middle;} .Center {text-align : center;} @@ -70,19 +105,14 @@ P#logo { .Font8 {font-size : 8pt;} .Boxed { border: 1px solid gray; } .NoMargin { margin: 0px; } +.NoPadding { padding: 0px; margin: 0px; } .Hidden { visibility : hidden ;} .but{ - background-color : #fbf999; - padding-top : 0px; - padding-left : 0px; - padding-right : 0px; - padding-bottom : 0px; - margin-top : 0px; - margin-left : 0px; - margin-right : 0px; - margin-bottom : 0px; + background-color: #3F5B7F; /* #6a8ab5; #fbf999; */ + padding: 0px; + margin: 0px; } .txtfld {font-size : 8pt; font-family : sans-serif; font-weight : bold;} @@ -97,12 +127,6 @@ P#logo { } */ -INPUT {vertical-align : middle; font-size : 8pt; font-family : sans-serif; font-weight : bold;} -SELECT {vertical-align : middle; font-size : 8pt; font-family : sans-serif; font-weight : bold;} -TEXTAREA {vertical-align : middle; font-size : 8pt; font-family : sans-serif; font-weight : bold;} -TABLE {font-size : 10pt; font-family : Arial;} -BODY {font-size : 10pt; font-family : Arial; } - /* The rest of the styles were for the navigation area, but are not used any more... table#navtable { width: 105px;