addmove
<?php
include 'preamble.php';
// This page posts a form with detailed default capture info
// When user clicks submit, it is written to the banked move db
// incoming data is player and square and a comment
if ($_POST["Square"]) {
$BankOrEdit = "Bank"; //i.e., New
$Coords = explode("x",strtolower($_POST["Square"]));
echo "Lat=$Coords[0],Lon=$Coords[1]<p>";
$SComment = $_POST["ShortComment"];
$LatHem = $Deflts["LatHem"][$DefPlayer];
$LatDeg = $Deflts["LatDeg"][$DefPlayer];
$LatMin = ((60+$Coords[0]-$Deflts["LatOff"][$DefPlayer]) % 60);
if (abs($LatMin - $Deflts["LatMin"][$DefPlayer]) > 30) {
($LatMin < $Deflts["LatMin"][$DefPlayer] ? ++$LatDeg : abs(--$LatDeg));
}
$LonHem = $Deflts["LonHem"][$DefPlayer];
$LonDeg = $Deflts["LonDeg"][$DefPlayer];
$LonMin = ((60+$Coords[1]-$Deflts["LonOff"][$DefPlayer]) % 60);
if (abs($LonMin - $Deflts["LonMin"][$DefPlayer]) > 30) {
($LonMin < $Deflts["LonMin"][$DefPlayer] ? ++$LonDeg : abs(--$LonDeg));
}
$Description = "";
$ToLatHem = $LatHem;
$ToLatDeg = $LatDeg;
$ToLatMin = $LatMin;
$ToLatFMin = "random";
$ToLonHem = $LonHem;
$ToLonDeg = $LonDeg;
$ToLonMin = $LonMin;
$ToLonFMin = "random";
$ToDescription = "Random";
// Now look up the fractional minutes from the game board
//$Board = rtrim(file_get_contents($BoardURL));
include "Snoopy.class.php";
$snoopy = new Snoopy;
$snoopy->fetchtext($BoardURL);
$Board = rtrim($snoopy->results);
$BoardLines = explode("\n", $Board); // split the file into lines
foreach ($BoardLines as $OneLine) {
$Fields = explode("|", $OneLine); // split the line into individual fields
if (($Fields[0] == $Coords[0]) && ($Fields[1] == $Coords[1])) {
$LatFMin = substr($Fields[6],-3,3);
$LonFMin = substr($Fields[7],-3,3);
}
if (!$LatFMin) {
$LatFMin = substr($DefaultOffsets,0,3);
$LonFMin = substr($DefaultOffsets,3,3);
}
}
} elseif (isset($_GET["Id"])) {
// editing an existing move
$BankOrEdit = "Edit";
$MoveList = explode($MoveDelimiter, $MoveData);
$MovePieces = explode("|", $MoveList[$_GET["Id"]]);
$MoveHash = md5($MoveList[$_GET["Id"]]);
if ($_GET["H"] !== $MoveHash) {
echo "Internal Error - Move Hash does not agree with Move Index. <a href=\"movedb.php?T=$DefTeam&P=$DefPlayer\">Click Here</a> to get back to main page and try again<p>";
exit(2);
}
$SComment = $MovePieces[9];
$LatHem = $MovePieces[1];
$LatDeg = $MovePieces[2];
$LatMin = $MovePieces[3];
$LatFMin = $MovePieces[4];
$LonHem = $MovePieces[5];
$LonDeg = $MovePieces[6];
$LonMin = $MovePieces[7];
$LonFMin = $MovePieces[8];
$Description = $MovePieces[10];
$ToLatHem = $MovePieces[11];
$ToLatDeg = $MovePieces[12];
$ToLatMin = $MovePieces[13];
$ToLatFMin = $MovePieces[14];
$ToLonHem = $MovePieces[15];
$ToLonDeg = $MovePieces[16];
$ToLonMin = $MovePieces[17];
$ToLonFMin = $MovePieces[18];
$ToDescription = $MovePieces[19];
} else {
// error - no square or move id
echo "Error - entered with no move square or move id<p>";
exit(1);
}
?>
<html>
<head>
<title>MW Move Banker</title>
<SCRIPT>
function checkrand(form) {
if ((form.ToDescription.value.length > 15) && ((form.ToLatFMin.value == "random") || (form.ToLonFMin.value == "random"))) {
return confirm ("You have entered a Moved To Description, but left the coords as random. \nClick OK to continue with random placement. \nClick Cancel to return to the form and enter placement coordinates.");
}
return true;
}
</SCRIPT>
<!-- Google Maps scripts -->
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script>
<script type="text/javascript">
function initialize() {
// var latlng = new google.maps.LatLng(-34.397, 150.644);
// var myOptions = {
// zoom: 8,
// center: latlng,
// mapTypeId: google.maps.MapTypeId.ROADMAP
// };
// var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
//
// var marker = new google.maps.Marker({
// position: latlng,
// map: map,
// title:"Hello World!"
// });
}
</script>
</head>
<body bgcolor="#ffffff" text="#000000" link="#0000ff" vlink="#800080" alink="#ff0000" onload="initialize()">
<center>
<FORM METHOD="post" NAME="TheForm" onsubmit="return checkrand(this);" ACTION="movedb.php?T=<?php echo $DefTeam;?>&P=<?php echo $DefPlayer;?>">
<INPUT Type=Hidden Name=BankOrEdit Value="<?php echo $BankOrEdit; ?>">
<INPUT Type=Hidden Name=Id Value="<?php echo $_GET["Id"] . "," . $MoveHash; ?>">
<FONT FACE="arial">
<CENTER>Hi <?php echo "<b>".$DefPlayer."</b>. ".$BankOrEdit."ing ".$_POST["Square"];?>. Your offset is <?php echo $Deflts["LatOff"][$DefPlayer]." ".$Deflts["LonOff"][$DefPlayer];?></CENTER>
</FONT><p>
<div align="left">
<table border="0" cellpadding="4" cellspacing="4" style="border-collapse: collapse" bordercolor="#111111" bgcolor="#6699cc">
<tr>
<td>
<p align="left"><font color="#FFFFFF" face="Verdana" size="2">
Any information you enter here will be saved and can be used later in reporting your capture.<br>
It is not necessary to add any additional information if you don't want to.<br>
Click "Enter Banked Move" to put data in database.
You can just hit "back" if you would don't want to enter this move after all.<br>
<b>This form does not report your move to the MinuteWar Game Engine</b><br>
Use the map below (if available) to doublecheck your coordinates.
</font></td>
</tr>
</table>
</div>
<P>
<FONT FACE="arial">
<TABLE BORDER=0 CELLSPACING=0>
<TR>
<TD><B>Short Comment:</B></TD>
<TD colspan=7>
<INPUT Type=text NAME="ShortComment" size=15 value="<?php echo $SComment; ?>">
</TD>
</TR>
<TR><TD> </TD></TR>
<TR>
<TD><B>Found at Latitude:</B></TD>
<TD>
<SELECT NAME="LatHem">
<OPTION VALUE="N" <?php if ($LatHem=="N") { echo "SELECTED"; } ?>>N
<OPTION VALUE="S" <?php if ($LatHem=="S") { echo "SELECTED"; } ?>>S
</SELECT>
</TD>
<TD ALIGN=RIGHT><INPUT Type=text size=1 NAME="LatDeg" value=<?php echo $LatDeg;?>>
</TD>
<TD>°</TD>
<TD><INPUT Type=text size=2 NAME="LatMin" value=<?php echo $LatMin;?>>
</TD>
<TD><B>.</B></TD>
<TD><INPUT TYPE=TEXT SIZE=6 NAME="LatFMin" value=<?php echo $LatFMin;?>></TD>
<TD WIDTH=400> </TD>
</TR>
<TR>
<TD ALIGN=RIGHT><B>and Longitude:</B></TD>
<TD>
<SELECT NAME="LonHem">
<OPTION VALUE="W" <?php if ($LonHem=="W") { echo "SELECTED"; } ?>>W
<OPTION VALUE="E" <?php if ($LonHem=="E") { echo "SELECTED"; } ?>>E
</SELECT>
</TD>
<TD ALIGN=RIGHT><INPUT Type=text size=2 NAME="LonDeg" value=<?php echo $LonDeg;?>>
</TD>
<TD>°</TD>
<TD><INPUT Type=text size=2 NAME="LonMin" value=<?php echo $LonMin;?>>
</TD>
<TD><B>.</B></TD>
<TD><INPUT TYPE=TEXT SIZE=6 NAME="LonFMin" value=<?php echo $LonFMin;?>></TD>
<TD> </TD>
</TR>
<TR>
<TD><B>Description:</B><BR>
with enough detail<BR>
to 'prove' your visit
</TD>
<TD COLSPAN=7><TEXTAREA ROWS=6 COLS=60 NAME="Description"><?php echo $Description;?></TEXTAREA></TD>
</TR>
<TR><TD> </TD></TR>
<TR>
<TD><B>Moved to Latitude:</B></TD>
<TD>
<SELECT NAME="ToLatHem">
<OPTION VALUE="N" <?php if ($ToLatHem=="N") { echo "SELECTED"; } ?>>N
<OPTION VALUE="S" <?php if ($ToLatHem=="S") { echo "SELECTED"; } ?>>S
</SELECT>
</TD>
<TD ALIGN=RIGHT><INPUT Type=text size=1 NAME="ToLatDeg" value=<?php echo $ToLatDeg;?>>
</TD>
<TD>°</TD>
<TD>
<INPUT Type=text size=2 NAME="ToLatMin" value=<?php echo $ToLatMin;?>>
</TD>
<TD><B>.</B></TD>
<TD><INPUT TYPE=TEXT SIZE=6 NAME="ToLatFMin" value=<?php echo $ToLatFMin;?>></TD>
<TD>"Random" will move flag automatically.</TD>
</TR>
<TR>
<TD ALIGN=RIGHT><B>and Longitude:</B></TD>
<TD>
<SELECT NAME="ToLonHem">
<OPTION VALUE="W" <?php if ($ToLonHem=="W") { echo "SELECTED"; } ?>>W
<OPTION VALUE="E" <?php if ($ToLonHem=="E") { echo "SELECTED"; } ?>>E
</SELECT>
</TD>
<TD ALIGN=RIGHT><INPUT Type=text size=2 NAME="ToLonDeg" value=<?php echo $ToLonDeg;?>>
</TD>
<TD>°</TD>
<TD><INPUT Type=text size=2 NAME="ToLonMin" value=<?php echo $ToLonMin;?>>
</TD>
<TD><B>.</B></TD>
<TD><INPUT TYPE=TEXT SIZE=6 NAME="ToLonFMin" value=<?php echo $ToLonFMin;?>></TD>
<TD>Replace with a number to specify a flag position.</TD>
</TR>
<TR>
<TD><B>Description:</B><BR>
with enough detail<BR>
to 'prove' your visit
</TD>
<TD COLSPAN=7><TEXTAREA ROWS=6 COLS=60 NAME="ToDescription"><?php echo $ToDescription;?></TEXTAREA></TD>
</TR>
<TR>
<TD COLSPAN=8>
<CENTER><BR>
<INPUT TYPE=submit NAME=RecordCapture2 value="Enter Banked Move">
</CENTER>
</TD>
</TR>
</TABLE>
</FONT>
<P>
</FONT>
</FORM>
<hr>
<h2>Google Map of "Captured At" Location</h2>
<INPUT TYPE=BUTTON onclick="refreshMap()" value="Refresh Google Map">
<div id="map_canvas" style="width:500; height:450"></div>
<script type="text/javascript">
//<![CDATA[
function refreshMap()
{
var myLat = window.document.TheForm.LatDeg.value*1.0 + window.document.TheForm.LatMin.value/60.0 + window.document.TheForm.LatFMin.value/60000.0;
if (window.document.TheForm.LatHem.value == "S") { myLat = (-1.0) * myLat; }
var myLon = window.document.TheForm.LonDeg.value*1.0 + window.document.TheForm.LonMin.value/60.0 + window.document.TheForm.LonFMin.value/60000.0;
if (window.document.TheForm.LonHem.value == "W") { myLon = (-1.0) * myLon; }
var myLatLon = new google.maps.LatLng(myLat, myLon);
map.set_center( myLatLon );
marker.set_position( myLatLon );
}
var myLat = window.document.TheForm.LatDeg.value*1.0 + window.document.TheForm.LatMin.value/60.0 + window.document.TheForm.LatFMin.value/60000.0;
if (window.document.TheForm.LatHem.value == "S") { myLat = (-1.0) * myLat; }
var myLon = window.document.TheForm.LonDeg.value*1.0 + window.document.TheForm.LonMin.value/60.0 + window.document.TheForm.LonFMin.value/60000.0;
if (window.document.TheForm.LonHem.value == "W") { myLon = (-1.0) * myLon; }
var latlng = new google.maps.LatLng(myLat, myLon);
var myOptions = {
zoom: 14,
center: latlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
var marker = new google.maps.Marker({
position: latlng,
map: map,
title:"Captured At"
});
//]]>
</script>
</center>
</body>
</html>