From: maxious Date: Mon, 21 Mar 2011 12:16:52 +0000 Subject: Improve feedback form to autofill based on referrer X-Git-Url: http://maxious.lambdacomplex.org/git/?p=busui.git&a=commitdiff&h=611b34635f7d447a2cd720187f76371e8fd655c9 --- Improve feedback form to autofill based on referrer --- --- a/feedback.php +++ b/feedback.php @@ -1,11 +1,11 @@ verifyEmailAddress($address); @@ -24,16 +24,29 @@ mail($address, $topic, $message); } } + +$stopid = ""; +$stopcode = ""; +$urlparts = explode("?",$_SERVER["HTTP_REFERER"]); +if (isset($urlparts[1])) { + $getparams = explode("&",$urlparts[1]); + foreach ($getparams as $param) { + $paramparts=explode("=",$param); + if ($paramparts[0] == "stopid") $stopid = $paramparts[1]; + if ($paramparts[0] == "stopcode") $stopcode = $paramparts[1]; + } +} + ?>

Add/Move/Delete a Bus Stop Location

-StopID: -or StopCode: - if you click on feedback from a stop page, these will get filled in automatically. else describe the location/street of the stop +StopID:
+or StopCode:
+ if you click on feedback from a stop page, these will get filled in automatically. else describe the location/street of the stop in one of these boxes
-Suggested Stop Location (lat/long or words): - if your device supports javascript, you can pick a location from the map above +Suggested Stop Location (lat/long or words):
+ if your device supports javascript, you can pick a location from the map above
-Submit! +

Bug Report/Feedback

Please leave feedback about bugs/errors or general suggestions about improvements that could be made to the way the data is presented! @@ -41,14 +54,15 @@ -Submit! + + --- a/include/common-template.inc.php +++ b/include/common-template.inc.php @@ -36,6 +36,10 @@ if ($datepicker) echo ''; if (isDebugServer()) echo ' + '; else echo ' @@ -81,6 +85,10 @@ .min-width-480px .viaPoints { display: block; } + #extrainfo { + visibility: hidden; + display: none; + } // source http://webaim.org/techniques/skipnav/ #skip a, #skip a:hover, #skip a:visited { @@ -111,13 +119,13 @@ function success(position) { $('#geolocate').val(position.coords.latitude+','+position.coords.longitude); $.ajax({ url: \"common.inc.php?geolocate=yes&lat=\"+position.coords.latitude+\"&lon=\"+position.coords.longitude }); -$('#here').click(function(event) { $('#geolocate').val(doAJAXrequestForGeolocSessionHere()); return false;}); -$('#here').show(); +location.reload(true); } function error(msg) { console.log(msg); } +function geolocate() { if (navigator.geolocation) { var options = { enableHighAccuracy: false, @@ -126,8 +134,14 @@ } navigator.geolocation.getCurrentPosition(success, error, options); } - - "; +} +$(document).ready(function() { + $('#here').click(function(event) { $('#geolocate').val(geolocate()); return false;}); +$('#here').show(); +}); +"; +if (!isset($_SESSION['lat']) || $_SESSION['lat'] == "") echo "geolocate();"; +echo " "; } if (isAnalyticsOn()) echo ' "; - } echo ''; if (isAnalyticsOn()) { @@ -177,7 +185,7 @@ s.parentNode.insertBefore(ga, s); })();"; $googleAnalyticsImageUrl = googleAnalyticsGetImageUrl(); - echo ''; + echo ''; } } function timePlaceSettings($geolocate = false) @@ -194,7 +202,7 @@ } echo '

Change Time/Place (' . (isset($_SESSION['time']) ? $_SESSION['time'] : "Current Time,") . ' ' . ucwords(service_period()) . ')...

-
+
@@ -202,7 +210,8 @@
- Current Time? + + Current Time?
--- a/include/common.inc.php +++ b/include/common.inc.php @@ -59,7 +59,7 @@ } } } - if ($_SESSION['lat'] != "" && isMetricsOn()) { + if ($_SESSION['lat'] != "" && isAnalyticsOn()) { trackEvent("Geolocation","Updated Location", "Geocoded - ".($geocoded ? "Yes" : "No")); } } --- a/index.php +++ b/index.php @@ -12,7 +12,7 @@ --- a/routeList.php +++ b/routeList.php @@ -36,12 +36,16 @@ $suburb = filter_var($_REQUEST['suburb'], FILTER_SANITIZE_STRING); $url = $APIurl . "/json/stopzonesearch?q=" . $suburb; include_header("Routes by Suburb", "routeList"); + timePlaceSettings(true); trackEvent("Route Lists","Routes By Suburb", $suburb); - + if (!isset($_SESSION['lat']) || !isset($_SESSION['lat']) || $_SESSION['lat'] == "" || $_SESSION['lon'] == "") { + include_footer(); + die(); + } } if ($_REQUEST['nearby']) { $url = $APIurl . "/json/neareststops?lat={$_SESSION['lat']}&lon={$_SESSION['lon']}&limit=15"; - include_header("Routes Nearby", "routeList"); + include_header("Routes Nearby", "routeList", true, true); } $stops = json_decode(getPage($url)); $routes = Array(); --- a/stopList.php +++ b/stopList.php @@ -48,7 +48,7 @@ else if ($_REQUEST['nearby']) { $listType = 'nearby=yes'; $url = $APIurl . "/json/neareststops?lat={$_SESSION['lat']}&lon={$_SESSION['lon']}&limit=15"; - include_header("Nearby Stops", "stopList"); + include_header("Nearby Stops", "stopList", true, true); navbar(); timePlaceSettings(true); if (!isset($_SESSION['lat']) || !isset($_SESSION['lat']) || $_SESSION['lat'] == "" || $_SESSION['lon'] == "") {