www.pudn.com > firev0.01.rar > firev01.cgi
#!/usr/bin/python
print "Content-Type: text/html\n\n"
print
print ""
import socket
import cgi
import re
import sys
import traceback
import os
from types import *
TemplateFile = "fire-template.html"
fireServer="europium"
firePort=12960
sys.stderr=sys.stdout
PRGRAPHDATFILE="/u/deselaers/data/PRGRAPH.DAT"
PRGRAPHDEMFILE="/u/deselaers/ir/src/cgi/prgraph.dem"
PRGRAPHPNGFILE="/u/deselaers/data/PRGRAPH.png"
def Display(Content):
TemplateHandle = open(TemplateFile, "r") # open in read only mode
# read the entire file as a string
TemplateInput = TemplateHandle.read()
TemplateHandle.close() # close the file
# this defines an exception string in case our
# template file is messed up
BadTemplateException = "There was a problem with the HTML template."
SubResult = re.subn("INSERT CONTENT HERE",Content,TemplateInput)
if SubResult[1] == 0:
raise BadTemplateException
print SubResult[0]
def processForm(form):
#processing form input
for i in form.keys():
if i=="retriever":
retriever=form[i].value
s.sendcmd("set retriever "+retriever)
s.getResult()
elif i.find("dist")==0:
no=i[4:]
dist=form[i].value
s.sendcmd("set dist "+no+" "+dist)
s.getResult()
elif i.find("weight")==0:
no=i[6:]
weight=form[i].value
s.sendcmd("set weight "+no+" "+weight)
s.getResult()
elif i=="database":
database=form[i].value
s.sendcmd("loadlist "+database)
s.getResult()
elif i=="results":
results=form[i].value
s.sendcmd("set results "+results)
s.getResult()
def processStatus(msg, form):
#processing status report
noList=[]
distNameList=[]
suffixList=[]
weightList=[]
output=""
retriever=""
dist=""
database=""
results=""
filelist=""
testfile=""
perfevalparams="fire -perf "
for line in re.split("\n",msg):
line=re.sub("[ ]*","",line)
linelist=re.split(":",line)
if linelist[0]=="results":
results=linelist[1]
perfevalparams=perfevalparams+" -results "+str(results)
elif linelist[0]=="dist":
no=int(linelist[1])
name=linelist[2]
suffix=linelist[3]
weight=linelist[4]
if name != "basedist":
perfevalparams=perfevalparams+" -dist"+str(no)+" "+name+" -weight"+str(no)+" "+weight+" "
noList=noList+[no]
distNameList=distNameList+[name]
suffixList=suffixList+[suffix]
weightList=weightList+[weight]
elif linelist[0]=="filelist":
database=linelist[1]
perfevalparams=perfevalparams+"-filelist "+database
elif linelist[0]=="testfile":
testfile=linelist[1]
output=output+"Settings for fire on "+fireServer+":"+str(firePort)+"
"
output=output+"""\n"
output=output+"FIRE Server down, try again later or complain: thomas@deselaers.de
Or try others: