Added basic template functionality.
[cmless] / bin / misc.py
diff --git a/bin/misc.py b/bin/misc.py
new file mode 100644 (file)
index 0000000..821ef34
--- /dev/null
@@ -0,0 +1,32 @@
+# (c) 2017 Aaron Taylor <ataylor at subgeniuskitty dot com>
+# See LICENSE file for copyright and license details.
+
+# Python imports
+import sys, subprocess
+
+# CMless imports
+import debug, config
+
+# Accepts a string containing a filesystem path to a text file.
+# Returns a string containing the contents of that file.
+def load_file(path):
+    try:
+        with open(path) as f:
+            contents = f.read()
+    except:
+        if debug.print_to_browser: print("Unable to open " + path + " for reading.")
+        sys.exit("Unable to open " + path + " for reading.")
+    return contents
+
+# Accepts a string containing markup'ed text
+# Returns a string containing HTML'ed text
+def process_markup(text):
+    try:
+        p = subprocess.Popen(config.markup_processor,
+                stdout=subprocess.PIPE,stdin=subprocess.PIPE)
+    except:
+        if debug.print_to_browser: print("Unable to open markup processor: " +
+                config.markup_processor)
+        sys.exit("Unable to open markup processor: " + config.markup_processor)
+    text = p.communicate(text.encode('UTF-8'))[0]
+    return(text.decode('UTF-8'))