diff options
-rwxr-xr-x | pyblog | 181 |
1 files changed, 180 insertions, 1 deletions
@@ -348,7 +348,8 @@ def generate_submenu(): htmly_website_page = "<ul>" htmly_website_page += "<a href='/website/bts-sio.html' class='sublia'><li><span class='subleft-lia'></span><span class='subcenter-lia'>bts-sio</span><span class='subright-lia'></span></li></a>" for name in os.listdir(os.path.join(BUILDDIR, "website/Documents")): - htmly_website_page += "<a href='/website/Documents/"+name+"' class='sublia'><li><span class='subleft-lia'></span><span class='subcenter-lia'>"+name.split('.html')[0]+"</span><span class='subright-lia'></span></li></a>" + if name != "Situation1" and name != "Situation2": + htmly_website_page += "<a href='/website/Documents/"+name+"' class='sublia'><li><span class='subleft-lia'></span><span class='subcenter-lia'>"+name.split('.html')[0]+"</span><span class='subright-lia'></span></li></a>" htmly_website_page += "</ul>" # Writing the menu in all pages contained in the variable in place of the -- generate submenu here -- @@ -363,6 +364,181 @@ def generate_submenu(): os.remove(tmppath) +def generate_situation1menu(): + """Generate situation1menu.""" + + sys.stderr.write("generating situation1menu\n") + + documents_fileList = [] + documents_fileList.append("/website/Documents/situation-pro-1.html") + + fd, tmppath = tempfile.mkstemp() + os.close(fd) + + htmly_website_page = "" + + if os.path.exists(BUILDDIR+"/website/Documents/Situation1"): + + # Put in a list the pages where the menu will be written + for root, dirs, files in os.walk(BUILDDIR+"/website/Documents/Situation1"): + for name in files: + if name.endswith(".html"): + try: + documents_fileList.append(os.path.join(root.split('build')[1], name)) + except IndexError: + documents_fileList.append(name) + + # Generate the string who contain the links of the menu + htmly_website_page = "<ul>" + for name in os.listdir(os.path.join(BUILDDIR, "website/Documents/Situation1")): + htmly_website_page += "<a href='/website/Documents/Situation1/"+name+"' class='situation1lia'><li><span class='situation1left-lia'></span><span class='situation1center-lia'>"+name.split('.html')[0]+"</span><span class='situation1right-lia'></span></li></a>" + htmly_website_page += "</ul>" + + # Writing the menu in all pages contained in the variable in place of the -- generate submenu here -- + for document_file in documents_fileList: + with open(tmppath, 'w', encoding='utf-8') as tmpfile: + if os.path.exists("build"+document_file): + with open("build"+document_file, 'r', encoding='utf-8') as indexmd: + lines = indexmd.readlines() + with open("build"+document_file, 'w', encoding='utf-8') as indexmd: + for line in lines: + indexmd.write(re.sub(r'-- generate situation1menu here --', htmly_website_page, line)) + + os.remove(tmppath) + +def generate_situation2menu(): + """Generate situation2menu.""" + + documents_fileList = [] + documents_fileList.append("/website/Documents/situation-pro-2.html") + + fd, tmppath = tempfile.mkstemp() + os.close(fd) + + htmly_website_page = "" + + if os.path.exists(BUILDDIR+"/website/Documents/Situation2"): + sys.stderr.write("generating situation2menu\n") + + # Put in a list the pages where the menu will be written + for root, dirs, files in os.walk(BUILDDIR+"/website/Documents/Situation2"): + for name in files: + if name.endswith(".html"): + try: + documents_fileList.append(os.path.join(root.split('build')[1], name)) + except IndexError: + documents_fileList.append(name) + + # Generate the string who contain the links of the menu + htmly_website_page = "<ul>" + for name in os.listdir(os.path.join(BUILDDIR, "website/Documents/Situation2")): + htmly_website_page += "<a href='/website/Documents/Situation2/"+name+"' class='situation2lia'><li><span class='situation2left-lia'></span><span class='situation2center-lia'>"+name.split('.html')[0]+"</span><span class='situation2right-lia'></span></li></a>" + htmly_website_page += "</ul>" + + # Writing the menu in all pages contained in the variable in place of the -- generate submenu here -- + for document_file in documents_fileList: + with open(tmppath, 'w', encoding='utf-8') as tmpfile: + if os.path.exists("build"+document_file): + with open("build"+document_file, 'r', encoding='utf-8') as indexmd: + lines = indexmd.readlines() + with open("build"+document_file, 'w', encoding='utf-8') as indexmd: + for line in lines: + indexmd.write(re.sub(r'-- generate situation2menu here --', htmly_website_page, line)) + + os.remove(tmppath) + +def generate_table(): + """Generate table.""" + + first_comp = 1 + first_pr = 1 + tr_class = "odd" + + documents_fileList = [] + documents_fileList.append("/website/bts-sio.html") + + fd, tmppath = tempfile.mkstemp() + os.close(fd) + + htmly_website_page = "" + + if os.path.exists(BUILDDIR+"/website/bts-sio.html"): + sys.stderr.write("generating table\n") + + # Put in a list the pages where the menu will be written + #for root, dirs, files in os.walk(BUILDDIR+"/website/Documents/Situation2"): + # for name in files: + # if name.endswith(".html"): + # try: + # documents_fileList.append(os.path.join(root.split('build')[1], name)) + # except IndexError: + # documents_fileList.append(name) + + # Generate the string who contain the links of the menu + htmly_website_page = "<ul>" + for name in os.listdir(os.path.join(BUILDDIR, "website/Documents/Situation2")): + htmly_website_page += "<a href='/website/Documents/Situation2/"+name+"' class='situation2lia'><li><span class='situation2left-lia'></span><span class='situation2center-lia'>"+name.split('.html')[0]+"</span><span class='situation2right-lia'></span></li></a>" + htmly_website_page += "</ul>" + + # Writing the menu in all pages contained in the variable in place of the -- generate submenu here -- + for document_file in documents_fileList: + with open(tmppath, 'w', encoding='utf-8') as tmpfile: + if os.path.exists("build"+document_file): + with open("build"+document_file, 'r', encoding='utf-8') as indexmd: + lines = indexmd.readlines() + with open("build"+document_file, 'w', encoding='utf-8') as indexmd: + for line in lines: + indexmd.write(re.sub(r'<pre>-- table --', '<table><colgroup><col width="18%"></col><col width="16%"></col><col width="23%"></col></colgroup><thead><tr class="header"><th>Compétence</th><th>Activité</th><th>Justification</th></tr></thead><tbody class="skill-table">', line)) + with open("build"+document_file, 'r', encoding='utf-8') as indexmd: + lines = indexmd.readlines() + with open("build"+document_file, 'w', encoding='utf-8') as indexmd: + for line in lines: + if (re.match('^\$.*', line) and first_pr == 1): + line_edited='<tr class="'+tr_class+'">' + indexmd.write(re.sub(r'^\$.*', line_edited, line)) + first_pr = 0 + first_comp = 1 + elif (re.match('^\$.*', line)): + if (tr_class == "odd"): + tr_class = "even" + else: + tr_class = "odd" + line_edited='</tr><tr class="'+tr_class+'">' + indexmd.write(re.sub(r'^\$.*', line_edited, line)) + else: + indexmd.write(line) + with open("build"+document_file, 'r', encoding='utf-8') as indexmd: + lines = indexmd.readlines() + with open("build"+document_file, 'w', encoding='utf-8') as indexmd: + for line in lines: + + if (re.match('^ \$.*\$$', line)): + indexmd.write(re.sub(r'^ \$.*\$$', "<li>"+line.split("$")[1]+'</li>', line)) + first_comp = 1 + elif (re.match('^ \$.*[^\$]$', line)): + if first_comp == 1: + indexmd.write(re.sub(r'^ \$.*[^\$]$', "<td><ul><li>"+line.split("$")[1]+'</li>', line)) + first_comp = 0 + else: + indexmd.write(re.sub(r'^ \$.*[^\$]$', "<li>"+line.split("$")[1]+'</li>', line)) + else: + indexmd.write(line) + with open("build"+document_file, 'r', encoding='utf-8') as indexmd: + lines = indexmd.readlines() + with open("build"+document_file, 'w', encoding='utf-8') as indexmd: + for line in lines: + if (re.match('^ \$.*', line)): + indexmd.write(re.sub(r'^ \$.*', "</td></ul><td><ul><li>"+line.split("$")[1]+"</li></ul></td>", line)) + else: + indexmd.write(re.sub(r'^ \$.*', "</td></ul><td><ul><li>"+line+"</li></ul></td>", line)) + with open("build"+document_file, 'r', encoding='utf-8') as indexmd: + lines = indexmd.readlines() + with open("build"+document_file, 'w', encoding='utf-8') as indexmd: + for line in lines: + indexmd.write(re.sub(r"-- end table --", "</tbody></table>", line)) + + os.remove(tmppath) + def generate_blog_list(feed): """"Generate blog list """ @@ -883,6 +1059,9 @@ def generate_index_and_feed(): generate_index(feed) generate_menu() generate_submenu() + generate_situation1menu() + generate_situation2menu() + generate_table() generate_blog_list(feed) generate_notes_list() rewrite_title() |