]> code.delx.au - mediapc-tools/blob - ffclicker
c41e84f009b60d1279dd68624dc5886ee72b2851
[mediapc-tools] / ffclicker
1 #!/usr/bin/python2
2
3 import cherrypy
4 import os
5 import sys
6 import webbrowser
7
8 class Listener(object):
9 @cherrypy.expose
10 def firefox(self, url):
11 print "Loading:", url
12 webbrowser.open(url)
13 raise cherrypy.HTTPRedirect(url, status=303)
14
15 def do_fork():
16 pid = os.fork()
17 if pid < 0:
18 print >>sys.stderr, "Unable to fork!"
19 sys.exit(1)
20 if pid != 0:
21 sys.exit(0)
22
23 def main(fork):
24 if fork:
25 do_fork()
26 cherrypy.tree.mount(Listener())
27 cherrypy.server.socket_host = "0.0.0.0"
28 cherrypy.server.socket_port = 8080
29 cherrypy.engine.start()
30
31 if __name__ == "__main__":
32 fork = False
33 if len(sys.argv) != 1:
34 if sys.argv[1] == "--fork":
35 fork = True
36 else:
37 print >>sys.stderr, "Usage: %s [--fork]" % sys.argv[0]
38 sys.exit(1)
39 main(fork)
40