⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 policy.cgi

📁 xen 3.2.2 源码
💻 CGI
📖 第 1 页 / 共 5 页
字号:
		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>&nbsp;</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 '      &nbsp;'		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 + -