#!/usr/bin/env python
# -*- coding: UTF-8 -*-
#
# webinterface for re_codec configuration
# (c)2004 jan gerber
#
import cgi
import cgitb; cgitb.enable()
from xmlrpclib import *
from SimpleXMLRPCServer import *
import re
import sys
class confClass:
def __init__(self,server):
self.mode=server.getMode()
self.streamswitch_mode=server.getStreamSwitchMode()
#get values via xmlrpc must go here.
def save_values(form):
global conf
savemode=form.getvalue("save", "").strip()
mode = form.getvalue("mode", "")
if savemode=="mode":
conf.mode = form.getvalue("mode", "")
if form.getvalue("streamswitch_mode", "").strip():
conf.streamswitch_mode = "enabled"
else:
conf.streamswitch_mode = "disabled"
elif savemode=="encoder":
for port in ['In','Out','Fallback']:
for channel in [1,2]:
value=form.getvalue('Jackmixer%s-%s'%(port,channel),'')
if value:
print "aha",value," "
elif savemode=="decoder":
for port in ['In','Out','Fallback']:
for channel in [1,2]:
value=form.getvalue('Jackmixer%s-%s'%(port,channel),'')
if value:
print "aha",value," "
def input_form(label,value):
print '
',label,'
'%value
def getJackmixerSelectbox(name,mode='Playback'):
channels=2
portnum=0
selectbox=''
while portnum'%(name,portnum)
for value in getattr(server,"getJack%sPorts"%mode)():
if not re.search("jackmixer",value):
if value==value_set:
value_set_done=1
selected='selected'
else:
selected=''
selectbox += ''%(value,selected,value)
if value_set_done==0:
selectbox += ''%(value_set,value_set)
selectbox += '\n'
except:
print "
basic settings for the encoder
possible advanced settings for the future: fallback,ices,icecast,recording
'''
jackmixer_form()
print '
'
# main part
print "Content-Type: text/html; charset=utf-8" # HTML is following
print # blank line, end of headers
server = ServerProxy("http://localhost:96123")
try:
xmlrpc_methods=server.system.listMethods()
conf=confClass(server)
except:
print 'XMLRPC backend down. please check and restart backend if needed.'
sys.exit()
form = cgi.FieldStorage()
save_values(form)
print ''
print ""
print "re_codec config"
print ""
print '