2013年8月17日土曜日

フィルムカメラの撮影データ送信の件(iPhone向けの話)

 最近、いいiPhoneアプリを教えて貰いました。
 Jsanyってアプリなんですけど、HTMLとJavaScript、CSSのコードを個別に書いて、ソイツを走らせることが出来るってアプリなんですよ!

 つまり、iPhone用のアプリを開発しなくても、簡単なツールならささっと作ってしまえるんですね。

 そこで思い出すのが、フィルムカメラの撮影データ送信のお話。

 この前までは、サーバを立てるなり借りるなりしなくちゃいけなかったモノが、コレ一つで完結するんですね。


 まぁ、何はともあれ、コードです。

HTML

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="viewport" content="width=device-width, minimum-scale=1.0,
maximum-scale=1.0, user-scalable=no" />
<meta name="apple-mobile-web-app-capable" content="yes" />
<title>Photo Data</title>
<script src="script.js"></script>
</head>
<body style="background-color:#eee;">
<FORM NAME="mailer" METHOD="post" ACTION="" ENCTYPE="text/plain">
<div>SS</div>
<select name="shuttsp" size="1">
<option value="500">500</option>
<option value="250">250</option>
<option value="125">125</option>
<option value="60">60</option>
<option value="30">30</option>
<option value="15">15</option>
<option value="8">8</option>
<option value="4">4</option>
<option value="2">2</option>
<option value="1sec">1sec</option>
<option value="2sec">2sec</option>
<option value="4sec">4sec</option>
<option value="8sec">8sec</option>
</select>

<select name="fnumber" size="1">
<option value="2.8">2.8</option>
<option value="4">4</option>
<option value="5.6">5.6</option>
<option value="8">8</option>
<option value="11">11</option>
<option value="16">16</option>
<option value="22">22</option>
</select>
<br>
<br>
<br>
<input type="button" name="sht" value="Shutter" onclick="shutter()">
<br>
<br>
<textarea name="datetext" Style="width:300px;height:100px;ime-mode: active;"></textarea>
<br>
<br>
<input type="button" name="sub" value="submit" onclick="gotomail()">
<br>
<br>
<br>
<textarea id="pos" name="latlng" Style="width:300px;height:30px;ime-mode: active;"></textarea>
</form>
</div>
</body>
</html>


JS


window.onload = function(){
    navigator.geolocation.watchPosition(update);
}
// 位置か検出されたら緯度、経度、誤差と時間を表示
function update(position){
    var lat = position.coords.latitude;
    var lng = position.coords.longitude;
    var acc = position.coords.accuracy;
    document.getElementById("pos").innerHTML = lat+","+lng+","+String.fromCharCode(13) + String.fromCharCode(10)+(new Date());
    //document.getElementById("pos").innerHTML = lat+","+lng+","+String.fromCharCode(13) + String.fromCharCode(10)+(new Date().toLocaleString());
}

//メールの所
function gotomail() {

  var mailto = "mailto:「ここに自分のメールアドレス」";
  mailto = mailto + "?subject=Photo Data&body=" + document.mailer.datetext.value;
  location.href = mailto;
  document.mailer.datetext.value = "";
}

//まとめるところ
function shutter() {
//    document.mailer.datetext.value = document.mailer.datetext.value + document.mailer.shuttsp.value + String.fromCharCode(9) + document.mailer.fnumber.value + String.fromCharCode(9) + document.mailer.latlng.value + String.fromCharCode(13) + String.fromCharCode(10) + String.fromCharCode(13) + String.fromCharCode(10);
    document.mailer.datetext.value =document.mailer.datetext.value + document.mailer.shuttsp.value + "%09" + document.mailer.fnumber.value + "%09" + document.mailer.latlng.value + "%0D%0A%0D%0A"+ String.fromCharCode(13) + String.fromCharCode(10) + String.fromCharCode(13) + String.fromCharCode(10);
}

//以上

 メールアドレスの所を"「」"も除いて、自分のモノに書き換えて下さい。
 って事で、今回はそんだけ!