This is a read only archive of pad.okfn.org. See the
  shutdown announcement
  for details.
crazyunicorncode
<!DOCTYPE html>
<html>
 <head>
    <meta charset="utf-8" />
     <title>Pingu Flag</title>
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap-theme.min.css">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/leaflet/0.7.3/leaflet.css" />
    <link href='https://fonts.googleapis.com/css?family=Oswald' rel='stylesheet' type='text/css'>
    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
    <style>
    img { margin-top: 10px; 
       }
    body {
        padding: 0;
        margin: 0;}
    html, body, #map {
        height: 100%;}
    #setflag {
    position: relative;
    top: -50px;
    left: 20px;
    }
    h1 {     color: #1C1C1A;
    font-family: 'Oswald', sans-serif;
    position: absolute;
    top: -10px;
    left: 50px;
    background: rgba(255,255,255,0.7);
    padding: 5px;
    border-radius: 2px;
    z-index: 1001;
    box-shadow: rgba(0,0,0,0.2) 0px 1px 5px;
    font-size: 2.2em;
    }
    
    h6 {
      #formular {
              position: absolute;
    top: 75px;
    left: 10%;
    z-index: 1001;
    width: 80%;
    background: rgba(255, 255, 255, 0.79);
    padding: 5px;
    border-radius: 5px;
    box-shadow: rgba(0,0,0,0.5) 0px 1px 5px;
    display: none;
              }
         #formular img {
-              width: 29px;
- }     
 
- #formular input , #formular textarea {
- #formular button {
</style>
 </head>
 <body>
     <h1>Pingu Flag</h1>
    <div id="formular">
    <form>
    <input type="text" name="name" class="form-control" placeholder="Name">
    <textarea class="form-control" rows="3" placeholder="Nachricht"></textarea>
    <div>
-     <input type="radio" value="blau" name="farbe" checked="true" /><img src="flag.png" />
-     <input type="radio" value="pink" name="farbe" /><img src="pinkflag.png" />
-     <input type="radio" value="green" name="farbe" /><img src="greenflag.png" />
- </div>
 
</input>
     <button id="ok" type="button" class="btn btn-danger"><span  class="glyphicon glyphicon-ok"></span></button>
     <button id="close" type="button" class="btn btn-default"><span  class="glyphicon glyphicon-remove"></span></button>
    </form>
    </div>
     <div id="map"></div>
     <button id="setflag" type="button" class="btn  btn-danger"><span class="glyphicon  glyphicon-flag"></span></button>
    <script src="https://code.jquery.com/jquery-1.11.0.min.js"></script>
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/js/bootstrap.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/leaflet/0.7.3/leaflet.js"></script>
    <script src="https://api.backendless.com/sdk/js/latest/backendless.min.js"></script>
    <script>
        
    
    Backendless.initApp( '754274B2-09CF-FEF8-FFA5-3B9339B82600', 'E22562B5-9ACF-F5D9-FFDB-13F2B0C68000', 'v1' );
    
      //karte initialisieren
     var map = L.map('map')
    .setView([51.505, -0.09], 13); 
          
            // unser pnguin
    var myIcon = L.icon({
        iconUrl: 'smallpngu.png',
        iconSize: [50,50],
        iconAnchor: [37,37],
        popupAnchor: [-12, -28],
    className: 'pngu',
    });
    var myFlag = L.icon({
        iconUrl: 'flag.png',
        iconSize: [29,42],
        iconAnchor: [13,55],
        popupAnchor: [-12, -47],
                className: 'flag',
    });
     // add an OpenStreetMap tile layer 
    L.tileLayer('http://{s}.tile.osm.org/{z}/{x}/{y}.png', {     attribution: '© <a href="http://osm.org/copyright">OpenStreetMap</a> contributors' }).addTo(map);  
    // add a marker in the given location, attach some popup content to it and open the popup 
             var pngu = L.marker([0,0],{icon: myIcon}).addTo(map);
     
            // finde meine Position
    // Was passiert wenn die Position gefunden wurde
    var fahnen = [ ];
    function geo_success(position) {
               // karte auf meine position zentrieren
      map.setView([position.coords.latitude, position.coords.longitude]);
      // den Pnguin verschieben
    pngu.setLatLng([position.coords.latitude, position.coords.longitude]).update();
    var farben = {
-         "blau": "flag.png",
-  "pink": "pinkflag.png",
- "green": "greenflag.png"
-         }
 
-     // Fahnen Finden
-     var callback = new Backendless.Async(
- function(result)
- // Fahnen Gefunden
- console.log(result.data);
- for (i in result.data) {
- var fahne = result.data[i];
 
- if ( fahnen.indexOf(fahne.objectId) < 0 ) {
- var farbe = fahne.metadata.farbe || "blau"; 
-    var myFlag = L.icon({
-         iconUrl: farben[farbe],
-         iconSize: [29,42],
-         iconAnchor: [13,55],
-         popupAnchor: [-12, -47],
-                 className: 'flag',
-     });
 
-   L.marker([fahne.latitude,fahne.longitude],{icon: myFlag}).addTo(map)
- .bindPopup("<h6>"+(fahne.metadata.name || "")+"</h6>"+
- decodeURI(fahne.metadata.nachricht));
 
- fahnen.push(fahne.objectId);
- };
 
- };
- },
- function(result)
- {
- console.log( "error - " + result.message );
- });
- {
-  latitude: position.coords.latitude,
longitude: position.coords.longitude, radius: 2000, units: "METERS",includeMetadata:true, categories: ["fahne"]}
-  Backendless.Geo.find( geoQuery, callback );
};
    // was passiert wenn keine Position gefunden wurde
    function geo_error() {
      alert("I can't see you???");}
    // optionen
    var geo_options = {
      enableHighAccuracy: true, 
      maximumAge        : 30000, 
      timeout           : 27000};
    // beobachte meine Position
    var wpid = navigator.geolocation.watchPosition(geo_success, geo_error, geo_options);
    // Popup Auf
    $("#setflag").on("click",function() {$("#formular").show()});
    // Popup Zu
    $("#close").on("click",function() {$("#formular").hide()});
    $("#ok").on("click", function() {
    // Fahne Setzen
    var name = $("#formular input[name=name]").val();
    var nachricht = $("#formular textarea").val();
    var farbe = $("#formular input[name=farbe]:checked").val();
    
-     var myPosition = pngu.getLatLng();
- // Fahne Speichern
- var callback = new Backendless.Async(
-  function( result )
-  {
-    console.log( "geo point saved " + result.geopoint.objectId );
-  },
-  function(result)
-  {
-    alert( "Konnte Fahne nicht Speichern " + result.message );
-  });
-  
- var point = {
-  latitude: myPosition.lat,
-  longitude: myPosition.lng,
-  categories: ["fahne"],
-  metadata: {"name": name,
- "nachricht": encodeURI(encodeURI(nachricht)),
- "farbe": farbe}
-  }
-  
- Backendless.Geo.addPoint( point, callback );
// Popup Zu
    $("#formular").hide();
    });
    </script>
 </body>
</html>