Commit 335f7199 authored by Felix Anders's avatar Felix Anders

Init

parents
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
html, body
{
font-family: 'Open Sans', 'Noto Sans', 'Roboto', sans-serif;
font-size: 1.05rem;
margin: 0;
padding: 0;
}
html
{
background-image: url('./../img/mike-chavarri-553396-unsplash.jpg');
background-attachment: fixed;
background-position: center;
background-size: auto 100%;
}
#sidebarVisible { display: none; }
#sidebar
{
display: block;
position: absolute;
margin: 0;
background-color: #00000080;
color: White;
padding: 20px;
box-sizing: border-box;
z-index: 2;
transition: 0.5s;
overflow: visible;
}
#sidebar h1, #sidebar h2, #sidebar h3 { margin: 0; }
#sidebar > #sidebarSwitch
{
display: block;
position: absolute;
background-color: #00000080;
padding: 0.3em;
}
#sidebar > #sidebarSwitch > img
{
display: block;
width: 30px;
height: 30px;
margin-left: auto;
margin-right: auto;
}
#sidebar > .scrollContainer
{
overflow-y: auto;
overflow-x: hidden;
position: relative;
left: 0;
top: 0;
width: 100%;
height: 100%;
}
#sidebar button
{
position: relative;
display: block;
width: 100%;
appearance: none;
-webkit-appearance: none;
-moz-appearance: none;
-ms-appearance: none;
-o-appearance: none;
background-color: #ffffff30;
border: 1px solid DarkOrange;
border-radius: 5px;
box-sizing: border-box;
padding: 0.25em;
font: inherit;
color: white;
outline: none;
margin-top: 5em;
transition: 0.3s;
}
#sidebar button:hover { background-color: #ff8c0030; }
#sidebar button:active { background-color: #ff8c0080; }
#sidebar button:disabled { background-color: #FFFFFF10; border: 0; color: #FFFFFF40; }
@media (orientation: landscape)
{
#sidebar
{
left: 0;
top: 0;
left: -25%;
width: 25%;
height: 100%;
}
#sidebarVisible:checked + #sidebar
{
left: 0;
}
#sidebar > #sidebarSwitch
{
left: 100%;
top: 0;
}
#sidebarVisible:checked + #sidebar > #sidebarSwitch > img { transform: scale(-1,1); }
#sidebar section
{
display: grid;
grid-template-columns: max-content auto;
grid-auto-rows: auto;
grid-gap: 10px;
position: relative;
box-sizing: border-box;
width: 100%;
}
}
@media (orientation: portrait)
{
#sidebar
{
left: 0;
bottom: -30%;
width: 100%;
height: 30%;
}
#sidebarVisible:checked + #sidebar
{
bottom: 0;
}
#sidebar > #sidebarSwitch
{
left: 0;
bottom: 100%;
}
#sidebar > #sidebarSwitch > img { transform: rotate(-90deg); }
#sidebarVisible:checked + #sidebar > #sidebarSwitch > img { transform: rotate(90deg); }
#sidebar section
{
display: grid;
grid-template-columns: max-content auto;
grid-auto-rows: auto;
grid-gap: 10px;
position: relative;
box-sizing: border-box;
width: 100%
}
}
#sidebarVisible:checked + #sidebar { display: block; }
#sidebar > :first-child { margin: 0px;}
#sidebar section input[type="number"]
{
display: block;
position: relative;
font: inherit;
background-color: #FFFFFF40;
border-radius: 3px;
border: 0.5pt solid Transparent;
color: White;
outline: none;
padding-left: 10px;
box-shadow: inset 0pt 1pt 1pt #00000020;
width: 100%;
box-sizing: border-box;
}
#sidebar section input[type="number"]::placeholder
{
color: #202020;
}
#sidebar section h3, #sidebar section textarea
{
grid-column: 1/3;
}
#sidebar section h3
{
/*background-color: #FFFFFF10;*/
background: linear-gradient(to left, #FFFFFF00, #FFFFFF10);
border-radius: 5px;
padding: 5px;
margin-bottom: 0;
margin-top: 30px
}
#sidebar section:first-child h3 { margin-top: 0; }
#sidebar #commentArea
{
appearance: none;
-moz-appearance: none;
-ms-appearance: none;
-o-appearance: none;
-webkit-appearance: none;
border: none;
background-color: #ffffff30;
resize: none;
height: 5em;
border-radius: 5px;
/*font: inherit;*/
color: White;
outline: none;
padding: 0.5em;
}
x3d::before
{
content: '';
position: fixed;
display: block;
left: 0;
top: 0;
width: 100%;
height: 100%;
background-image: url('./../img/mike-chavarri-553396-unsplash.jpg');
background-attachment: fixed;
background-position: center;
background-size: cover;
filter: blur(20px);
z-index: -1;
}
x3d
{
position: absolute;
display: block;
left: 0;
top: 0;
width: 100%;
height: 100%;
margin: 0;
border: none;
transition: 0.5s;
}
@media (orientation: landscape)
{
#sidebarVisible:checked ~ x3d { left: 25%; width: 75%; }
#addButton
{
position: fixed;
display: block;
bottom: 0;
right: 0;
max-width: 75%;
overflow-x: auto;
background-color: #00000080;
box-sizing: border-box;
padding: 10px;
color: White;
border-radius: 5px 0px 0px 0px;
transition: 0.3s;
}
}
@media (orientation: portrait)
{
#sidebarVisible:checked ~ x3d { left: 0; width: 100%; height: 70%; }
#addButton
{
position: fixed;
display: block;
bottom: 0;
right: 0;
max-width: 100%;
overflow-x: auto;
background-color: #00000080;
box-sizing: border-box;
padding: 10px;
color: White;
border-radius: 5px 0px 0px 0px;
transition: 0.5s;
}
#sidebarVisible:checked ~ #addButton { bottom: 30%; }
}
#fullscreenButton
{
display: block;
position: fixed;
top: 5px;
right: 5px;
background-color: #00000080;
box-sizing: border-box;
padding: 10px;
color: White;
border-radius: 5px;
}
#fullscreenButton > img
{
display: block;
width: 1.05rem;
height: 1.05rem;
margin: 0;
padding: 0;
border: 0;
}
#addButton :first-child
{
display: block;
text-align: right;
position: relative;
width: 100%;
line-height: 1.05rem;
}
#addButton > * { cursor: pointer; }
#addButton > #objListVisible { display: none; }
#addButton > #objListVisible ~ a
{
display: none;
text-align: center;
max-width: 80px;
min-width: 80px;
color: White;
text-decoration: none;
box-sizing: border-box;
border-radius: 3px;
transition: 0.3s;
}
#addButton > #objListVisible ~ a:first-of-type { margin-top: 10px; }
#addButton > #objListVisible ~ a:hover { background-color: #FFFFFF20; }
#addButton > #objListVisible:checked ~ a { display: inline-block; }
#addButton a > img { width: 50px; height: 50px; display: block; }
\ No newline at end of file
html, body
{
font-family: 'Open Sans', 'Noto Sans', 'Roboto', sans-serif;
font-size: 1.05rem;
margin: 0;
padding: 0;
}
html
{
background-image: url('./../img/mike-chavarri-553396-unsplash.jpg');
background-attachment: fixed;
background-position: center;
background-size: cover;
}
html::after
{
content: 'Photo by Mike Chavarri on Unsplash';
display: block;
position: fixed;
box-sizing: border-box;
color: White;
background-color: #00000080;
padding: 0.5em;
left: 0;
bottom: 0;
transform-origin: left top;
transform: rotate(-90deg);
}
form
{
display: block;
position: relative;
width: 500px;
max-width: 500px;
margin: auto;
margin-top: 5%;
background-color: #F0F0F080;
border-radius: 5px;
border: 0.5pt solid Grey;
box-shadow: 0pt 1pt 1pt #00000080;
box-sizing: border-box;
padding: 20px;
}
form::before
{
content: '';
position: absolute;
display: block;
width: 100%;
height: 100%;
left: 0;
top: 0;
background-image: url('./../img/mike-chavarri-553396-unsplash.jpg');
background-attachment: fixed;
background-position: center;
background-size: cover;
filter: blur(20px);
z-index: -1;
border-radius: 5px;
}
form > img
{
display: block;
position: relative;
width: 80%;
margin: auto;
}
form > h1
{
display: block;
position: relative;
text-align: center;
}
form input[name="groups"], form input[name="uploadType"] { display: none; }
form select, form input[type="submit"]
{
display: block;
position: relative;
font: inherit;
border-radius: 3px;
width: 100%;
background-color: #FFFFFF80;
outline: none;
margin: 10px auto;
padding: 5px;
border: 0.5pt solid Grey;
transition: 0.3s;
}
form > input[type="submit"]:hover, form select:hover { background-color: #FFFFFFE0; }
form > input[type="submit"]:active { background-color: #FFFFFF40; }
form label.sectionHeader
{
display: block;
box-sizing: border-box;
padding: 5px;
background-color: #FFFFFF40;
border-radius: 3px;
margin: 5px auto;
}
form label.sectionHeader::before
{
content: '▷';
margin-right: 10px;
color: DimGrey;
}
form input[type="radio"]:checked + label.sectionHeader::before
{
content: '▶';
}
form section
{
display: none;
width: 100%;
box-sizing: border-box;
margin-bottom: 30px;
padding: 0pt 20px;
}
form input[name="groups"]:checked + label + section,
form input[name="uploadType"]:checked + label + section { display: block; }
form input[type="text"], form input[type="number"]
{
display: block;
position: relative;
font: inherit;
border-radius: 3px;
width: 100%;
background-color: #FFFFFF80;
outline: none;
margin: 10px auto;
border: 0.5pt solid Grey;
transition: 0.3s;
padding: 5px;
box-sizing: border-box;
box-shadow: inset 0pt 1pt 1pt #00000040;
}
/*
* X3DOM JavaScript Library
* http://www.x3dom.org
*
* (C)2009 Fraunhofer IGD, Darmstadt, Germany
* Dual licensed under the MIT and GPL
*
* Based on code originally provided by
* Philip Taylor: http://philip.html5.org
*/
X3D, x3d {
position:relative; /* in order to be able to position stat-div within X3D */
float:left; /* float the element so it has the same size like the canvas */
cursor:pointer;
margin: 0;
padding: 0;
border: 1px solid #000;
}
X3D:hover,
x3d:hover,
.x3dom-canvas:hover {
-webkit-user-select: none;
-webkit-touch-callout: none;
}
.x3dom-canvas {
border:none;
cursor:pointer;
cursor:-webkit-grab;
cursor:grab;
width:100%;
height:100%;
float:left;
}
.x3dom-canvas-mousedown {
cursor:-webkit-grabbing;
cursor:grabbing;
}
.x3dom-canvas:focus {
outline:none;
}
.x3dom-progress {
margin: 0;
padding: 6px 8px 0px 26px;
left: 0px;
top: 0px;
position: absolute;
color: #0f0;
font-family: Helvetica, sans-serif;
line-height:10px;
font-size: 10px;
min-width: 45px;
min-height: 20px;
border: 0px;
background-position: 4px 4px;
background-repeat: no-repeat;
background-color: #333;
background-color: rgba(51, 51, 51, 0.9);
z-index: 100;
background-image: url('data:image/gif;base64,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');
}
.x3dom-progress.bar span {
position: absolute;
left: 0;
top: 0;
line-height: 20px;
background-color: red;
}
.x3dom-statdiv {
margin: 0;
padding: 0;
right: 10px;
top: 10px;
position: absolute;
color: #0f0;
font-family: Helvetica, sans-serif;
line-height:10px;
font-size: 10px;
width: 75px;
height: 70px;
border: 0px;
}
#x3dom-state-canvas {
margin: 2px;
padding: 0;
right: 0%;
top: 0%;
position: absolute;
}
#x3dom-state-viewer {
position: absolute;
margin: 2px;
padding: 5px;
width: 135px;
top: 0%;
right: 0%;
opacity: 0.9;
background-color: #323232;
z-index: 1000;
font-family: Arial, sans-serif;
color: #C8C8C8;
font-weight: bold;
text-transform: uppercase;
cursor: help;
}
.x3dom-states-head {
display: block;
font-size: 26px;
}
.x3dom-states-rendermode-software {
font-size: 10px;
margin: 0 0 2px 2px;
}
.x3dom-states-rendermode-hardware {
font-size: 10px;
margin: 0 0 2px 2px;
}
.x3dom-states-head2 {
font-size: 10px;
}
.x3dom-states-list {
float: left;
width: 100%;
border-top: 1px solid #C8C8C8;
list-style: none;
font-size: 9px;
line-height: 16px;
margin:0;
padding: 0;
padding-top: 2px;
}
.x3dom-states-item {
width: 100%;
float: left;
}
.x3dom-states-item-title {
float: left;
margin-left: 2px;
}
.x3dom-states-item-value {
float: right;
margin-right: 2px;
}
.x3dom-touch-marker {
display: inline;
padding: 5px;
border-radius: 10px;
position: absolute;
font-family: Helvetica, sans-serif;
line-height:10px;
font-size: 10px;
color: darkorange;
background: cornsilk;
opacity: 0.6;
border: 2px solid orange;
z-index: 200;
}
.x3dom-logContainer {
border: 2px solid olivedrab;
height: 200px;
padding: 4px;
overflow: auto;
white-space: pre-wrap;
font-family: sans-serif;
font-size: x-small;
color: #00ff00;
background-color: black;
margin-right: 10px;
}
.x3dom-nox3d {
font-family: Helvetica, sans-serif;
font-size: 14px;
background-color: #eb7a7a;
padding: 1em;
opacity: 0.75;
}
.x3dom-nox3d p {
color: #fff;
font-size: 14px;
}
.x3dom-nox3d a {
color: #fff;
font-size: 14px;
}
/* self-clearing floats */
.group:after {
content: ".";
display: block;
height: 0;
clear: both;
visibility: hidden;
}
<?php
if (isset($_GET["group"]) && intval($_GET["group"]) > 0)
{
require_once("./../php/db_connection.php");
$groupId = $_GET["group"];;
$groupName = null;
$cityName = null;
$cityModel = null;
$lat = 0;
$lon = 0;
$result = $db_link->query("SELECT * FROM existinggroups WHERE GroupID = ".$groupId.";");
if ($result->num_rows === 1)
{
$data = $result->fetch_assoc();
$groupName = $data["GroupName"];
$cityName = $data["City"];
$cityModel = $data["CityModel"];
$lat = $data["Lat"];
$lon = $data["Lon"];
}
else die("Ein Fehler ist aufgetreten. Mehrere Stadtmodelle sind dieser Gruppe zugeordnet");
} else header("location:./../");
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"/>
<meta name="Content-type" content="text/html"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<link rel="shortcut icon" type="image/png" href="./../img/favicon.png"/>
<link rel="stylesheet" type="text/css" href="./../css/x3dom.css"/>
<link rel="stylesheet" type="text/css" href="./../css/editor.css"/>
<title>U_CODE Editor</title>
</head>
<body>
<input type="checkbox" id="sidebarVisible" checked="checked"/>
<div id="sidebar">
<label id="sidebarSwitch" for="sidebarVisible"><img src="./../img/sidebarSwitch.svg"/>Adjust</label>
<div class="scrollContainer">
<section>