home · contact · privacy
Add script to unify all accounting servers into one.
[misc] / plomlib.py
index 92bfb8535d7604bc1e47f0595cc68fd28e433283..6a13f05f4b20b148be7b8464a60f268ad9464626 100644 (file)
@@ -77,25 +77,17 @@ class PlomDB:
         self.unlock()
 
 
-class PlomServer(BaseHTTPRequestHandler): 
+class PlomHandler(BaseHTTPRequestHandler): 
+    homepage = '/'
+    html_head = '<!DOCTYPE html>\n<html>\n<meta charset="UTF-8">'
+    html_foot = '</body>\n</html>'
     
-    def __init__(self, *args, **kwargs):
-        self.html_head = ['<!DOCTYPE html>\n<html>\n<meta charset="UTF-8">']
-        self.html_foot = ['</body>\n</html>']
-        self.pre_init()
-        super().__init__(*args, **kwargs)
-
-    def pre_init(self):
-        pass
-
     def fail_400(self, e):
         self.send_HTML(f'ERROR: {e}', 400)
 
     def send_HTML(self, html, code=200):
         self.send_code_and_headers(code, [('Content-type', 'text/html')])
-        header = '\n'.join(self.html_head)
-        footer = '\n'.join(self.html_foot)
-        self.wfile.write(bytes(f'{header}\n{html}\n{footer}', 'utf-8'))
+        self.wfile.write(bytes(f'{self.html_head}\n{html}\n{self.html_foot}', 'utf-8'))
 
     def send_code_and_headers(self, code, headers=[]):
         self.send_response(code)
@@ -108,9 +100,9 @@ class PlomServer(BaseHTTPRequestHandler):
 
 
 
-def run_server(port, server_class):
+def run_server(port, handler_class):
     from http.server import HTTPServer
-    webServer = HTTPServer(('localhost', port), server_class)
+    webServer = HTTPServer(('localhost', port), handler_class)
     print(f"Server started http://localhost:{port}")
     try:
         webServer.serve_forever()