Browse Source

first commit.

Signed-off-by: Nicholas Tan Jerome <nicholas.jerome@kit.edu>
Nicholas Tan Jerome 6 years ago
commit
65446bfb7f

BIN
.DS_Store


+ 49 - 0
index.py

@@ -0,0 +1,49 @@
+# coding=utf-8
+import os
+
+import tornado.httpserver
+import tornado.ioloop
+import tornado.options
+import tornado.web
+
+from tornado.options import define, options
+define("port", default=8000, help="run on the given port", type=int)
+
+
+class Application(tornado.web.Application):
+    def __init__(self):
+        handlers = [
+            (r"/", MainHandler),
+        ]
+        settings = dict(
+            template_path=os.path.join(os.path.dirname(__file__), "templates"),
+            static_path=os.path.join(os.path.dirname(__file__), "static"),
+            debug=True,
+        )
+        tornado.web.Application.__init__(self, handlers, **settings)
+
+
+class MainHandler(tornado.web.RequestHandler):
+    def get(self):
+        self.render(
+            "index.html",
+            title = """Preservation of three-dimensional anatomy in phosphatized 
+                fossil arthropods enriches evolutionary inference""",
+            author = """Achim H Schwermann, Tomy dos Santos Rolo, Michael S Caterino, 
+                Günter Bechly, Heiko Schmied, Tilo Baumbach, Thomas van de Kamp""",
+            institute = """Steinmann Institute for Geology, Mineralogy and Paleontology, 
+                University of Bonn, Bonn, Germany; ANKA/Institute for Photon Science and 
+                Synchrotron Radiation, Karlsruhe Institute of Technology, Eggenstein-Leopoldshafen, 
+                Germany; Department of Agricultural and Environmental Sciences, Clemson University, 
+                Clemson, United States; State Museum of Natural History Stuttgart, Stuttgart,Germany; 
+                Institute of Crop Science and Resource Conservation, University of Bonn, Bonn, Germany; 
+                Laboratory for Applications of Synchrotron Radiation, Karlsruhe Institute of Technology, 
+                Karlsruhe, Germany"""
+        )
+
+
+if __name__ == "__main__":
+    tornado.options.parse_command_line()
+    http_server = tornado.httpserver.HTTPServer(Application())
+    http_server.listen(options.port)
+    tornado.ioloop.IOLoop.instance().start()

BIN
static/.DS_Store


BIN
static/css/quicksand-bold-webfont.woff


BIN
static/css/quicksand-bold-webfont.woff2


BIN
static/css/quicksand-medium-webfont.woff


BIN
static/css/quicksand-medium-webfont.woff2


BIN
static/css/quicksand-regular-webfont.woff


BIN
static/css/quicksand-regular-webfont.woff2


+ 24 - 0
static/css/quicksand.css

@@ -0,0 +1,24 @@
+/* vietnamese */
+@font-face {
+  font-family: 'myquick';
+  font-style: normal;
+  font-weight: 400;
+  src: url(/static/font/Quicksand-Bold.ttf) format('ttf');
+  unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
+}
+/* latin-ext */
+@font-face {
+  font-family: 'myquick';
+  font-style: normal;
+  font-weight: 400;
+  src: url(/static/font/Quicksand-Bold.ttf) format('ttf');
+  unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
+}
+/* latin */
+@font-face {
+  font-family: 'myquick';
+  font-style: normal;
+  font-weight: 400;
+  src: url(/static/font/Quicksand-Bold.ttf) format('ttf');
+  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215;
+}

+ 167 - 0
static/css/style.css

@@ -0,0 +1,167 @@
+/* http://meyerweb.com/eric/tools/css/reset/ 
+   v2.0 | 20110126
+   License: none (public domain)
+*/
+
+html, body, div, span, applet, object, iframe,
+h1, h2, h3, h4, h5, h6, p, blockquote, pre,
+a, abbr, acronym, address, big, cite, code,
+del, dfn, em, img, ins, kbd, q, s, samp,
+small, strike, strong, sub, sup, tt, var,
+b, u, i, center,
+dl, dt, dd, ol, ul, li,
+fieldset, form, label, legend,
+table, caption, tbody, tfoot, thead, tr, th, td,
+article, aside, canvas, details, embed, 
+figure, figcaption, footer, header, hgroup, 
+menu, nav, output, ruby, section, summary,
+time, mark, audio, video {
+	margin: 0;
+	padding: 0;
+	border: 0;
+	font-size: 100%;
+	font: inherit;
+	vertical-align: baseline;
+}
+/* HTML5 display-role reset for older browsers */
+article, aside, details, figcaption, figure, 
+footer, header, hgroup, menu, nav, section {
+	display: block;
+}
+body {
+	line-height: 1;
+}
+ol, ul {
+	list-style: none;
+}
+blockquote, q {
+	quotes: none;
+}
+blockquote:before, blockquote:after,
+q:before, q:after {
+	content: '';
+	content: none;
+}
+table {
+	border-collapse: collapse;
+	border-spacing: 0;
+}
+
+/* Main CSS Styling */
+
+@font-face {
+    font-family: 'quicksandbold';
+    src: url('quicksand-bold-webfont.woff2') format('woff2'),
+         url('quicksand-bold-webfont.woff') format('woff');
+    font-weight: normal;
+    font-style: normal;
+
+}
+
+@font-face {
+    font-family: 'quicksandmedium';
+    src: url('quicksand-medium-webfont.woff2') format('woff2'),
+         url('quicksand-medium-webfont.woff') format('woff');
+    font-weight: normal;
+    font-style: normal;
+
+}
+
+@font-face {
+    font-family: 'quicksandregular';
+    src: url('quicksand-regular-webfont.woff2') format('woff2'),
+         url('quicksand-regular-webfont.woff') format('woff');
+    font-weight: normal;
+    font-style: normal;
+
+}
+
+#header {
+    text-align: right;
+}
+
+#header div {
+    display: inline-block;
+    margin-right: 5%;
+}
+
+hr {
+	border: 0;
+    height: 2px;
+    background-image: linear-gradient(
+        to right,
+        rgba(0, 0, 0, 0),
+        rgba(0, 0, 0, 0.75),
+        rgba(0, 0, 0, 0));
+}
+
+#title {
+    padding: 30px 30px 0 30px;
+	font-family: 'quicksandregular';
+    font-weight: bold;
+	font-size: 2em;
+}
+
+#authors {
+	padding: 30px 30px 0 30px;
+	font-family: 'quicksandregular';
+    font-weight: bold;
+	font-size: 15px;
+	color: #a8a8a8;
+}
+
+#institute {
+	padding: 30px 30px 0 30px;
+	font-size: 15px;
+	font-family: 'quicksandregular';
+	font-weight: bold;
+	color: #696969;
+}
+
+#subheader {
+    padding: 30px;
+	text-align: center;
+    vertical-align: middle;
+	font-weight: bold;
+	font-size: 25px;
+}
+
+#subheader input {
+    vertical-align: middle;
+}
+
+.image {
+	text-align: center;
+	float: left;
+	width: 32%;
+	padding: 5px;
+}
+
+.icon {
+	width: 3%;
+	height: 3%;
+}
+
+.cont img, .cont input {
+    vertical-align: middle;
+}
+
+#abstract {
+    float: left;
+	padding-left: 5%;
+	font-family: 'Quicksand';
+	font-size: 15px;
+	width: 45%;
+	height: 300px;
+}
+
+#details {
+    float: left;
+	background-color: #ededed;
+	border: 1px solid #bdbdbd;
+	width: 350px;
+	height: 280px;
+	border-radius: 10px;
+	right: 8%;
+    bottom: 8%;
+}

BIN
static/font/Quicksand-Bold.ttf


BIN
static/font/Quicksand-Light.ttf


BIN
static/font/Quicksand-Medium.ttf


BIN
static/font/Quicksand-Regular.ttf


BIN
static/img/.DS_Store


BIN
static/img/icon/astor.png


+ 83 - 0
static/img/icon/next.svg

@@ -0,0 +1,83 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   version="1.1"
+   id="Capa_1"
+   x="0px"
+   y="0px"
+   width="188.7"
+   height="306"
+   viewBox="0 0 188.7 306"
+   xml:space="preserve"
+   inkscape:version="0.91 r13725"
+   sodipodi:docname="Next.svg"><metadata
+     id="metadata42"><rdf:RDF><cc:Work
+         rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
+     id="defs40" /><sodipodi:namedview
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="0"
+     objecttolerance="10"
+     gridtolerance="10"
+     guidetolerance="10"
+     inkscape:pageopacity="0"
+     inkscape:pageshadow="2"
+     inkscape:window-width="1680"
+     inkscape:window-height="975"
+     id="namedview38"
+     showgrid="false"
+     fit-margin-top="0"
+     fit-margin-left="0"
+     fit-margin-right="0"
+     fit-margin-bottom="0"
+     inkscape:zoom="0.77124183"
+     inkscape:cx="94.35"
+     inkscape:cy="153"
+     inkscape:window-x="-9"
+     inkscape:window-y="-9"
+     inkscape:window-maximized="1"
+     inkscape:current-layer="Capa_1" /><g
+     id="g3"
+     transform="translate(-58.65,0)"><g
+       id="chevron-right"><polygon
+         points="94.35,0 58.65,35.7 175.95,153 58.65,270.3 94.35,306 247.35,153 "
+         id="polygon6" /></g></g><g
+     id="g8"
+     transform="translate(-58.65,0)" /><g
+     id="g10"
+     transform="translate(-58.65,0)" /><g
+     id="g12"
+     transform="translate(-58.65,0)" /><g
+     id="g14"
+     transform="translate(-58.65,0)" /><g
+     id="g16"
+     transform="translate(-58.65,0)" /><g
+     id="g18"
+     transform="translate(-58.65,0)" /><g
+     id="g20"
+     transform="translate(-58.65,0)" /><g
+     id="g22"
+     transform="translate(-58.65,0)" /><g
+     id="g24"
+     transform="translate(-58.65,0)" /><g
+     id="g26"
+     transform="translate(-58.65,0)" /><g
+     id="g28"
+     transform="translate(-58.65,0)" /><g
+     id="g30"
+     transform="translate(-58.65,0)" /><g
+     id="g32"
+     transform="translate(-58.65,0)" /><g
+     id="g34"
+     transform="translate(-58.65,0)" /><g
+     id="g36"
+     transform="translate(-58.65,0)" /></svg>

BIN
static/img/icon/nova.png


+ 83 - 0
static/img/icon/prev.svg

@@ -0,0 +1,83 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0)  -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   version="1.1"
+   id="Capa_1"
+   x="0px"
+   y="0px"
+   width="188.7"
+   height="306"
+   viewBox="0 0 188.7 306"
+   xml:space="preserve"
+   inkscape:version="0.91 r13725"
+   sodipodi:docname="Previous.svg"><metadata
+     id="metadata42"><rdf:RDF><cc:Work
+         rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
+     id="defs40" /><sodipodi:namedview
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="0"
+     objecttolerance="10"
+     gridtolerance="10"
+     guidetolerance="10"
+     inkscape:pageopacity="0"
+     inkscape:pageshadow="2"
+     inkscape:window-width="1680"
+     inkscape:window-height="975"
+     id="namedview38"
+     showgrid="false"
+     fit-margin-top="0"
+     fit-margin-left="0"
+     fit-margin-right="0"
+     fit-margin-bottom="0"
+     inkscape:zoom="0.77124183"
+     inkscape:cx="94.35"
+     inkscape:cy="153"
+     inkscape:window-x="-9"
+     inkscape:window-y="-9"
+     inkscape:window-maximized="1"
+     inkscape:current-layer="Capa_1" /><g
+     id="g3"
+     transform="matrix(-1,0,0,1,247.35,0)"><g
+       id="chevron-right"><polygon
+         points="58.65,35.7 175.95,153 58.65,270.3 94.35,306 247.35,153 94.35,0 "
+         id="polygon6" /></g></g><g
+     id="g8"
+     transform="translate(-58.65,0)" /><g
+     id="g10"
+     transform="translate(-58.65,0)" /><g
+     id="g12"
+     transform="translate(-58.65,0)" /><g
+     id="g14"
+     transform="translate(-58.65,0)" /><g
+     id="g16"
+     transform="translate(-58.65,0)" /><g
+     id="g18"
+     transform="translate(-58.65,0)" /><g
+     id="g20"
+     transform="translate(-58.65,0)" /><g
+     id="g22"
+     transform="translate(-58.65,0)" /><g
+     id="g24"
+     transform="translate(-58.65,0)" /><g
+     id="g26"
+     transform="translate(-58.65,0)" /><g
+     id="g28"
+     transform="translate(-58.65,0)" /><g
+     id="g30"
+     transform="translate(-58.65,0)" /><g
+     id="g32"
+     transform="translate(-58.65,0)" /><g
+     id="g34"
+     transform="translate(-58.65,0)" /><g
+     id="g36"
+     transform="translate(-58.65,0)" /></svg>

+ 0 - 0
static/js/script.js


+ 93 - 0
templates/index.html

@@ -0,0 +1,93 @@
+<!doctype html>
+
+<html lang="en">
+<head>
+    <meta charset="utf-8">
+
+    <title>The Fossils Data</title>
+    <meta name="description" content="Institute for Data Processing and Electronics">
+    <meta name="author" content="Nicholas Tan Jerome">
+
+    <link rel="stylesheet" href="{{ static_url("css/style.css") }}">
+
+    <!--[if lt IE 9]>
+      <script src="https://cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv.js"></script>
+    <![endif]-->
+</head>
+
+<body>
+    <div id="header">
+        <div>
+            <a href="https://ufo.kit.edu/dis/index.php/project/astor/" target="_blank">
+                <img src="{{ static_url("img/icon/astor.png") }}" height="50px" width="auto"/>
+            </a>
+        </div>
+        <div>
+            <a href="https://ufo.kit.edu/dis/index.php/project/nova/" target="_blank">
+                <img src="{{ static_url("img/icon/nova.png") }}" height="50px" width="auto"/>
+            </a>
+        </div>
+    </div>
+
+    <hr>
+    
+    <div id="title">
+        <h1>{{ title }}</h1>
+    </div>
+    
+    <div id="authors">
+        <p>{{ author }}</p>
+    </div>
+
+    <div id="institute">
+        <p>{{ institute }}</p>
+    </div>
+    
+    <div id="subheader">Sample: <input id="sample_number" type="text" placeholder="sample number" size="10" class="search" onkeydown="search(this)"/></div>
+
+    <div>
+        <div class="image">
+            <div class="cont">
+                <img class="icon" onclick="onClick1('left')" src="{{ static_url("img/icon/prev.svg") }}"/>
+	            <input id="input1" type="text" value="" placeholder="0001-2016" size="6" class="search" onkeydown="searchImage1(this)"/>
+                <img class="icon" onclick="onClick1('right')" src="{{ static_url("img/icon/next.svg") }}"/>
+            </div>
+	        <div class="photowrapper"><img id="image1" class="photo" style="transform:scale(1); transform-origin: 0% 0%" src="images/sample1/left/0001.jpg"/></div>
+	        <div id="slide1"></div>
+        </div>
+
+        <div class="image">
+            <div class="cont">
+                <img class="icon" onclick="onClick1('left')" src="{{ static_url("img/icon/prev.svg") }}"/>
+	            <input id="input1" type="text" value="" placeholder="0001-2016" size="6" class="search" onkeydown="searchImage1(this)"/>
+                <img class="icon" onclick="onClick1('right')" src="{{ static_url("img/icon/next.svg") }}"/>
+            </div>
+	        <div class="photowrapper"><img id="image2" class="photo" style="transform:scale(1); transform-origin: 0% 0%" src="images/sample1/top/0001.jpg"/></div>
+	        <div id="slide2"></div>
+        </div>
+
+        <div class="image">
+            <div class="cont">
+                <img class="icon" onclick="onClick1('left')" src="{{ static_url("img/icon/prev.svg") }}"/>
+	            <input id="input1" type="text" value="" placeholder="0001-2016" size="6" class="search" onkeydown="searchImage1(this)"/>
+                <img class="icon" onclick="onClick1('right')" src="{{ static_url("img/icon/next.svg") }}"/>
+            </div>
+	        <div class="photowrapper"><img id="image3" class="photo" style="transform:scale(1); transform-origin: 0% 0%" src="images/sample1/front/0001.jpg"/></div>
+	        <div id="slide3"></div>
+        </div>
+    </div>
+    
+    <div id="text">
+        <div id="abstract">
+            <p><span style="color:#72bcd4; font-weight:bold; font-size:20px">Description</span><i>Xenomorphia resurrecta</i>, male; well-preserved, head hollow</p>
+        </div>
+        <div id="details">
+            <div style="padding-left:30px">
+            
+            </div>
+        </div>
+    </div>
+
+<script src="{{ static_url("js/script.js") }}"></script>
+</body>
+</html>