From 0a709221ff584789e29e02ce9207a2e7d585c60e Mon Sep 17 00:00:00 2001 From: Florian Date: Thu, 6 Oct 2011 18:04:24 +0200 Subject: new webscript with new filehierarchy. templates are not up to date! --- scripts/newtemp.py | 104 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 104 insertions(+) create mode 100755 scripts/newtemp.py (limited to 'scripts/newtemp.py') diff --git a/scripts/newtemp.py b/scripts/newtemp.py new file mode 100755 index 0000000..d579baf --- /dev/null +++ b/scripts/newtemp.py @@ -0,0 +1,104 @@ +#!/usr/bin/env python +#Filename: newtemp.py +#Author: stayawake@lavabit.com + + +import configparser +import os +import sys +import getopt +import time +import datetime +from string import Template + + +def readfiles(prefix): + + global content + content= {"content.html":"", "keywords":"", "desc_de":"", "desc_en":""} + + for c in content: + f = open(prefix + "." + c, "r") + content[c] = f.read() + f.close + + +def substitute(target, prefix, htmltemplate, datenow, topic, content): + + #create template-string + htmltext = Template(htmltemplate) + htmltext = htmltext.substitute(template_date = datenow, template_chattopic = topic, template_keywords = content["keywords"], template_content = content["content.html"], template_desc_de = content["desc_de"], template_desc_en = content["desc_en"]) + + #write it to the outputfile + outputfile = open(target + page + ".html", "w") + outputfile.write(htmltext) + outputfile.close() + + +def readarguments(argv): + + global configfile + global verbose + + try: + opts, args = getopt.getopt(argv, "c:vh", ["config=", "verbose", "help"]) + except getopt.GetoptError: + print("There is a problem with your argument(s)") + sys.exit(2) + for opt, arg in opts: + if opt in ("-c", "--config"): + configfile = arg + elif opt in ("-v", "--verbose"): + verbose = True + elif opt in ("-h", "--help"): + print("Please read the non-existing man page for further assistance") + sys.exit(0) + + +configfile = "template.conf" +verbose = False + +readarguments(sys.argv[1:]) + +if not(os.path.exists(configfile)): + print("Configfile not found") + sys.exit(2) + + +config = configparser.ConfigParser() +config.read_file(open(configfile)) +path = config["Default"]["path"] +target = config["Default"]["target"] +pagepath = path + "pages/" +templatepath = path + "template/" +topicpath = path + "topic/" +if verbose: + print("Pagepath: %s" % pagepath) + print("Templatepath: %s" % templatepath) + print("topicpath: %s" % topicpath) + +#set template +f = open(templatepath + "template.html", "r") +htmltemplate = f.read() +f.close +if verbose: + print ("template read") + +#set topic +f = open(topicpath + "topic", "r") +topic = f.read() +f.close +if verbose: + print ("topic read") + +#set date +datenow = time.strftime("%Y-%m-%dT%H:%M:%S +0100") +if verbose: + print ("Set date: " + datenow) + +for page in os.listdir(pagepath): + prefix = pagepath + page + "/" + page + readfiles(prefix) + substitute(target, prefix, htmltemplate, datenow, topic, content) + if verbose: + print(prefix + ".html written") -- cgit v1.2.1