#!/usr/bin/env python3
LICENSE = """
"""
BaseHTML = """
{LICENSE}
{TITLE}
{INFO}
{BOARDS}
"""
InfoHTML = """
"""
BoardHTML = """
"""
from markdown import Markdown
def SplitPop(String, Key):
List = String.split(Key)
for i,s in enumerate(List):
if not s:
List.pop(i)
return List
def GetHeading(HTML):
return 'h' + HTML.split('')[0]
def GetDataHTML():
Path = 'Data.md'
try:
with open(Path, 'r') as f:
return Markdown().convert(f.read()).replace('\n','')
except Exception:
print("Can't load {} file for reading. Exiting.".format(Path))
exit(1)
def GetBoards(Data):
Boards = SplitPop(Data, ''.format(Heading))[0],
'{}>'.format(Heading))
Title, Checkbox = GetBoardParams(Elements[0])
Board = Template.format(
H=Heading,
TITLE=Title,
CHECKBOX=Checkbox,
CONTENT=Elements[1]
)
return Board
def WriteHTML(Info, Boards):
Path = 'index.html'
InfoBoard = GenBoard(Info, InfoHTML)
HTMLBoards = ''
for b in Boards:
HTMLBoards += GenBoard(b, BoardHTML)
Heading = GetHeading(Info)
Title = SplitPop(
SplitPop(
Info,
'<{}>'.format(Heading))[0],
'{}>'.format(Heading))[0]
Title, Checkbox = GetBoardParams(Title)
try:
with open(Path, 'w') as f:
f.write(
BaseHTML.format(
LICENSE=LICENSE,
TITLE=Title,
CHECKBOX=Checkbox,
INFO=InfoBoard,
BOARDS=HTMLBoards))
return True
except Exception:
raise
print("Can't load {} file for writing. Exiting.".format(Path))
exit(1)
def Main():
Boards = GetBoards(
GetDataHTML().replace(
'