Misc cleanup.
[cmless] / bin / template.py
index c5b1d19..fc8886f 100644 (file)
@@ -2,20 +2,42 @@
 # See LICENSE file for copyright and license details.
 
 # Python imports
 # See LICENSE file for copyright and license details.
 
 # Python imports
-import os
+import os, datetime
 
 # CMless imports
 import config, misc
 
 
 # CMless imports
 import config, misc
 
-def tpl_title(template):
-    keyword = "page_title"
-    return template.replace(config.template_delimiter + keyword +
-            config.template_delimiter, os.environ['REQUEST_URI'])
+def add_delimiter(keyword):
+    return config.template_delimiter + keyword + config.template_delimiter
 
 
-def tpl_body(template):
-    keyword = "page_content"
+def head_meta_description(template):
+    keyword = add_delimiter("meta_description")
+    return template.replace(keyword,'<meta name="description" content="' +
+            misc.lookup_current_metadata("meta_description") + '">')
+
+def head_meta_keywords(template):
+    keyword = add_delimiter("meta_keywords")
+    return template.replace(keyword,'<meta name="keywords" content="' +
+            misc.lookup_current_metadata("meta_keywords") + '">')
+
+def page_title(template):
+    keyword = add_delimiter("page_title")
+    return template.replace(keyword, config.site_name + " - " +
+            misc.lookup_current_metadata("page_title"))
+
+def site_title(template):
+    keyword = add_delimiter("site_title")
+    return template.replace(keyword, config.site_name)
+
+def body(template):
+    keyword = add_delimiter("page_content")
     body = misc.load_file(config.site_data_prefix + os.environ['REQUEST_URI'] +
             config.markup_file_extension)
     body = misc.load_file(config.site_data_prefix + os.environ['REQUEST_URI'] +
             config.markup_file_extension)
+    body = misc.strip_page_metadata(body)
     body = misc.process_markup(body)
     body = misc.process_markup(body)
-    return template.replace(config.template_delimiter + keyword +
-            config.template_delimiter, body)
+    return template.replace(keyword, body)
+
+def current_year(template):
+    keyword = add_delimiter("current_year")
+    now = datetime.datetime.now()
+    return template.replace(keyword, str(now.year))