Ignore:
Timestamp:
Sep 2, 2014, 9:31:07 PM (10 years ago)
Author:
alloc
Message:

Webserver files

Location:
binary-improvements/webserver
Files:
1 added
3 edited

Legend:

Unmodified
Added
Removed
  • binary-improvements/webserver/css/style.css

    r149 r153  
    1 html, body, #map {
     1html, body {
     2  height: 100%;
     3  margin: 0px;
     4  padding: 0px;
     5  background-color: #230000;
     6}
     7#map {
    28  height: 100%;
    39  margin: 0px;
  • binary-improvements/webserver/index.html

    r150 r153  
    66        <link rel="stylesheet prefetch" href="leaflet/leaflet.css">
    77        <link rel="stylesheet" href="css/style.css" media="screen" type="text/css" />
    8 </head>
     8        <script type="text/javascript" src="leaflet/leaflet.js"></script>
     9        <script type="text/javascript" src="js/jquery-1.11.1.min.js"></script>
     10        </head>
    911<body>
    1012        <div id="map"></div>
     
    1315        </div>
    1416
    15         <script type="text/javascript" src="leaflet/leaflet.js"></script>
    1617        <script type="text/javascript" src="js/index.js"></script>
    1718</body>
  • binary-improvements/webserver/js/index.js

    r150 r153  
    124124}
    125125
     126var playersOnlineMarkerGroup = L.layerGroup();
     127var playersOfflineMarkerGroup = L.layerGroup();
     128
    126129var baseLayers = {
    127130    //"Map": tileLayer
     
    129132
    130133var overlays = {
    131     "Region files": regionLayer
     134    "Region files": regionLayer,
     135    "Players (online)" : playersOnlineMarkerGroup,
     136    "Players (offline)" : playersOfflineMarkerGroup
    132137};
    133138
     
    140145        L.DomUtil.get('pos').textContent = FormatCoord(e.latlng);
    141146});
     147
     148var playersMappingList = {};
     149
     150var setPlayerMarkers = function(data) {
     151        $.each( data, function( key, val ) {
     152                var marker;
     153                if (playersMappingList.hasOwnProperty(val.steamid)) {
     154                        marker = playersMappingList[val.steamid].currentPosMarker;
     155                        marker.setLatLng([val.position.z, val.position.x]);
     156                } else {
     157                        marker = L.marker([val.position.z, val.position.x]).bindPopup(val.name);
     158                        playersOnlineMarkerGroup.addLayer(marker);
     159                        playersMappingList[val.steamid] = { online: !val.online };
     160                }
     161                if (playersMappingList[val.steamid].online != val.online) {
     162                        if (val.online) {
     163                                marker.setOpacity(1.0);
     164                                playersOfflineMarkerGroup.removeLayer(marker);
     165                                playersOnlineMarkerGroup.addLayer(marker);
     166                        } else {
     167                                marker.setOpacity(0.5);
     168                                playersOnlineMarkerGroup.removeLayer(marker);
     169                                playersOfflineMarkerGroup.addLayer(marker);
     170                        }
     171                }
     172                val.currentPosMarker = marker;
     173                playersMappingList[val.steamid] = val;
     174        });
     175}
     176
     177var updatePlayerEvent = function() {
     178        $.getJSON( "../api/getplayerslocation")
     179        .done(setPlayerMarkers)
     180        .fail(function() {
     181                console.log("Error fetching players list");
     182        })
     183        .always(function() {
     184                window.setTimeout(updatePlayerEvent, 2000);
     185        });
     186}
     187
     188window.setTimeout(updatePlayerEvent, 500);
     189
Note: See TracChangeset for help on using the changeset viewer.