dom/tests/browser/network_geolocation.sjs

Wed, 31 Dec 2014 06:09:35 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 06:09:35 +0100
changeset 0
6474c204b198
permissions
-rw-r--r--

Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.

michael@0 1 function parseQueryString(str)
michael@0 2 {
michael@0 3 if (str == "")
michael@0 4 return {};
michael@0 5
michael@0 6 var paramArray = str.split("&");
michael@0 7 var regex = /^([^=]+)=(.*)$/;
michael@0 8 var params = {};
michael@0 9 for (var i = 0, sz = paramArray.length; i < sz; i++)
michael@0 10 {
michael@0 11 var match = regex.exec(paramArray[i]);
michael@0 12 if (!match)
michael@0 13 throw "Bad parameter in queryString! '" + paramArray[i] + "'";
michael@0 14 params[decodeURIComponent(match[1])] = decodeURIComponent(match[2]);
michael@0 15 }
michael@0 16
michael@0 17 return params;
michael@0 18 }
michael@0 19
michael@0 20 function getPosition(expectedAccessToken, providedAccessToken, desiredAccessToken)
michael@0 21 {
michael@0 22 var response = {
michael@0 23 status: "OK",
michael@0 24 location: {
michael@0 25 lat: providedAccessToken ?
michael@0 26 (expectedAccessToken == providedAccessToken ? 200 : 404) : 200,
michael@0 27 lng: -122.08769,
michael@0 28 },
michael@0 29 accuracy: 100,
michael@0 30 access_token: desiredAccessToken
michael@0 31 };
michael@0 32
michael@0 33 return JSON.stringify(response);
michael@0 34 }
michael@0 35
michael@0 36 function handleRequest(request, response)
michael@0 37 {
michael@0 38 var params = parseQueryString(request.queryString);
michael@0 39
michael@0 40 response.setStatusLine("1.0", 200, "OK");
michael@0 41 response.setHeader("Cache-Control", "no-cache", false);
michael@0 42 response.setHeader("Content-Type", "aplication/x-javascript", false);
michael@0 43 response.write(getPosition(params.expected_access_token, params.access_token,
michael@0 44 params.desired_access_token));
michael@0 45 }

mercurial