Merge branch 'master' of mojotrollz.eu:hosting
513
danube/page/js/dasense-ui.js
Normal file
@ -0,0 +1,513 @@
|
|||||||
|
|
||||||
|
|
||||||
|
/* global variables */
|
||||||
|
|
||||||
|
var header_height = 85;
|
||||||
|
var header_height_big = 117;
|
||||||
|
var logo_padding = 0;
|
||||||
|
var logo_padding_big = 15;
|
||||||
|
var userbutton_padding = 30;
|
||||||
|
var userbutton_padding_big = 17;
|
||||||
|
|
||||||
|
//da_sense layer options
|
||||||
|
var sensorType = 1;
|
||||||
|
var algo = 'heatmapRect';
|
||||||
|
var from = new Date();//'01.02.2011 20:00'; from.getDate()+'.'+from.getMonth()+1+'.'+from.getFullYear()+' 00:00';
|
||||||
|
var to = new Date();
|
||||||
|
var provider = 'gps';
|
||||||
|
|
||||||
|
var sidebar_is_visible = false;
|
||||||
|
var mainbar_is_visible = true;
|
||||||
|
var site_content_is_visible = false;
|
||||||
|
var last_site_content = 'empty';
|
||||||
|
var seriesMenuOpen = false;
|
||||||
|
|
||||||
|
|
||||||
|
/* IDLE TIMER */
|
||||||
|
// http://paulirish.com/2009/jquery-idletimer-plugin/
|
||||||
|
// idleTimer() takes an optional argument that defines the idle timeout
|
||||||
|
// timeout is in milliseconds; defaults to 30000
|
||||||
|
//$.idleTimer(21098);
|
||||||
|
|
||||||
|
// function you want to fire when the user goes idle
|
||||||
|
$(document).bind("idle.idleTimer", function(){
|
||||||
|
if(!site_content_is_visible){
|
||||||
|
hideMainbar();
|
||||||
|
hideSidebar();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
// function you want to fire when the user becomes active again
|
||||||
|
$(document).bind("active.idleTimer", function(){
|
||||||
|
if(!site_content_is_visible){
|
||||||
|
showMainbar();
|
||||||
|
//toggleSidebar();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* jQuery on document ready */
|
||||||
|
$(document).ready(function() {
|
||||||
|
|
||||||
|
//set date:
|
||||||
|
from.setFullYear(2012, 1, 1);
|
||||||
|
|
||||||
|
|
||||||
|
//add select lib
|
||||||
|
$("#measurement-series-select").select2({
|
||||||
|
width: 'resolve'
|
||||||
|
//allowClear: true
|
||||||
|
});
|
||||||
|
|
||||||
|
$('#showSeries').click(function(){
|
||||||
|
seriesMenuOpen = !seriesMenuOpen;
|
||||||
|
if(!seriesMenuOpen){
|
||||||
|
$("#measurement-series-select").select2("close");
|
||||||
|
document.getElementById('seriesDiv').style.display = 'none';
|
||||||
|
}else{
|
||||||
|
document.getElementById('seriesDiv').style.display = 'block';
|
||||||
|
document.getElementById('seriesDiv').style.visibility = 'hidden';
|
||||||
|
$("#measurement-series-select").select2("open");
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
//check if user uses touch device -> changeUIToTouchDevices()
|
||||||
|
if (!!('ontouchstart' in window) || !!('onmsgesturechange' in window) ||
|
||||||
|
navigator.userAgent.match(/iPad/i) || navigator.userAgent.match(/iPod/i) || navigator.userAgent.match(/iPhone/i)) {
|
||||||
|
//changeUIToTouchDevices();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//last page == http://www.da-sense.de/ -> show info box
|
||||||
|
if( document.referrer == 'http://www.da-sense.de/' ||
|
||||||
|
document.referrer == 'http://da-sense.de/'){
|
||||||
|
//loadAjaxContent('?action=welcome');
|
||||||
|
setTimeout(setCookie, 10000);
|
||||||
|
}
|
||||||
|
|
||||||
|
//jqBootstrapValidation
|
||||||
|
$("#login_form input").not("[type=submit]").jqBootstrapValidation(
|
||||||
|
{
|
||||||
|
preventSubmit: true,
|
||||||
|
submitError: function($form, event, errors) {},
|
||||||
|
submitSuccess: function($form, event){
|
||||||
|
$.get('./api.php?call=account&action=login&username='+$('#bt_login_user').val()+'&password_sha='+$.sha1($('#bt_login_password').val())+'&password_md5='+hex_md5($('#bt_login_password').val()), function (data) {
|
||||||
|
if(data == 1){
|
||||||
|
//set cookie
|
||||||
|
if(document.getElementById('remember_me').checked == true){
|
||||||
|
var cookie = 'remember=true&username='+$('#bt_login_user').val()+'&password_sha='+$.sha1($('#bt_login_password').val())+'&password_md5='+hex_md5($('#bt_login_password').val());
|
||||||
|
$.cookie("rememberMe", cookie, { expires: 365 });
|
||||||
|
}
|
||||||
|
window.location.href = location.href.replace(/#/g, "");
|
||||||
|
} else {
|
||||||
|
$('.help-block').html("Login not successfull.</br> User & Password combination wrong.")
|
||||||
|
}
|
||||||
|
});
|
||||||
|
event.preventDefault();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
//logout user
|
||||||
|
$('#logout_user_top, #logout_user_sidebar').click(function (e) {
|
||||||
|
$.get('./api.php?call=account&action=logout', function (data) {
|
||||||
|
$.removeCookie('rememberMe');
|
||||||
|
window.location.href = location.href.replace(/#/g, "");
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
//show login box
|
||||||
|
$('#show_login_box').click(function (e) {
|
||||||
|
document.getElementById('show_login_form').click();
|
||||||
|
});
|
||||||
|
|
||||||
|
//place cursor in login field
|
||||||
|
$('#show_login_form').click(function (e) {
|
||||||
|
//TODO: implement
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
//add eventListener for key events
|
||||||
|
addEventListener("keydown", function(e){
|
||||||
|
handleKeyEvents(e.which, e);
|
||||||
|
});
|
||||||
|
|
||||||
|
//prevent login menu from being closed whenever user clicks inside
|
||||||
|
$('.dropdown-menu').find('form').click(function (e) {
|
||||||
|
e.stopPropagation();
|
||||||
|
});
|
||||||
|
|
||||||
|
// hide timepicker
|
||||||
|
$('.filter-time .bootstrap-timepicker-component').hide();
|
||||||
|
|
||||||
|
//hide site-content-wrapper
|
||||||
|
$('#site-content-wrapper').slideUp('fast');
|
||||||
|
|
||||||
|
// populate filter with first value
|
||||||
|
$('div.btn-group.dasense-filter ul.dropdown-menu').each(function () {
|
||||||
|
$(this).find('a').first().populateDasenseFilter();
|
||||||
|
});
|
||||||
|
|
||||||
|
// populate filter and get options after selection
|
||||||
|
$('div.btn-group.dasense-filter ul.dropdown-menu a').click(function () {
|
||||||
|
if($(this).attr('sensorType') != null){
|
||||||
|
sensorType = $(this).attr('sensorType');
|
||||||
|
}
|
||||||
|
if($(this).attr('algo') != null){
|
||||||
|
algo = $(this).attr('algo');
|
||||||
|
}
|
||||||
|
|
||||||
|
$(this).populateDasenseFilter();
|
||||||
|
//call update function -> will generate the new da_sense_layer
|
||||||
|
updateLayer();
|
||||||
|
});
|
||||||
|
|
||||||
|
// add timepicker
|
||||||
|
$('.filter-add-time a').click(function () {
|
||||||
|
$(this).parent().hide();
|
||||||
|
$(this).parent().next('.bootstrap-timepicker-component').show();
|
||||||
|
});
|
||||||
|
|
||||||
|
//handle links
|
||||||
|
$(document).on("click", "a", function(){
|
||||||
|
if($(this).hasClass('blank')){
|
||||||
|
$('#site-content-wrapper').slideUp('slow');
|
||||||
|
site_content_is_visible = false;
|
||||||
|
showNavbarControls();
|
||||||
|
removeNavActive();
|
||||||
|
}
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
// handle navigation link click
|
||||||
|
$('#navigation-left ul li a, #user-button .dropdown-menu li a').click(function () {
|
||||||
|
//show/hide navbar controls
|
||||||
|
if($(this).is('#map-link')){
|
||||||
|
showNavbarControls();
|
||||||
|
toggleSidebar();
|
||||||
|
}else{
|
||||||
|
if(!$(this).is('#show_login_box')){
|
||||||
|
hideNavbarControls();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
toggleNavActive(this);
|
||||||
|
|
||||||
|
if($(this).hasClass('filter')) {
|
||||||
|
showNavBarFilter();
|
||||||
|
} else {
|
||||||
|
hideNavBarFilter();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if($(this).hasClass('blank')) {
|
||||||
|
$('#site-content-wrapper').slideUp('slow');
|
||||||
|
site_content_is_visible = false;
|
||||||
|
} else {
|
||||||
|
if(last_site_content !== $(this).attr('url') || !site_content_is_visible){
|
||||||
|
loadAjaxContent($(this).attr('url'));
|
||||||
|
last_site_content = $(this).attr('url');
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
});
|
||||||
|
|
||||||
|
//toggle navbars
|
||||||
|
$('a.brand, #toggle-sidebar').click(function(e){
|
||||||
|
toggleSidebar();
|
||||||
|
});
|
||||||
|
$('#toggle-mainbar').click(function(e){
|
||||||
|
toggleMainbar();
|
||||||
|
});
|
||||||
|
|
||||||
|
// initialize date- and timepickers
|
||||||
|
$('.filter-date').datepicker();
|
||||||
|
$('#date_from').datepicker("setValue", from); //date_to = current date
|
||||||
|
$('#date_to').datepicker("setValue", to); //date_to = current date
|
||||||
|
|
||||||
|
$('.filter-date').datepicker().on('changeDate', function(obj){
|
||||||
|
if($(this).attr('id') == 'date_from'){
|
||||||
|
from = new Date(obj.date.valueOf());
|
||||||
|
}
|
||||||
|
if($(this).attr('id') == 'date_to'){
|
||||||
|
to = new Date(obj.date.valueOf());
|
||||||
|
}
|
||||||
|
|
||||||
|
updateLayer();
|
||||||
|
|
||||||
|
});
|
||||||
|
$('.timepicker-default').timepicker({
|
||||||
|
showMeridian : false
|
||||||
|
});
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
// extend jQuery
|
||||||
|
$.fn.extend({
|
||||||
|
|
||||||
|
// populate twitter-bootstrap dropdowns
|
||||||
|
populateDasenseFilter: function () {
|
||||||
|
$(this).parents('div.btn-group').find('a.dropdown-toggle span.dropdown-text').text($(this).text());
|
||||||
|
}
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/*################################################################################################################################################################
|
||||||
|
*
|
||||||
|
* FUNCTIONS
|
||||||
|
*
|
||||||
|
*################################################################################################################################################################
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Updates da_sense_layer
|
||||||
|
*/
|
||||||
|
function updateLayer(){
|
||||||
|
var from_wired_timestamp = from.getDate()+'.'+(from.getMonth()+1)+'.'+from.getFullYear()+' 00:00';
|
||||||
|
var to_wired_timestamp = to.getDate()+'.'+(to.getMonth()+1)+'.'+to.getFullYear()+' 23:59';
|
||||||
|
|
||||||
|
$DS.updateSenseLayer(sensorType, algo, from_wired_timestamp, to_wired_timestamp, provider);
|
||||||
|
|
||||||
|
if(sidebar_is_visible){
|
||||||
|
$('.leaflet-control-legend').css('left', '210px');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Loads html from the url and puts it into the content div
|
||||||
|
*/
|
||||||
|
function loadAjaxContent(url) {
|
||||||
|
var dataTmp;
|
||||||
|
$.get(url, function (data) {
|
||||||
|
dataTmp = data;
|
||||||
|
bodyelem = $("html,body");
|
||||||
|
bodyelem.animate({scrollTop: 0});
|
||||||
|
}).complete(function() {
|
||||||
|
$('#site-content-wrapper').slideUp({duration: 'slow',
|
||||||
|
complete: function(){
|
||||||
|
$('#site-content').html(dataTmp);
|
||||||
|
$('#site-content-wrapper').slideDown('slow');
|
||||||
|
site_content_is_visible = true;
|
||||||
|
}});
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Function changes some stuff, so our page will look better on touch devices / tablets
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
function changeUIToTouchDevices(){
|
||||||
|
var oldlink = document.getElementById('cssFile');
|
||||||
|
var newlink = document.createElement("link")
|
||||||
|
newlink.setAttribute("rel", "stylesheet");
|
||||||
|
newlink.setAttribute("type", "text/css");
|
||||||
|
newlink.setAttribute("href", "dasense/page/new_default_page/css/dasenseTouch.css");
|
||||||
|
document.getElementsByTagName("head").item(0).replaceChild(newlink, oldlink);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Handling given keyEvents
|
||||||
|
*/
|
||||||
|
function handleKeyEvents(keyCode, event){
|
||||||
|
|
||||||
|
//no key events if input has focus
|
||||||
|
if($("*:focus").is('input') || $("*:focus").is('textarea')){
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//esc-key -> show map, hide navbars
|
||||||
|
// n-key -> show navbars
|
||||||
|
if(keyCode == 27 || keyCode == 78){
|
||||||
|
event.preventDefault();
|
||||||
|
event.stopPropagation();
|
||||||
|
if(site_content_is_visible){
|
||||||
|
$('#site-content-wrapper').slideUp('slow');
|
||||||
|
site_content_is_visible = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(sidebar_is_visible || mainbar_is_visible){
|
||||||
|
hideSidebar();
|
||||||
|
hideMainbar();
|
||||||
|
} else {
|
||||||
|
if(keyCode == 78){
|
||||||
|
showSidebar();
|
||||||
|
}
|
||||||
|
showMainbar();
|
||||||
|
}
|
||||||
|
showNavbarControls();
|
||||||
|
removeNavActive();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
//+ zoom in
|
||||||
|
if(keyCode == 43){//does not work
|
||||||
|
}
|
||||||
|
//- zoom out
|
||||||
|
if(keyCode == 45){//does not work
|
||||||
|
}
|
||||||
|
|
||||||
|
//A < move map
|
||||||
|
if(keyCode == A || keyCode == LEFT){}
|
||||||
|
//W /\ move map
|
||||||
|
if(keyCode == W || keyCode == UP){}
|
||||||
|
//S \/ move map
|
||||||
|
if(keyCode == S || keyCode == DOWN){}
|
||||||
|
//D > move map
|
||||||
|
if(keyCode == D || keyCode == RIGHT){}
|
||||||
|
*/
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Shows the left navigation bar with a slide effect
|
||||||
|
*/
|
||||||
|
function showSidebar() {
|
||||||
|
$('#toggle-sidebar i').removeClass('icon-chevron-right').addClass('icon-chevron-left');
|
||||||
|
$('#navigation-left-wrapper').animate({left: '0px'}, 'slow');
|
||||||
|
$('#toggle-sidebar').animate({left: '200px'}, 'slow');
|
||||||
|
$('.leaflet-control-legend').animate({left: '210px'}, 'slow');
|
||||||
|
sidebar_is_visible = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Hides the left navigation bar with a slide effect
|
||||||
|
*/
|
||||||
|
function hideSidebar() {
|
||||||
|
$('#toggle-sidebar i').removeClass('icon-chevron-left').addClass('icon-chevron-right');
|
||||||
|
$('#navigation-left-wrapper').animate({left: '-200px'}, 'slow');
|
||||||
|
$('#toggle-sidebar').animate({left: '0px'}, 'slow');
|
||||||
|
$('.leaflet-control-legend').animate({left: '10px'}, 'slow');
|
||||||
|
sidebar_is_visible = false;
|
||||||
|
removeNavActive();
|
||||||
|
showNavbarControls();
|
||||||
|
}
|
||||||
|
|
||||||
|
function toggleSidebar() {
|
||||||
|
if(sidebar_is_visible) hideSidebar();
|
||||||
|
else showSidebar();
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Shows the top navigatio bar with a slide effect
|
||||||
|
*/
|
||||||
|
function showMainbar() {
|
||||||
|
$('#toggle-mainbar i').removeClass('icon-chevron-down').addClass('icon-chevron-up');
|
||||||
|
$('#main-navbar').animate({top: '0px'}, 'slow');
|
||||||
|
//document.getElementById('site-content-wrapper').style.top = '117';
|
||||||
|
mainbar_is_visible = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Hides the left navigation bar with a slide effect
|
||||||
|
*/
|
||||||
|
function hideMainbar() {
|
||||||
|
$('#toggle-mainbar i').removeClass('icon-chevron-up').addClass('icon-chevron-down');
|
||||||
|
$('#main-navbar').animate({top: '-117px'}, 'slow');
|
||||||
|
//document.getElementById('site-content-wrapper').style.top = '0';
|
||||||
|
mainbar_is_visible = false;
|
||||||
|
showNavbarControls();
|
||||||
|
}
|
||||||
|
|
||||||
|
function toggleMainbar() {
|
||||||
|
if(mainbar_is_visible) hideMainbar();
|
||||||
|
else showMainbar();
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Shows the semicircles for showing/hiding navbars
|
||||||
|
*/
|
||||||
|
function showNavbarControls(){
|
||||||
|
document.getElementById('toggle-mainbar').style.visibility = 'visible';
|
||||||
|
document.getElementById('toggle-sidebar').style.visibility = 'visible';
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Hides the semicircles for showing/hiding navbars
|
||||||
|
*/
|
||||||
|
function hideNavbarControls(){
|
||||||
|
document.getElementById('toggle-mainbar').style.visibility = 'hidden';
|
||||||
|
document.getElementById('toggle-sidebar').style.visibility = 'hidden';
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Toggles 'active' class on navigation links
|
||||||
|
*/
|
||||||
|
function toggleNavActive(elem) {
|
||||||
|
$('#navigation-left ul.nav li.active').removeClass('active');
|
||||||
|
$(elem).parent().addClass('active');
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Removes 'active' class on navigation links
|
||||||
|
*/
|
||||||
|
function removeNavActive(){
|
||||||
|
$('#navigation-left ul.nav li.active').removeClass('active');
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Hides filter elements on top navigation bar
|
||||||
|
*/
|
||||||
|
function hideNavBarFilter() {
|
||||||
|
$('.filter-container').hide();
|
||||||
|
$('a.brand img').css({
|
||||||
|
paddingTop : logo_padding,
|
||||||
|
paddingBottom : logo_padding
|
||||||
|
});
|
||||||
|
$('#user-button').css({
|
||||||
|
marginTop : userbutton_padding_big
|
||||||
|
});
|
||||||
|
$('#navigation-left, #wrapper').css({
|
||||||
|
top : header_height
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Shows filter elements on top navigation bar
|
||||||
|
*/
|
||||||
|
function showNavBarFilter() {
|
||||||
|
$('.filter-container').show();
|
||||||
|
$('a.brand img').css({
|
||||||
|
paddingTop : logo_padding_big,
|
||||||
|
paddingBottom : logo_padding_big
|
||||||
|
});
|
||||||
|
$('#user-button').css({
|
||||||
|
marginTop : userbutton_padding
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
function createCookie(name,value,days) {
|
||||||
|
$.cookie(name, value, { expires: days });
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function setCookie(){
|
||||||
|
/*bootbox.classes("bootbox");
|
||||||
|
bootbox.confirm("Soll das neue Design dauerhaft aktiviert werden?", "Nein", "Ja",
|
||||||
|
function(check){
|
||||||
|
if (check == true){
|
||||||
|
createCookie("design", "new", 22);
|
||||||
|
}
|
||||||
|
});*/
|
||||||
|
|
||||||
|
//TODO remove!
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
function selectSeries(){
|
||||||
|
var seriesID = $('#measurement-series-select').val();
|
||||||
|
var name = $('#measurement-series-select option[value="'+seriesID+'"]').text();
|
||||||
|
alert("measurementSeriesID: "+seriesID+" name: "+name);
|
||||||
|
document.getElementById('seriesDiv').style.display = 'none';
|
||||||
|
document.getElementById('seriesName').innerHTML = name;
|
||||||
|
|
||||||
|
}
|
||||||
201
danube/page/js/dasense.tpl
Normal file
@ -0,0 +1,201 @@
|
|||||||
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||||||
|
<html xmlns="http://www.w3.org/1999/xhtml" itemscope itemtype="http://schema.org/Research">
|
||||||
|
<head>
|
||||||
|
<title>da_sense</title>
|
||||||
|
${js}
|
||||||
|
${css}
|
||||||
|
<!-- content for +1- / Like-Button -->
|
||||||
|
<meta itemprop="name" content="da_sense">
|
||||||
|
<meta itemprop="description" content="${likeButtonsContent}">
|
||||||
|
<meta itemprop="image" content="${PATH_LOCAL_IMG}icon_small.png">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
|
||||||
|
|
||||||
|
${introductionOverlay}
|
||||||
|
|
||||||
|
<!-- Top Bar ############################################################### -->
|
||||||
|
<div id="main-navbar" class="navbar navbar-fixed-top">
|
||||||
|
<div class="navbar-inner">
|
||||||
|
<!-- Logo ############################################################## -->
|
||||||
|
<a class="brand" ref="#">
|
||||||
|
<img src="${PATH_LOCAL_IMG}logo.png" alt="da_sense" />
|
||||||
|
</a>
|
||||||
|
<!-- Filter Datatype ################################################### -->
|
||||||
|
<div id="filter-type" class="filter-container">
|
||||||
|
<label>${sp_type}</label>
|
||||||
|
<div class="btn-group dasense-filter dasense-type">
|
||||||
|
<a class="btn dropdown-toggle" data-toggle="dropdown" href="#">
|
||||||
|
<i class="icon-filter"></i>
|
||||||
|
<span class="dropdown-text">${sp_noise_level}</span>
|
||||||
|
<b class="caret"></b>
|
||||||
|
</a>
|
||||||
|
<ul class="dropdown-menu">
|
||||||
|
<li><a href="#" sensorType="1">${sp_noise_level}</a></li>
|
||||||
|
<li><a href="#" sensorType="4">${sp_temperature}</a></li>
|
||||||
|
<li><a href="#" sensorType="5">${sp_luminance}</a></li>
|
||||||
|
<li><a href="#" sensorType="6">${sp_humidity}</a></li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<!-- Filter Time ####################################################### -->
|
||||||
|
<div id="filter-time" class="filter-container">
|
||||||
|
<label>${legend_timerange}</label>
|
||||||
|
<div id="filter-time-from">
|
||||||
|
<form class="navbar-form pull-left">
|
||||||
|
<div class="filter-inner">
|
||||||
|
<div class="input-append input-prepend date filter-date" id="date_from" data-date="01.01.2012" data-date-format="dd.mm.yyyy">
|
||||||
|
<span style="width: 25px;" class="add-on">${tr_from}</span>
|
||||||
|
<input class="datepicker-input" size="10" type="text" value="01.01.2012">
|
||||||
|
<span class="add-on"><i class="icon-th"></i></span>
|
||||||
|
</div>
|
||||||
|
<div class="filter-time">
|
||||||
|
<div class="filter-add-time">
|
||||||
|
<a class="btn" href="#">
|
||||||
|
<i class="icon-time"></i>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
<div class="input-append bootstrap-timepicker-component">
|
||||||
|
<input type="text" class="timepicker-default">
|
||||||
|
<span class="add-on">
|
||||||
|
<i class="icon-time"></i>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
<div id="filter-time-to">
|
||||||
|
<form class="navbar-form pull-left">
|
||||||
|
<div class="filter-inner">
|
||||||
|
<div class="input-append input-prepend date filter-date" id="date_to" data-date="12.02.2012" data-date-format="dd.mm.yyyy">
|
||||||
|
<span style="width: 25px;" class="add-on">${tr_to}</span>
|
||||||
|
<input class="datepicker-input" size="10" type="text" value="12.02.2012">
|
||||||
|
<span class="add-on"><i class="icon-th"></i></span>
|
||||||
|
</div>
|
||||||
|
<div class="filter-time">
|
||||||
|
<div class="filter-add-time">
|
||||||
|
<a class="btn" href="#">
|
||||||
|
<i class="icon-time"></i>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
<div class="input-append bootstrap-timepicker-component">
|
||||||
|
<input type="text" class="timepicker-default">
|
||||||
|
<span class="add-on">
|
||||||
|
<i class="icon-time"></i>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<!-- Filter Visualtisation ############################################# -->
|
||||||
|
<div id="filter-visualization" class="filter-container">
|
||||||
|
<form class="navbar-form pull-left">
|
||||||
|
<label>${visualisation}</label>
|
||||||
|
<div class="filter-inner">
|
||||||
|
<div class="btn-group dasense-filter dasense-visualization">
|
||||||
|
<a class="btn dropdown-toggle" data-toggle="dropdown" href="#">
|
||||||
|
<i class="icon-globe"></i>
|
||||||
|
<span class="dropdown-text">Visualisierung</span>
|
||||||
|
<b class="caret"></b>
|
||||||
|
</a>
|
||||||
|
<ul class="dropdown-menu">
|
||||||
|
<li><a href="#" algo="heatmapRect">${heatmapRect}</a></li>
|
||||||
|
<li><a href="#" algo="differencemap">${differencemap}</a></li>
|
||||||
|
<!--<li><a href="#" algo="heatmapStd">${heatmapStd}</a></li>-->
|
||||||
|
<!--<li><a href="#" algo="tests">Tests...</a></li>-->
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
<!--
|
||||||
|
<label class="checkbox">
|
||||||
|
<input type="checkbox"> Messpunkte anzeigen
|
||||||
|
</label>
|
||||||
|
-->
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
<!-- Localization ######################################################## -->
|
||||||
|
<div id="localization">
|
||||||
|
<i class="icon-info-sign icon-white showInfoOverlay"></i>
|
||||||
|
<a href="javascript:switchLocale('deDE');"><img src="${PATH_LOCAL_IMG}flag_germany.png" alt="Deutsch"></a>
|
||||||
|
<a href="javascript:switchLocale('enUS');"><img src="${PATH_LOCAL_IMG}flag_usa.png" alt="English"></a>
|
||||||
|
<!-- User Login ######################################################## -->
|
||||||
|
${login_form}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<!-- Top Bar Hide ###################################################### -->
|
||||||
|
<div class="halfCircleBottom" id="toggle-mainbar">
|
||||||
|
<i class="icon-chevron-up icon-white"></i>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- Left Bar ############################################################## -->
|
||||||
|
|
||||||
|
<div id="navigation-left-wrapper">
|
||||||
|
<!-- Navigation ######################################################## -->
|
||||||
|
<div id="navigation-left">
|
||||||
|
<div id="navigation-left-logo" style="height: 100px;">
|
||||||
|
<img src="${PATH_LOCAL_IMG}logo.png" alt="da_sense" style="width: 175px; padding-top:30px;"/>
|
||||||
|
</div>
|
||||||
|
<ul class="nav nav-list">
|
||||||
|
<li class="active"><a class="blank filter" id="map-link" href="#"><i class="android-ic_action_map"></i> ${map}</a></li>
|
||||||
|
<li><a href="#" class="filter" url="?action=project"><i class="android-ic_action_book"></i> ${info}</a></li>
|
||||||
|
${user_leftmenu}
|
||||||
|
<li class="nav-header">${community}</li>
|
||||||
|
<li class="divider" id="divGreen"></li>
|
||||||
|
<li class=""><a class="filter" id="highscore" url="?module=default&action=highscore" href="#"><i class="android-ic_action_list"></i> ${highscore}</a></li>
|
||||||
|
<!--<li class=""><a class="filter" id="achievement" url="?module=user&action=area" href="#"><i class="android-ic_action_achievement"></i> ${awards}</a></li>-->
|
||||||
|
<li class="nav-header">${other}</li>
|
||||||
|
<li class="divider" id="divGreen"></li>
|
||||||
|
<li class=""><a class="filter" id="press" href="#" url="?action=press"><i class="android-ic_action_edit"></i> ${press}</a></li>
|
||||||
|
<li class=""><a class="filter" id="devs" href="#" url="?action=devs"><i class="android-ic_action_users"></i> ${devs}</a></li>
|
||||||
|
<li><a href="#" class="disableKeyEvents filter" url="?action=contact" id="bugreport"><i class="android-ic_action_mail"></i> ${feedback}</a></li>
|
||||||
|
<li class=""><a class="filter" id="impressum" href="#" url="?action=impressum"><i class="android-ic_action_business"></i> ${imprint}</a></li>
|
||||||
|
<li class="divider" id="divGreen" style="margin-top: 25px"></li>
|
||||||
|
<!-- Like-Buttons / Twitter -->
|
||||||
|
<li class="" ><g:plusone size="medium" count="true" href="${PATH_ROOT}"></g:plusone></li>
|
||||||
|
<li class="" style="padding-top: 6px"><div class="fb-like" data-href="http://www.da-sense.de" data-send="false" data-layout="button_count" data-width="450" data-show-faces="true" data-font="tahoma"></div></li>
|
||||||
|
<li class="" style="padding-top: 6px"><a href="http://twitter.com/share" class="twitter-share-button" data-count="horizontal" data-url="http://www.da-sense.de" data-lang="de">Twittern</a></li>
|
||||||
|
<div style="padding-top: 25px">
|
||||||
|
<div>
|
||||||
|
<a href="http://play.google.com/store/apps/details?id=de.tudarmstadt.tk.noisemap" class="appstore filter" target="_blank">
|
||||||
|
<img alt="Android app on Google Play" src="${PATH_LOCAL_IMG}playstore.png" width="120" height="42">
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
<div style="margin-top: 15px">
|
||||||
|
<a href="https://itunes.apple.com/de/app/noisemap/id630756037?mt=8&uo=4" class="itunes_store" target="_blank">
|
||||||
|
<img alt="Android app on Google Play" src="${PATH_LOCAL_IMG}appstore.png" width="135" height="40">
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<!-- Left Bar Hide Button ############################################## -->
|
||||||
|
<div class="halfCircleRight" id="toggle-sidebar">
|
||||||
|
<i class="icon-chevron-right icon-white" style="margin-top: 50%; color: #d6d6d6"></i>
|
||||||
|
</div>
|
||||||
|
<!-- Content ############################################################### -->
|
||||||
|
|
||||||
|
<div id="wrapper">
|
||||||
|
<!-- Map ############################################################### -->
|
||||||
|
<!-- will be filled on buttom js load -->
|
||||||
|
<div id="map"></div>
|
||||||
|
<!-- Content ########################################################### -->
|
||||||
|
<!-- will be filled by javascript -->
|
||||||
|
<div id="site-content-wrapper">
|
||||||
|
<div id="site-content"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<!-- Bottom JS ############################################################# -->
|
||||||
|
${js_bottom}
|
||||||
|
<script>$DS.init();</script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
6
danube/page/js/loadtexts.js
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
function loadContent()
|
||||||
|
{
|
||||||
|
alert("huhuhuh");
|
||||||
|
}
|
||||||
|
|
||||||
|
$('.').on('click', loadContent);
|
||||||
BIN
danube/page/pics/DSCF4457.JPG
Normal file
|
After Width: | Height: | Size: 1.1 MiB |
BIN
danube/page/pics/DSCF5963.JPG
Normal file
|
After Width: | Height: | Size: 1.1 MiB |
BIN
danube/page/pics/DSCF5965.JPG
Normal file
|
After Width: | Height: | Size: 1.0 MiB |
BIN
danube/page/pics/DSCF5970.JPG
Normal file
|
After Width: | Height: | Size: 1.0 MiB |
BIN
danube/page/pics/DSCF5971.JPG
Normal file
|
After Width: | Height: | Size: 926 KiB |
BIN
danube/page/pics/DSCF5985.JPG
Normal file
|
After Width: | Height: | Size: 927 KiB |
BIN
danube/page/pics/DSCF5991.JPG
Normal file
|
After Width: | Height: | Size: 1.0 MiB |
BIN
danube/page/pics/DSCF5998.JPG
Normal file
|
After Width: | Height: | Size: 1.0 MiB |
BIN
danube/page/pics/DSCF6006.JPG
Normal file
|
After Width: | Height: | Size: 926 KiB |
BIN
danube/page/pics/DSCF6019.JPG
Normal file
|
After Width: | Height: | Size: 1.1 MiB |