123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190 |
- <html>
- <head>
- <meta charset="{{ htmlspecialchars(__encoding__) }}" />
- <title>{{ htmlspecialchars(page.title) }} - xythobuz.org</title>
- <meta name="description" content="{{ htmlspecialchars(page.get("description", "Electronics & Software Projects")) }}" />
- <meta name="keywords" content="{{ htmlspecialchars(page.get("keywords", "xythobuz")) }}" />
- <link rel="author" href="xythobuz@xythobuz.org">
- <link rel="shortcut icon" href="img/favicon.ico">
- <script type="text/javascript" src="js/sh_main.js"></script>
- <link type="text/css" rel="stylesheet" href="css/sh_bright.min.css" />
- <link rel="stylesheet" href="css/style.css" type="text/css" media="screen" />
- <link rel="alternate" type="application/rss+xml" title="Blog Feed" href="rss.xml">
- <link rel="stylesheet" href="css/gh-fork-ribbon.css" />
- <link href='http://fonts.googleapis.com/css?family=Droid+Sans:400,700' rel='stylesheet' type='text/css'>
- <!--%
- if page.get("flattr", "false") == "true":
- print "<script type='text/javascript'>"
- print "/* <![CDATA[ */"
- print "(function() {"
- print "var s = document.createElement('script');"
- print "var t = document.getElementsByTagName('script')[0];"
- print "s.type = 'text/javascript';"
- print "s.async = true;"
- print "s.src = '//api.flattr.com/js/0.6/load.js?mode=auto&uid=xythobuz&category=text';"
- print "t.parentNode.insertBefore(s, t);"
- print "})();"
- print "/* ]]> */"
- print "</script>"
- %-->
- </head>
- <body onload="sh_highlightDocument('/js/sh/', '.min.js');">
- <!--%
- if page.get("github", "") != "":
- # GitHub Fork-Me Ribbon
- print '<div class="github-fork-ribbon-wrapper right">'
- print '<div class="github-fork-ribbon"><a href="'
- print page.github
- print '">Fork me on GitHub</a></div></div>'
- %-->
- <div id="header">
- <h1>xythobuz.org</h1>
- <h2>{{ page.get("funny", htmlspecialchars(page["title"])) }}</h2>
- </div>
- <!--%
- # if len("".join(["%s" % lang for lang in page["lang_links"]])) > 2:
- print '<div id="lang"><span id="lang">Translation: '
- print " | ".join(["<a href='%s'>%s</a>" % (url, lang) for lang, url in page["lang_links"].iteritems()])
- print "</span></div>"
- %-->
- <div class="colmask leftmenu"><div class="colleft">
- <div class="content">
-
- <!--%
- import sys
-
- # Flattr Button
- if page.get("flattr", "false") == "true":
- print '<div id="flattr">'
- sys.stdout.write('<a class="FlattrButton" href="')
- sys.stdout.write(BASE_URL)
- sys.stdout.write('/')
- sys.stdout.write(page.url)
- sys.stdout.write('" title="')
- sys.stdout.write(htmlspecialchars(page.title))
- sys.stdout.write('">')
- sys.stdout.write(htmlspecialchars(page.get("description", page.title)))
- sys.stdout.write("</a>\n")
- print '</div>'
-
- # Twitter Button
- if page.get("twitter", "") != "":
- print '<div id="twitter">'
- sys.stdout.write('<a href="https://twitter.com/share" class="twitter-share-button" data-via="')
- sys.stdout.write(page.twitter)
- sys.stdout.write('" data-dnt="true" data-related="')
- sys.stdout.write(page.twitter)
- sys.stdout.write('" data-count="vertical">Tweet</a>')
- sys.stdout.write('<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");')
- sys.stdout.write("</script>\n")
- print '</div>'
-
- # Reddit Button
- if page.get("reddit", "") != "":
- print '<div id="reddit">'
- sys.stdout.write('<script type="text/javascript">reddit_url = "')
- if (page.reddit == "true"):
- sys.stdout.write(BASE_URL)
- sys.stdout.write('/')
- sys.stdout.write(page.url)
- else:
- sys.stdout.write(page.reddit)
- sys.stdout.write('";</script>')
- sys.stdout.write("\n")
- sys.stdout.write('<script type="text/javascript" src="http://www.reddit.com/static/button/button2.js"></script>')
- sys.stdout.write("\n")
- print '</div>'
-
- # GitHub Fork Button
- if page.get("github", "") != "":
- print '<div id="github">'
- sys.stdout.write('<a href="')
- sys.stdout.write(page.github)
- sys.stdout.write('" class="gitforked-button gitforked-forks gitforked-watchers">Fork</a>')
- sys.stdout.write("\n")
- print '</div>'
- %-->
-
- {{ __content__ }}
-
- <!--%
- if page.get("comments", "false") == "true":
- print '<div id="disqus_thread"></div>'
- print '<script type="text/javascript">'
- print 'var disqus_shortname = "xythobuz";'
- print '(function() {'
- print 'var dsq = document.createElement("script"); dsq.type = "text/javascript"; dsq.async = true;'
- print 'dsq.src = "http://" + disqus_shortname + ".disqus.com/embed.js";'
- print '(document.getElementsByTagName("head")[0] || document.getElementsByTagName("body")[0]).appendChild(dsq);'
- print '})();'
- print '</script>'
- print '<noscript>Please enable JavaScript to view the <a href="http://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>'
- print '<a href="http://disqus.com" class="dsq-brlink">comments powered by <span class="logo-disqus">Disqus</span></a>'
- %-->
-
- </div>
- <div class="nav">
- <h3>Thomas Buck</h3>
-
- <div id="logo"><img id="logo" src="http://www.gravatar.com/avatar/8d18fec40a74782052fb4c007d212475?s=180" alt="Avatar"></div>
-
- <p id="bio">
- 19 year old Information Engineering student from Germany.
- Making cool stuff, mostly with AVR microcontrollers.
- </p>
-
- <iframe src="http://githubbadge.appspot.com/badge/xythobuz?a=0" style="border: 0;height: 142px;width: 200px;overflow: hidden;" frameBorder=0></iframe>
-
- <ul id="menuList">
- <!--%
- blanked = "a"
- mpages = [p for p in pages if "menu-position" in p and p.lang == "en"]
- mpages.sort(key=lambda p: int(p["menu-position"]))
- entry = '<li><a href="%s">%s</a></li>'
- for p in mpages:
- if int(p["menu-position"]) >= 10 and blanked == "a":
- blanked = "b"
- print '<br>'
- if int(p["menu-position"]) >= 55 and blanked == "b":
- blanked = "c"
- print '<br>'
- print(entry % (htmlspecialchars(p["url"]), htmlspecialchars(p["title"])))
- %-->
- </ul>
-
- <div id="recent">
- Recent blog posts:
- <ul id="recentList">
- <!--%
- from datetime import datetime
- posts = [p for p in pages if "post" in p] # get all blog post pages
- posts.sort(key=lambda p: p.get("date"), reverse=True) # sort post pages by date
- posts = posts[:5]
- for p in posts:
- print '<li class="recentList"><a href="%s">%s</a></li><li class="recentDate">%s</li>' % (p.url, p.post, p.date)
- %-->
- </ul>
- </div>
- </div>
- </div></div>
-
- <img id="dude" alt="The Dude" src="img/dude.png">
-
- <div id="footer">
- Built with <a href="http://bitbucket.org/obensonne/poole">Poole</a>
- ·
- Licensed as <a href="http://creativecommons.org/licenses/by/3.0">CC-BY</a>
- ·
- <a href="http://validator.w3.org/check?uri=referer">Validate HTML</a>
- ·
- <a href="http://jigsaw.w3.org/css-validator/validator?uri=xythobuz.org%2Fstyle.css&profile=css3">Validate CSS</a>
- ·
- <a href="http://feed1.w3.org/check.cgi?url={{ BASE_URL }}/rss.xml">Validate RSS</a>
- ·
- <a href="http://www.validome.org/google/validate?url={{ BASE_URL }}&googleTyp=SITEMAP">Validate Sitemap</a>
- </div>
- <!--%
- print '<script src="http://gitforked.com/api/1.1/button.js" type="text/javascript"></script>'
- %-->
- </body>
- </html>
|