From 5af70bab8595436f2d9c8b07f9aa50bd1493afed Mon Sep 17 00:00:00 2001
From: duminil <duminil@2c044af0-2e85-064f-a0c3-7471430cffcd>
Date: Mon, 22 Dec 2014 11:45:52 +0000
Subject: [PATCH] Repair small RegionChooser bug.

---
 website/polygon.js | 31 ++++++++++++++++++++-----------
 1 file changed, 20 insertions(+), 11 deletions(-)

diff --git a/website/polygon.js b/website/polygon.js
index f7de2fd..ed8ac76 100644
--- a/website/polygon.js
+++ b/website/polygon.js
@@ -7,9 +7,11 @@ function PolygonCreator(map) {
 	this.map = map;
 	this.pen = new Pen(this.map);
 	var thisOjb = this;
-	proj4.defs("EPSG:31467", "+proj=tmerc +lat_0=0 +lon_0=9 +k=1 +x_0=3500000 +y_0=0"
-			+ " +ellps=bessel +datum=potsdam +units=m +no_defs"); // http://spatialreference.org/ref/epsg/31467/proj4js/
-	this.event = google.maps.event.addListener(thisOjb.map, 'click', function(event) {
+	proj4.defs("EPSG:31467",
+			"+proj=tmerc +lat_0=0 +lon_0=9 +k=1 +x_0=3500000 +y_0=0"
+					+ " +ellps=bessel +datum=potsdam +units=m +no_defs"); // http://spatialreference.org/ref/epsg/31467/proj4js/
+	this.event = google.maps.event.addListener(thisOjb.map, 'click', function(
+			event) {
 		thisOjb.pen.draw(event.latLng);
 	});
 	this.destroy = function() {
@@ -33,7 +35,8 @@ function Pen(map) {
 		if (null != this.polygon) {
 			alert('Click Reset to draw another');
 		} else {
-			if (this.currentDot != null && this.listOfDots.length > 1 && this.currentDot == this.listOfDots[0]) {
+			if (this.currentDot != null && this.listOfDots.length > 1
+					&& this.currentDot == this.listOfDots[0]) {
 				this.drawPolygon(this.listOfDots);
 				this.refreshInfo();
 			} else {
@@ -94,13 +97,16 @@ function Pen(map) {
 		var n = listOfDots.length;
 		for (var i = 0; i < n; i++) {
 			var latLng = listOfDots[i].latLng;
-			var gk3_coords = proj4(fromProjection, toProjection, [ latLng.lng(), latLng.lat() ]);
+			var gk3_coords = proj4(fromProjection, toProjection, [
+					latLng.lng(), latLng.lat() ]);
 			xs.push(gk3_coords[0] - 3500000);
 			ys.push(gk3_coords[1] - 5000000);
 			data += "(" + (gk3_coords.toString() + ")<br/>");
 		}
 		if (n > 2) {
-			data += "<br/>\nArea : " + (Math.round(polygonArea(xs, ys) / 1000) / 10).toString() + " ha<br/>";
+			data += "<br/>\nArea : "
+					+ (Math.round(polygonArea(xs, ys) / 1000) / 10).toString()
+					+ " ha<br/>";
 		}
 		return data;
 	}
@@ -113,8 +119,10 @@ function Pen(map) {
 			this.polygon = null;
 			this.drawPolygon(this.listOfDots);
 		}
-		this.polyline.remove();
-		this.polyline = new Line(this.listOfDots, this.map);
+		if (null != this.polyline) {
+			this.polyline.remove();
+			this.polyline = new Line(this.listOfDots, this.map);
+		}
 		this.refreshInfo();
 	}
 }
@@ -222,9 +230,10 @@ function Polygon(listOfDots, map, pen, color) {
 	}
 	this.addListener = function() {
 		var thisPolygon = this.polygonObj;
-		google.maps.event.addListener(thisPolygon, 'rightclick', function(event) {
-			return false;
-		});
+		google.maps.event.addListener(thisPolygon, 'rightclick',
+				function(event) {
+					return false;
+				});
 	}
 	this.addListener();
 }
-- 
GitLab