[Jinja2] init
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
#! /usr/bin/env python3
|
||||
from jinja2 import Environment, FileSystemLoader
|
||||
import os
|
||||
|
||||
PAGES = [
|
||||
@@ -14,34 +14,52 @@ PAGES = [
|
||||
{'name': 'deconference', 'titleSR': 'Dekonferencija', 'titleEN': 'Deconference', 'style': 'deconference'},
|
||||
]
|
||||
|
||||
def buildPage(filename: str, pageTitle: str, pageHtml: str, pageStyle: str, template: str) -> str:
|
||||
template = template.replace('<!--TITLE-->', pageTitle)
|
||||
style = '' if not pageStyle else f'<link rel=\"stylesheet\" href=\"/styles/{pageStyle}.css\">'
|
||||
template = template.replace('<!--ADDITIONAL_STYLE-->', style)
|
||||
template = template.replace('PAGE_NAME', filename)
|
||||
template = template.replace('<!--MAIN-->', pageHtml)
|
||||
return template
|
||||
env = Environment(loader=FileSystemLoader('template'))
|
||||
|
||||
def main():
|
||||
os.makedirs('site/en/', exist_ok=True)
|
||||
with open('template/page-en.html') as fTempEN, open('template/page-sr.html') as fTempSR:
|
||||
templateSR = fTempSR.read()
|
||||
templateEN = fTempEN.read()
|
||||
for page in PAGES:
|
||||
with open(f'pages/sr/{page["name"]}.html') as f:
|
||||
pageHtml = "<div class='cover-wrap'><img src='/img/students_bug.jpg' alt='Studenti su nasli bug' /></div>"
|
||||
pageHtml += f.read()
|
||||
html = buildPage(page['name'], page['titleSR'], pageHtml, page['style'], templateSR)
|
||||
f = open(f'site/{page["name"]}.html', 'w')
|
||||
f.write(html)
|
||||
f.close()
|
||||
with open(f'pages/en/{page["name"]}.html') as f:
|
||||
pageHtml = "<div class='cover-wrap'><img src='/img/students_bug.jpg' alt='Students found the bug' /></div>"
|
||||
pageHtml += f.read()
|
||||
html = buildPage(page['name'], page['titleEN'], pageHtml, page['style'], templateEN)
|
||||
f = open(f'site/en/{page["name"]}.html', 'w')
|
||||
f.write(html)
|
||||
f.close()
|
||||
for page in PAGES:
|
||||
# Build SR Page
|
||||
with open(f'pages/sr/{page["name"]}.html') as f:
|
||||
page_content = "<div class='cover-wrap'><img src='/img/students_bug.jpg' alt='Studenti su nasli bug' /></div"
|
||||
page_content += f.read()
|
||||
|
||||
sr_html = env.get_template('page-sr.html').render(
|
||||
title=page['titleSR'],
|
||||
content=page_content,
|
||||
extra_styles=f'<link rel="stylesheet" href="/styles/{page["style"]}.css">' if page['style'] else '',
|
||||
lang="sr",
|
||||
sr_link=f"/en/{page['name']}"
|
||||
)
|
||||
|
||||
sr_filename = "index.html" if page['name'] == 'index' else f"{page['name']}.html"
|
||||
with open(f'site/{sr_filename}', 'w') as f:
|
||||
f.write(sr_html)
|
||||
|
||||
# Build EN Page
|
||||
with open(f'pages/en/{page["name"]}.html') as f:
|
||||
page_content = "<div class='cover-wrap'><img src='/img/students_bug.jpg' alt='Students found the bug' /></div"
|
||||
page_content += f.read()
|
||||
|
||||
en_html = env.get_template('page-en.html').render(
|
||||
title=page['titleEN'],
|
||||
content=page_content,
|
||||
extra_styles=f'<link rel="stylesheet" href="/styles/{page["style"]}.css">' if page['style'] else '',
|
||||
lang="en",
|
||||
sr_link=f"/{page['name']}"
|
||||
)
|
||||
|
||||
en_filename = "index.html" if page['name'] == 'index' else f"{page['name']}.html"
|
||||
with open(f'site/en/{en_filename}', 'w') as f:
|
||||
f.write(en_html)
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user