Your Name 5 years ago
commit 061f84e0bf

@ -66,15 +66,26 @@ def filenameforlink(href):
href = urlquote(href)
return href
def rewritelinks (html):
t = html5lib.parseFragment(html, treebuilder = "etree", namespaceHTMLElements = False)
# remove links to wiki File: pages
for a in t.findall(".//a[@class='image']"): # select img wrapping a
href = a.attrib.get('href')
if a.findall(".//img") and 'File:' in href: # ensure a has child: img
a.attrib['href'] = 'javascript:void(0);' # disable href
def rewriteimglinks(tree, page):
# invoke after img src has been rewritten
# To: remove links to wiki File on all pages
# but Overview_main_page page where link to publication page is added
if page.name == 'Overview main page':
for div_parent in tree.findall(".//div[@class='tooltip']"):
anchor_of_img = div_parent.find(".//div/a")
if anchor_of_img.find(".//img") is not None: # <a> needs child <img>
a_tag = div_parent.find(".//p/span/a")
publication_href = a_tag.attrib.get('href')
anchor_of_img.attrib['href'] = publication_href
else:
for a in tree.findall(".//a[@class='image']"): # select img wrapping a
if a.findall(".//img"): # ensure a has child: img
a.attrib['href'] = 'javascript:void(0);' # disable href
return tree
def rewritelinks(html):
t = html5lib.parseFragment(html, treebuilder = "etree", namespaceHTMLElements = False)
for a in t.findall(".//*[@href]"):
linkclass = a.attrib.get("class", "")
href = a.attrib.get("href")
@ -89,7 +100,7 @@ def rewritelinks (html):
return html
def rewriteimgs(html):
def rewriteimgs(html, page):
t = html5lib.parseFragment(html, treebuilder = "etree", namespaceHTMLElements = False)
# replace images url with local image in ../images
@ -119,6 +130,9 @@ def rewriteimgs(html):
img.attrib['srcset'] = "" # rm srcset value:it prevent imgs displaying
img.attrib['width'] = ""
img.attrib['height'] = ""
t = rewriteimglinks(tree=t, page=page)
html = ET.tostring(t, method="html", encoding="unicode")
return html
@ -126,7 +140,7 @@ def dumppage(p, template, rewrite_images=True):
htmlsrc = site.parse(page=p.name)['text']['*']
htmlsrc = rewritelinks(htmlsrc)
if rewrite_images:
htmlsrc = rewriteimgs(htmlsrc)
htmlsrc = rewriteimgs(html=htmlsrc, page=p)
html = template.render(page=p, body=htmlsrc, staticpath='.')
with open(os.path.join(args.output, filenameforpage(p)), 'w') as f:
f.write(html)

@ -293,3 +293,5 @@ margin-left: 40px;
height: 2px;
background-color: #0BEFEB;
}
a.image {cursor: pointer!important;} /* KEEP THIS: show imgs as link in Overview */

@ -1,151 +1,115 @@
#top {
padding-top: 20px;
padding-left: 50px;
}
body {
background-color: #F4EBE8;
font-family: Roboto Mono;
font-size:11.5px;
font-size:14px;
}
/* Page title */
h1 {
position: fixed;
right:0%;
top:3%;
top:5%;
text-align: right;
background-color: #0BEFEB;
padding: 15px 85px 15px 30px;
z-index: 10;
color: #371F10;
font-size: 28px;
opacity: 0.7;
}
/*
h1 {
position: fixed;
right:0%;
top:3%;
text-align: right;
background-color: transparent;
padding: 10px 30px 30px 20px;
padding: 3px 35px 3px 10px;
z-index: 10;
color: black;
font-size: 28px;
border: 1px solid blue;
border-right: none;
opacity: 0.7;
color: #371F10;
}
*/
/* Organizations list */
.collapsible{
padding-left: 70px;
line-height: 0%;
line-height: 1;
color: #371F10;
}
.active, .collapsible:hover {
color: red;
color: blue;
cursor: pointer;
}
.active, .collapsible:after {
padding-top: 10px;
color: #054646;
padding-left: 85px;
color: #371F10;
font-weight: bold;
}
/* Droped-down publication links */
.content {
max-height: 0;
overflow: hidden;
transition: max-height 0.2s ease-out;
padding-left: 50px;
background-color: #86a2a2;
background-color: #371F10;
position: relative;
line-height: 30px;
margin-left: 85px;
color: white;
font-size: 14px;
}
.up {
position: fixed;
font-weight: bolder;
bottom: 0%;
right: 15.1%;
background-color: blue;
z-index: 10;
padding: 10px;
border: none;
.content a {
color:white;
text-decoration: none;
}
.down {
position: fixed;
font-weight: bolder;
bottom: 0%;
right: 12.8%;
background-color: blue;
z-index: 10;
padding: 10px;
border: none;
.content a:hover {
color: blue;
cursor: pointer;
}
.top {
/* Scroll column */
.scrollcolumn {
position: fixed;
font-weight: bolder;
bottom: 0%;
right: 17.3%;
background-color: blue;
display: inline;
top:35%;
right:0%;
width: 60px;
outline: none;
z-index: 10;
padding: 10px;
border: none;
text-align: center;
}
.bottom {
position: fixed;
font-weight: bolder;
bottom: 0%;
right: 10%;
background-color: blue;
z-index: 10;
padding: 10px;
border: none;
/* Scroll buttons */
.scrl {
background-color: white;
cursor: pointer;
border:none;
font-size: 15px;
margin-top: 10px;
height: 60px;
width: 60px;
}
.indexlink {
position: fixed;
text-decoration: none;
font-size: 40px;
bottom: 0%;
right: 0%;
background-color: transparent;
border: none;
border-right-color: transparent;
z-index: 10;
padding: 0px 20px 10px 10px;
border: none;
.scrl:hover {
background-color: #0BEFEB;
}
.timeline {
position: fixed;
font-size: 20px;
bottom: 0%;
right: 3%;
background-color: transparent;
border: none;
border-right-color: transparent;
/* Scroll button title */
.scbt {
visibility: hidden;
width: 120px;
background-color: black;
color: #fff;
text-align: center;
border-radius: 6px;
padding: 5px 0;
font-size: 15px;
right: 50px;
z-index: 10;
padding: 0px 30px 20px 10px;
border: none;
position: absolute;
}
.timeline a {
text-decoration: none;
}
.indexlink a {
text-decoration: none;
}
#top {
padding-top: 42px;
}
.up:hover, .down:hover, .top:hover, .bottom:hover {
cursor: pointer;
color: white;
.scrl:hover > .scbt {
visibility: visible;
}

@ -59,6 +59,7 @@ h1 {
color: black;
font-size: 27px;
color: #371F10;
max-width: 90%;
}
h2{

@ -10,12 +10,14 @@
<title>{{ page.name }}</title>
</head>
<body>
<h1>&#9636; &nbsp; {{ page.name }}</h1>
<button onclick="scrollWin(0,5000)" class="down" title="Down">&#8991;</button>
<button onclick="scrollWin(0,-5000)" class="up" title="Up">&#8988;</button>
<button onclick="scrollToTop()" class="top" title="Top">&#9140;</button>
<button onclick="scrollToBottom()" class="bottom" title="Bottom">&#9141;</button>
<h1>&#9636; {{ page.name }}</h1>
<div class="scrollcolumn">
<button onclick="scrollWin(0,-5000)" class="up scrl">&#8988;<span class="scbt">Up</span></button>
<button onclick="scrollWin(0,5000)" class="down scrl">&#8991;<span class="scbt">Down</span></button>
<button onclick="scrollToTop()" class="top scrl">&#9140;<span class="scbt">Top</span></button>
<button onclick="scrollToBottom()" class="bottom scrl">&#9141;<span class="scbt">Bottom</span></button>
</div>
<div id="body">{{ body|safe }}</div>

@ -14,11 +14,11 @@
<h1>{{ page.name }} &#8629;</h1>
<div class="viewnav">
<div class="collapsible2 viewbtn">&#8632;</div>
<div class="collapsible2 viewbtn">&#10063;</div>
<div class="content2">
<!-- <div class="header" id="myHeader"> -->
<p><button class="btn" onclick="myFunction()">100%</button></p>
<p><button class="btn" onclick="myFunction2()">overview</button></p>
<p><button class="btn" onclick="myFunction()">&#9607;</button></p>
<p><button class="btn" onclick="myFunction2()">&#9619;</button></p>
</div>
</div>
<div>

Loading…
Cancel
Save