Example #1
0
	def createContent(self):
		
		#begin Input
		simpleInput = InputController(self.req,'Simple Input')

		now = datetime.datetime.now()
		options = [('abc','abc..'),('def','def..')]

		seed = simpleInput.processInput(II('seed','Seed Number',II.NUMBER,default=random.randint(0,10000)))
		incr = simpleInput.processInput(II('incr','Seed Increment',II.NUMBER,default=1))
		texta = simpleInput.processInput(II('texta','Test Text A',II.TEXT,allowBlank=True,blankVal='%'))
		textb = simpleInput.processInput(II('textb','Test Text B',II.TEXT,default='foo'))
		datec = simpleInput.processInput(II('datec','Test Date C',II.DATE,allowBlank=True,blankVal=now))
		dated = simpleInput.processInput(II('dated','Test Date D',II.DATE,default=now))
		opte = simpleInput.processInput(II('opte','Test Drop Down E',II.DROPDOWN,options=options,allowBlank=True,blankVal='Blank'))
		optf = simpleInput.processInput(II('optf','Test Drop Down F',II.DROPDOWN,options=options,default='def'))

		seed = simpleInput.updateInput('seed',seed+incr)
		self.simpleInput = simpleInput.getContent()

		#begin prop table
		simpleProps = PropTableController(self.req,'Simple Stuff')
		simpleProps.addRow(TR('Seed Number',seed,TR.NUMBER))
		simpleProps.addRow(TR('Seed Increment',incr,TR.NUMBER))
		simpleProps.addRow(TR('Test Text A',texta,TR.TEXT))
		simpleProps.addRow(TR('Test Text B',textb,TR.TEXT))
		simpleProps.addRow(TR('Test Date C',datec,TR.DATETIME))
		simpleProps.addRow(TR('Test Date D',dated,TR.DATETIME))
		simpleProps.addRow(TR('Test Text B',type(dated),TR.TEXT))
		simpleProps.addRow(TR('Test Drop Down E',opte,TR.TEXT))
		simpleProps.addRow(TR('Test Drop Down F',optf,TR.TEXT))

		self.simpleProps = simpleProps.getContent()

		#begin simple table
		self.simpleTable = simpleTable = TableController(self.req,'simpleTable','Simple Table',dbOrder=False)
		simpleTable.addHeader(TH('text', 'Text',TH.TEXT,sorted=True))
		simpleTable.addHeader(TH('bytes', 'Bytes',TH.BYTES))
		simpleTable.addHeader(TH('number', 'Number',TH.NUMBER))
		simpleTable.addHeader(TH('time', 'Time',TH.TIME))
		simpleTable.addHeader(TH('date', 'Date',TH.DATE))
		simpleTable.addHeader(TH('datetime', 'Date Time',TH.DATETIME))
		simpleTable.addHeader(TH('float', 'Float',TH.FLOAT))
		#simpleTable.addHeader(TH('html', 'Raw HTML',TH.HTML))
		simpleTable.addHeader(TH('html2', 'Raw HTML',TH.HTML))

		random.seed(seed)
		for i in random.sample(xrange(1000),max(0,int(random.normalvariate(10,15)))):
			random.seed(i)
			li_type = random.choice(['error','info','warning'])
			image = 'img/li_%s.png' % li_type
			image2 = image.replace('li_','')
			row = {
				'text' : self.generateString(max(2,int(random.normalvariate(30,15)))),
				'bytes' : min(2**64,max(0,int(2**random.normalvariate(36,15)))),
				'number' : i,
				'time' : datetime.datetime.now()+datetime.timedelta((random.random()-.5)*2000),
				'date' : datetime.datetime.now()+datetime.timedelta((random.random()-.5)*2000),
				'datetime' : datetime.datetime.now()+datetime.timedelta((random.random()-.5)*2000),
				'float' : random.random()*1000,
				'html' : '<img src="%s" alt="%s"/>' % (self.homePrefixIt(image),li_type[0]),
				'html2' : '<img src="%s" alt="%s"/>' % (self.homePrefixIt(image2),li_type[0])
			}
			simpleTable.addRow(**row)

		self.simplePopUp = PopUpMenuController(self.req,'Up-Left',pop=PU.UP_LEFT)

		#self.addItems(self.simplePopUp,3)
		self.addItems(self.simplePopUp,2,all=False)

		# Create Alerts
		alerts=self.getAlerts(local=True)
		self.alertTable = AlertController(self.req,alerts)
Example #2
0
	def createContent(self):
		self.sessions = []
		i = 0
		for session in self.getAllSessions():
			sid = session.id()[0:16]+'...'
			sessionTable = PropTableController(self.req,sid)

			if i == 0:
				sessionTable.addRow(TR('type','global',TR.TEXT))
			elif i == 1:
				sessionTable.addRow(TR('type','current',TR.TEXT))
			else:
				sessionTable.addRow(TR('type','other',TR.TEXT))

			sessionTable.addRow(TR('created',session.created(),TR.TEXT))
			sessionTable.addRow(TR('last_accessed',session.last_accessed(),TR.TEXT))
			sessionTable.addRow(TR('timeout',session.timeout(),TR.TEXT))

			keys = session.keys()
			keys.sort()
			for name in keys:
				value = session[name]
				if name == 'sessions':
					value = map(lambda x: x[0:16]+'...',value)
					value = ', '.join(value)
				sessionTable.addRow(TR(name,repr(value),TR.TEXT))
			self.sessions.append(sessionTable)
			i += 1