Blorg-Backend/orgHandler.py

36 lines
1.1 KiB
Python

import os
from orgparse import loads
blogDir: str = "./blogs"
debug: bool = True
def debugPrint(msg: str) -> None:
if debug:
print("(ORG HANDLER) PRINT: " + msg)
def checkAndRetrieveMetadata(fileData, metadataName: str):
metadataFullName = "#+" + metadataName + ":"
for line in fileData:
if metadataFullName in line:
linetoarray = line.split()
return " ".join(linetoarray[1:])
debugPrint("Could not find " + metadataFullName + " metadata field of document!")
return False
def orgToHTML(orgData: str) -> str:
try:
orgRoot = loads(orgData)
parsedHTML = ""
for node in orgRoot[1:]:
if node.heading:
headingLevel = node.level if node.level <= 6 else 6
headingLevel += 2
parsedHTML += "<h" + str(headingLevel) + ">" + node.heading + "</h" + str(headingLevel) + ">" + "\n"
if node.body:
parsedHTML += node.body + "\n"
return parsedHTML
except Exception as error:
debugPrint("Error parsing org! Unexpected error: " + repr(error) + ".")