function game(){
var gps = document.getElementById("get");
var txt = document.getElementById("txt");
var sa = document.getElementById("geosa");
var num = 0, latlng;
var dis;
function tryGetGPS() {
if (fail == -1) {fail = 3;}
navigator.geolocation.getCurrentPosition(
onSuccess, onError,{
maximumAge: 0, timeout: 3000, enableHighAccuracy: true
});
}
function onSuccess(pos){
if (num == 0){
latlng = L.latLng([pos.coords.latitude, pos.coords.longitude]);
txt.textContent = "位置情報の取得に成功";
num += 1;
} else {
var lat1 = L.latLng([pos.coords.latitude, pos.coords.longitude]);
dis = latlng.distanceTo(lat1)
dis = dis /= 5;
alert(dis);
sa.textContent = "移動によるボーナスポイント:"+dis;
txt.textContent = "位置情報の取得に成功";
latlng = lat1;
document.getElementById('js-sub').addEventListener('click', submit);
}
}
var fail = 3;
function onError(err) { // 失敗時
txt.textContent = "現在位置の取得失敗.(あと"+(--fail)+"回実行します)";
if (fail > 0){
tryGetGPS();
}
else {
txt.textContent = "現在位置をよみとれません。QRコードからお楽しみ下さい"
}
}
function respond(str) {
if (this.readyState == 4) {
var resp = JSON.parse(this.responseText);
var str = resp['差'];
document.getElementById('result').textContent = str;
}
}
function submit() {
if (dis != undefined) {
var conn = new XMLHttpRequest();
conn.open('POST', './idol.cgi');
conn.setRequestHeader(
'Content-Type', 'application/x-www-form-urlencoded');
conn.send('value='+encodeURIComponent(dis))
conn.onreadystatechange = respond;
}
}
gps.addEventListener("click", function() {tryGetGPS();}, false);
document.getElementById('js-sub').addEventListener('click', submit);
}
document.addEventListener("DOMContentLoaded", function() {
game();}, false);