📄 policy.cgi
字号:
if formVar[3] != '': nameAttr = makeNameAttr( formVar[3] ) if formVar[4] != '': valueAttr = makeValueAttr( formVar[4] ) print '<INPUT type="submit"', nameAttr, valueAttr, attrs, '>' elif formVar[0] == 'radiobutton': if formVar[3] != '': nameAttr = makeNameAttr( formVar[3] ) valueAttr = makeValueAttr( formVar[4][rb_select] ) htmlText = formVar[5][rb_select] if formVar[4][rb_select] == formVar[1]: checked = 'checked' else: checked = '' print '<INPUT type="radio"', nameAttr, valueAttr, attrs, checked, '>', htmlText elif formVar[0] == 'radiobutton-all': if formVar[3] != '': nameAttr = makeNameAttr( formVar[3] ) buttonVals = formVar[4] buttonTexts = formVar[5] for i, buttonVal in enumerate( buttonVals ): htmlText = '' addAttrs = '' checked = '' valueAttr = makeValueAttr( buttonVal ) if formVar[5] != '': htmlText = formVar[5][i] if attrs != '': addAttrs = attrs[i] if buttonVal == formVar[1]: checked = 'checked' print '<INPUT type="radio"', nameAttr, valueAttr, addAttrs, checked, '>', htmlText, '<BR>' if ( formVar[2] != '' ) and ( rb_select == 0 ): nameAttr = makeNameAttr( formVar[2] ) valueAttr = makeValueAttr( formVar[1] ) print '<INPUT type="hidden"', nameAttr, valueAttr, '>'def sendHtmlHeaders( ): # HTML headers print 'Content-Type: text/html' printdef sendPolicyHtml( ): global xmlError, xmlIncomplete, xmlMessages global formDefaultButton, formXmlGen global formVmNameDom0 print '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"' print ' "http://www.w3.org/TR/html4/loose.dtd">' print '<HTML>' sendHtmlHead( ) print '<BODY>' # An input XML file was specified that had errors, output the # error information if xmlError == 1: print '<P>' print 'An error has been encountered while processing the input ' print 'XML file:' print '<UL>' for msg in xmlMessages: print '<LI>' print msg print '</UL>' print '</BODY>' print '</HTML>' return # When attempting to generate the XML output, all required data was not # present, output the error information if xmlIncomplete == 1: print '<P>' print 'An error has been encountered while validating the data' print 'required for the output XML file:' print '<UL>' for msg in xmlMessages: print '<LI>' print msg print '</UL>' print '</BODY>' print '</HTML>' return print '<CENTER>' print '<FORM action="' + os.environ['SCRIPT_NAME'] + '" method="post">' print '<TABLE class="container">' print ' <COLGROUP>' print ' <COL width="100%">' print ' </COLGROUP>' print ' <TR>' print ' <TD>' print ' <TABLE>' print ' <TR>' print ' <TD>' sendHtmlFormVar( formDefaultButton, 'class="hidden"' ) print ' </TD>' print ' </TR>' print ' <TR>' print ' <TD>' sendHtmlFormVar( formXmlGen ) print ' </TD>' print ' </TR>' print ' </TABLE>' print ' </TD>' print ' </TR>' # Policy header print ' <TR>' print ' <TD>' sendPHeaderHtml( ) print ' </TD>' print ' </TR>' # Separator print ' <TR><TD><HR></TD></TR>' # Policy (types) print ' <TR>' print ' <TD>' print ' <TABLE class="full">' print ' <COLGROUP>' print ' <COL width="49%">' print ' <COL width="2%">' print ' <COL width="49%">' print ' </COLGROUP>' print ' <TR>' print ' <TD>' sendPSteHtml( ) print ' </TD>' print ' <TD> </TD>' print ' <TD>' sendPChWallHtml( ) print ' </TD>' print ' </TR>' print ' </TABLE>' print ' </TD>' print ' </TR>' # Separator print ' <TR>' print ' <TD>' print ' <HR>' print ' </TD>' print ' </TR>' # Policy Labels (vms) print ' <TR>' print ' <TD>' print ' <TABLE class="full">' print ' <COLGROUP>' print ' <COL width="100%">' print ' </COLGROUP>' print ' <TR>' print ' <TD>' sendPLSubHtml( ) print ' </TD>' print ' </TR>' print ' </TABLE>' print ' </TD>' print ' </TR>' # Separator print ' <TR>' print ' <TD>' print ' <HR>' print ' </TD>' print ' </TR>' # Policy Labels (resources) print ' <TR>' print ' <TD>' print ' <TABLE class="full">' print ' <COLGROUP>' print ' <COL width="100%">' print ' </COLGROUP>' print ' <TR>' print ' <TD>' sendPLObjHtml( ) print ' </TD>' print ' </TR>' print ' </TABLE>' print ' </TD>' print ' </TR>' print '</TABLE>' # Send some data that needs to be available across sessions sendHtmlFormVar( formVmNameDom0 ) print '</FORM>' print '</CENTER>' print '</BODY>' print '</HTML>'def sendHtmlHead( ): global headTitle print '<HEAD>' print '<STYLE type="text/css">' print '<!--' print 'BODY {background-color: #EEEEFF;}' print 'TABLE.container {width: 90%; border: 1px solid black; border-collapse: seperate;}' print 'TABLE.full {width: 100%; border: 0px solid black; border-collapse: collapse; border-spacing: 3px;}' print 'TABLE.fullbox {width: 100%; border: 0px solid black; border-collapse: collapse; border-spacing: 3px;}' print 'THEAD {font-weight: bold; font-size: larger;}' print 'TD {border: 0px solid black; vertical-align: top;}' print 'TD.heading {border: 0px solid black; vertical-align: top; font-weight: bold; font-size: larger;}' print 'TD.subheading {border: 0px solid black; vertical-align: top; font-size: smaller;}' print 'TD.fullbox {border: 1px solid black; vertical-align: top;}' print 'SELECT.full {width: 100%;}' print 'INPUT.full {width: 100%;}' print 'INPUT.link {cursor: pointer; background-color: #EEEEFF; border: 0px; text-decoration: underline; color: blue;}' print 'INPUT.hidden {visibility: hidden; width: 1px; height: 1px;}' print ':link {color: blue;}' print ':visited {color: red;}' print '-->' print '</STYLE>' print '<TITLE>', headTitle, '</TITLE>' print '</HEAD>'def sendPHeaderHtml( ): global formPolicyName, formPolicyUrl, formPolicyRef, formPolicyDate, formPolicyNSUrl global formPolicyOrder, formPolicyUpdate # Policy header definition print '<TABLE class="full">' print ' <COLGROUP>' print ' <COL width="20%">' print ' <COL width="80%">' print ' </COLGROUP>' print ' <TR>' print ' <TD align="center" colspan="2" class="heading">Policy Information</TD>' print ' </TR>' print ' <TR>' print ' <TD align="right">Name:</TD>' print ' <TD align="left">' sendHtmlFormVar( formPolicyName, 'class="full"' ) print ' </TD>' print ' </TR>' print ' <TR>' print ' <TD align="right">Url:</TD>' print ' <TD align="left">' sendHtmlFormVar( formPolicyUrl, 'class="full"' ) print ' </TD>' print ' </TR>' print ' <TR>' print ' <TD align="right">Reference:</TD>' print ' <TD align="left">' sendHtmlFormVar( formPolicyRef, 'class="full"' ) print ' </TD>' print ' </TR>' print ' <TR>' print ' <TD align="right">Date:</TD>' print ' <TD align="left">' sendHtmlFormVar( formPolicyDate, 'class="full"' ) print ' </TD>' print ' </TR>' print ' <TR>' print ' <TD align="right">NameSpace URL:</TD>' print ' <TD align="left">' sendHtmlFormVar( formPolicyNSUrl, 'class="full"' ) print ' </TD>' print ' </TR>' print ' <TR>' print ' <TD align="right">Primary Policy:</TD>' print ' <TD align="left">' sendHtmlFormVar( formPolicyOrder ) print ' </TD>' print ' </TR>' print ' <TR>' print ' <TD align="center" colspan="2">' sendHtmlFormVar( formPolicyUpdate ) print ' </TD>' print ' </TR>' print ' <TR>' print ' <TD align="center" colspan="2" class="subheading">' print ' (The Policy Information is updated whenever an action is performed' print ' or it can be updated separately using the "Update" button)' print ' </TD>' print ' </TR>' print '</TABLE>'def sendPSteHtml( ): global formSteTypes, formSteDel, formSteType, formSteAdd # Simple Type Enforcement... print '<TABLE class="full">' print ' <COLGROUP>' print ' <COL width="20%">' print ' <COL width="80%">' print ' </COLGROUP>' print ' <TR>' print ' <TD align="center" colspan="2" class="heading">Simple Type Enforcement Types</TD>' print ' </TR>' print ' <TR>' print ' <TD colspan="2">' sendHtmlFormVar( formSteTypes, 'class="full" size="4" multiple' ) print ' </TD>' print ' </TR>' print ' <TR>' print ' <TD>' sendHtmlFormVar( formSteDel, 'class="full"' ) print ' </TD>' print ' <TD>' print ' Delete the type(s) selected above' print ' </TD>' print ' </TR>' print ' <TR>' print ' <TD colspan="2">' sendHtmlFormVar( formSteType, 'class="full"' ) print ' </TD>' print ' </TR>' print ' <TR>' print ' <TD>' sendHtmlFormVar( formSteAdd, 'class="full"' ) print ' </TD>' print ' <TD>' print ' Create a new type with the above name' print ' </TD>' print ' </TR>' print '</TABLE>'def sendPChWallHtml( ): global formChWallTypes, formChWallDel, formChWallType, formChWallAdd global formCSNames, formCSName, formCSAdd, allCSDel global allCSMTypes, allCSMDel, allCSMType, allCSMAdd # Chinese Wall... print '<TABLE class="full">' print ' <COLGROUP>' print ' <COL width="20%">' print ' <COL width="80%">' print ' </COLGROUP>' print ' <TR>' print ' <TD align="center" colspan="2" class="heading">Chinese Wall Types</TD>' print ' </TR>' print ' <TR>' print ' <TD colspan="2">' sendHtmlFormVar( formChWallTypes, 'class="full" size="4" multiple' ) print ' </TD>' print ' </TR>' print ' <TR>' print ' <TD>' sendHtmlFormVar( formChWallDel, 'class="full"' ) print ' </TD>' print ' <TD>' print ' Delete the type(s) selected above' print ' </TD>' print ' </TR>' print ' <TR>' print ' <TD colspan="2">' sendHtmlFormVar( formChWallType, 'class="full"' ) print ' </TD>' print ' </TR>' print ' <TR>' print ' <TD>' sendHtmlFormVar( formChWallAdd, 'class="full"' ) print ' </TD>' print ' <TD>' print ' Create a new type with the above name' print ' </TD>' print ' </TR>' # Chinese Wall Conflict Sets... print ' <TR>' print ' <TD colspan="2">' print ' <TABLE class="full">' print ' <COLGROUP>' print ' <COL width="20%">' print ' <COL width="30%">' print ' <COL width="50%">' print ' </COLGROUP>' print ' <THEAD>' print ' <TR>' print ' <TD align="center" colspan="3"><HR></TD>' print ' </TR>' print ' <TR>' print ' <TD align="center" colspan="3">Chinese Wall Conflict Sets</TD>' print ' </TR>' print ' </THEAD>' print ' <TR>' print ' <TD colspan="3">' sendHtmlFormVar( formCSName, 'class="full"' ) sendHtmlFormVar( formCSNames ) print ' </TD>' print ' </TR>' print ' <TR>' print ' <TD>' sendHtmlFormVar( formCSAdd, 'class="full"' ) print ' </TD>' print ' <TD colspan="2">' print ' Create a new conflict set with the above name' print ' </TD>' print ' </TR>' print ' </TABLE>' print ' </TD>' print ' </TR>' if len( formCSNames[1] ) > 0: print ' <TR>' print ' <TD colspan="2">' print ' ' print ' </TD>' print ' </TR>' print ' <TR>' print ' <TD colspan="2">' print ' <TABLE class="fullbox">' print ' <COLGROUP>' print ' <COL width="50%">' print ' <COL width="50%">' print ' </COLGROUP>' print ' <THEAD>' print ' <TR>' print ' <TD class="fullbox">Name</TD>' print ' <TD class="fullbox">Actions</TD>' print ' </TR>' print ' </THEAD>' for i, csName in enumerate( formCSNames[1] ): print ' <TR>' print ' <TD class="fullbox">' + csName + '</TD>' print ' <TD class="fullbox">' print ' <A href="#' + csName + '">Edit</A>' formVar = allCSDel[csName] sendHtmlFormVar( formVar, 'class="link"' ) print ' </TD>' print ' </TABLE>' print ' </TD>' print ' </TR>' for csName in formCSNames[1]: print ' <TR><TD colspan="2"><HR></TD></TR>' print ' <TR>' print ' <TD align="center" colspan="2" class="heading"><A name="' + csName + '">Conflict Set: ' + csName + '</A></TD>' print ' </TR>' print ' <TR>' print ' <TD colspan="2">' formVar = allCSMTypes[csName]; sendHtmlFormVar( formVar, 'class="full" size="4" multiple"' ) print ' </TD>' print ' </TR>' print ' <TR>' print ' <TD>' formVar = allCSMDel[csName] sendHtmlFormVar( formVar, 'class="full"' ) print ' </TD>' print ' <TD>' print ' Delete the type(s) selected above' print ' </TD>' print ' </TR>' print ' <TR>' print ' <TD colspan="2">' ctSet = Set( formChWallTypes[1] ) csSet = Set( allCSMTypes[csName][1] ) formVar = allCSMType[csName] formVar[1] = [] for chwallType in ctSet.difference( csSet ): formVar[1].append( chwallType ) formVar[1].sort( ) sendHtmlFormVar( formVar, 'class="full" size="2" multiple' ) print ' </TD>' print ' </TR>' print ' <TR>' print ' <TD>' formVar = allCSMAdd[csName] sendHtmlFormVar( formVar, 'class="full"' )
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -