update login button when opening menu drawer, this should eliminate login issues
[lantea.git] / index.html
index 2864474d3ccb369ce1b9f3893fe7508ce206ed89..5f8d2a6e53f861ff51d6a70eae04ac843d1ad534 100644 (file)
-<!-- ***** BEGIN LICENSE BLOCK *****
-   - Version: MPL 1.1/GPL 2.0/LGPL 2.1
-   -
-   - The contents of this file are subject to the Mozilla Public License Version
-   - 1.1 (the "License"); you may not use this file except in compliance with
-   - the License. You may obtain a copy of the License at
-   - http://www.mozilla.org/MPL/
-   -
-   - Software distributed under the License is distributed on an "AS IS" basis,
-   - WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
-   - for the specific language governing rights and limitations under the
-   - License.
-   -
-   - The Original Code is Lantea mapping/tracking web app.
-   -
-   - The Initial Developer of the Original Code is
-   - Robert Kaiser <kairo@kairo.at>.
-   - Portions created by the Initial Developer are Copyright (C) 2011
-   - the Initial Developer. All Rights Reserved.
-   -
-   - Contributor(s):
-   -   Robert Kaiser <kairo@kairo.at> (original author)
-   -
-   - Alternatively, the contents of this file may be used under the terms of
-   - either the GNU General Public License Version 2 or later (the "GPL"), or
-   - the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
-   - in which case the provisions of the GPL or the LGPL are applicable instead
-   - of those above. If you wish to allow use of your version of this file only
-   - under the terms of either the GPL or the LGPL, and not to allow others to
-   - use your version of this file under the terms of the MPL, indicate your
-   - decision by deleting the provisions above and replace them with the notice
-   - and other provisions required by the LGPL or the GPL. If you do not delete
-   - the provisions above, a recipient may use your version of this file under
-   - the terms of any one of the MPL, the GPL or the LGPL.
-   -
-   - ***** END LICENSE BLOCK ***** -->
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+   - License, v. 2.0. If a copy of the MPL was not distributed with this file,
+   - You can obtain one at http://mozilla.org/MPL/2.0/.  -->
 
 <!DOCTYPE html>
 <html manifest="manifest.appcache">
 <head>
   <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-  <title>Lantea Map</title>
-  <script src="js/map.js"></script>
-  <script src="js/ui.js"></script>
+  <!-- try to force a 1:1 scaling and disable pinch-zoom on mobile, see
+       https://developer.mozilla.org/en/Mobile/Viewport_meta_tag -->
+  <meta name="viewport" content="width=device-width, height=device-height, initial-scale=1, maximum-scale=1, user-scalable=no">
+  <title>Lantea Maps</title>
+  <script src="js/map.js" type="application/javascript;version=1.8"></script>
+  <script src="js/ui.js" type="application/javascript;version=1.8"></script>
+  <script src="js/library.js" type="application/javascript;version=1.8"></script>
+  <script src="js/piwik.js" async="" defer=""></script>
   <link rel="stylesheet" href="style/lantea.css">
   <link rel="shortcut icon" href="style/lanteaIcon16.png" type="image/png">
 </head>
-<body>
+<body id="body">
+<noscript><p><img src="https://piwik.kairo.at/piwik.php?idsite=2" style="border:0;" alt="" /></p></noscript>
 <h1>Lantea Map</h1>
 
-<div id="overlayArea">
-<input type="button" id="zoomInButton" value="+"
-       onclick="zoomIn();">
-<span id="zoomLevel">Z</span>
-<input type="button" id="zoomOutButton" value="-"
-       onclick="zoomOut();"><br/>
-<input type="button" id="trackButton" value="Track"
-       onclick="toggleTrackArea();"><br/>
-<fieldset id="trackArea"><legend>Track</legend>
+<div id="trackArea" class="menuDrawer hidden">
+<h2 onclick="toggleTrackArea();">
+<image src="style/track.svg" alt=""> Track
+</h2>
+<p id="trackData"><span id="trackLength"><span id="trackLengthNum">0</span> km</span>,
+<span id="trackDuration"><span id="trackDurationH"><span id="trackDurationHNum">0</span> h</span>
+<span id="trackDurationM"><span id="trackDurationMNum">0</span> min</span></span>
+</p>
+<p>
 <input type="button" id="saveTrackButton" value="Save"
        onclick="saveTrack();">
+<input type="button" id="dumpTrackButton" value="Dump"
+       onclick="saveTrackDump();" class="debugHide">
+<input type="button" id="uploadTrackButton" value="Upload" disabled="true"
+       onclick="showUploadDialog();">
 <input type="button" id="clearTrackButton" value="Clear"
-       onclick="clearTrack();"><br/>
+       onclick="clearTrack();">
+</p>
+<p id="libraryShowLine" class="hidden">
+<input type="button" id="libraryShowButton" value="View uploaded tracks"
+       onclick="showLibrary();">
+</p>
+<div id="trackDialogArea" class="hidden">
+<div id="uploadDialog">
+<p class="subTitle">Upload Track to Lantea Maps Server:</p>
+<label for="uploadPublic">Visibility:</label>
+<select id="uploadPublic">
+<option value="true">Public Domain</option>
+<option value="false">Private</option>
+</select>
+<p class="dialogHelp">Public Domain tracks can be forwarded by the server
+operator to any other services, e.g. OpenStreetMap.</p>
+<p>
+<label for="uploadDesc">Comment:</label>
+<input type="text" id="uploadDesc" maxlength="255" size="25"
+       value="Lantea Maps">
+</p>
+<p>
+<input type="button" id="uploadDialogUploadButton" value="Upload Track"
+       onclick="uploadTrack();">
+<input type="button" id="uploadDialogCancelButton" value="Cancel"
+       onclick="cancelTrackDialog();">
+</p>
+</div>
+<div id="uploadStatus">
+<p class="dialogTitle">Track Upload to Lantea Maps Server</p>
+<p id="uploadInProgress"><img id="actionimg" src="style/loading_action.png">
+  Upload in progress&hellip;</p>
+<p id="uploadSuccess" style="display:none;">Track upload successful!</p>
+<p id="uploadFailed" style="display:none;">Track upload failed.</p>
+<p id="uploadError" style="display:none;">Error:<br>
+  <span id="uploadErrorMsg"></span></p>
+<input type="button" id="uploadStatusCloseButton" value="Close"
+       onclick="cancelTrackDialog();" disabled="true">
+</div>
+</div>
+<p class="loginbox">
+<button type="button" id="loginbtn" class="hidden">Sign in</button>
+<span id="logindesc" class="hidden">to enable uploads</span>
+<span id="username" class="hidden"></span>
+<button type="button" id="logoutbtn" class="hidden">Log out</button>
+</p>
+<p>
 <input type="checkbox" id="trackCheckbox"
        onchange="setTracking(this);">
 <label for="trackCheckbox">Enable tracking</label><br/>
+</p>
+<p>
 <input type="checkbox" id="centerCheckbox"
        onchange="setCentering(this);">
 <label for="centerCheckbox">Center Map</label><br/>
-</fieldset>
-<input type="button" id="settingsButton" value="Settings"
-       onclick="toggleSettings();"><br/>
-<fieldset id="settingsArea"><legend>Settings</legend>
-Map style:
+</p>
+</div>
+
+<div id="settingsArea" class="menuDrawer hidden">
+<h2 onclick="toggleSettings();">
+<image src="style/settings.svg" alt=""> Settings
+</h2>
+<p>
+<label for="mapSelector">Map style:</label>
 <select id="mapSelector" onchange="setMapStyle();">
 <!-- option value="osm_mapnik">OpenStreetMap (Mapnik)</option -->
 </select>
-</fieldset>
+</p>
+<p>
+<input type="button" id="clearCacheButton" value="Clear Cached Maps"
+       onclick="gTileService.clearDB();">
+</p>
+<div id="uploadSettingsArea">
+<p class="subTitle">Track Upload:</p>
+<p>
+<label for="uploadDevName">Device name:</label>
+<input type="text" id="uploadDevName" maxlength="255" placeholder="My Device"
+       onchange="setUploadField(this);">
+</p>
+<p class="dialogHelp">The device name enables you to tell apart tracks you may
+upload from multiple devices.</p>
+</div>
+</div>
+
+<div id="menuArea" class="overlayArea">
+<image src="style/track.svg" id="trackButton" value="Track"
+       onclick="toggleTrackArea();"><br/>
+<image src="style/settings.svg" id="settingsButton" alt="Settings"
+       onclick="toggleSettings();"><br/>
 </div>
 
+<div id="zoomArea" class="overlayArea">
+<input type="button" id="zoomInButton" value="+"
+       onclick="zoomIn();">
+<p id="zoomLevel">Z</p>
+<input type="button" id="zoomOutButton" value="&minus;"
+       onclick="zoomOut();">
+</div>
+
+<div id="fullscreenArea" class="overlayArea">
+<!-- other possible characters: &#x25F0; -->
+<input type="button" id="fullscreenButton" value="&#x25A3;"
+       onclick="toggleFullscreen();">
+</div>
+
+<div id="dialogArea" class="hidden">
+<div id="noGLwarning">
+  Unable to initialize WebGL. You need a browser that supports it.
+</div>
+</div>
+
+<div id="libraryArea" class="hidden">
+The following tracks are saved on the Lantea Maps Server:
+<ul id="libTrackList">
+</ul>
+<p id="libTrackPages" class="hidden"></p>
+<p id="libButtonLine"><button id="libCloseButton">Close</button></p>
+</div>
+
+<p id="action">
+  <img id="actionimg" src="style/loading_action.png">
+  <span id="actionlabel">Loading</span>&hellip;
+</p>
+<p id="copyright" class="overlayArea"></p>
+
 <canvas id="map" width="500" height="500">
   Please use a browser that supports &lt;canvas&gt; elements.
 </canvas>
-
-<p id="debug"></p>
-<p id="copyright"></p>
+<canvas id="track" width="500" height="500">
+</canvas>
 
 </body>
-</html>
\ No newline at end of file
+</html>