Completed
Push — master ( 46434e...ad133e )
by Yannick
32:08 queued 16:03
created
require/libs/geoPHP/tests/test.php 4 patches
Doc Comments   +6 added lines patch added patch discarded remove patch
@@ -112,6 +112,9 @@  discard block
 block discarded – undo
112 112
   $geometry->m();
113 113
 }
114 114
 
115
+/**
116
+ * @param string $input
117
+ */
115 118
 function test_adapters($geometry, $format, $input) {
116 119
   // Test adapter output and input. Do a round-trip and re-test
117 120
   foreach (geoPHP::getAdapterMap() as $adapter_key => $adapter_class) {
@@ -234,6 +237,9 @@  discard block
 block discarded – undo
234 237
   }
235 238
 }
236 239
 
240
+/**
241
+ * @param string $value
242
+ */
237 243
 function test_detection($value, $format, $file) {
238 244
   $detected = geoPHP::detectFormat($value);
239 245
   if ($detected != $format) {
Please login to merge, or discard this patch.
Indentation   +106 added lines, -106 removed lines patch added patch discarded remove patch
@@ -11,24 +11,24 @@  discard block
 block discarded – undo
11 11
   include_once('../geoPHP.inc');
12 12
 
13 13
   if (geoPHP::geosInstalled()) {
14
-    print "GEOS is installed.\n";
14
+	print "GEOS is installed.\n";
15 15
   }
16 16
   else {
17
-    print "GEOS is not installed.\n";
17
+	print "GEOS is not installed.\n";
18 18
   }
19 19
 
20 20
   foreach (scandir('./input') as $file) {
21
-    $parts = explode('.',$file);
22
-    if ($parts[0]) {
23
-      $format = $parts[1];
24
-      $value = file_get_contents('./input/'.$file);
25
-      print '---- Testing '.$file."\n";
26
-      $geometry = geoPHP::load($value, $format);
27
-      test_adapters($geometry, $format, $value);
28
-      test_methods($geometry);
29
-      test_geometry($geometry);
30
-      test_detection($value, $format, $file);
31
-    }
21
+	$parts = explode('.',$file);
22
+	if ($parts[0]) {
23
+	  $format = $parts[1];
24
+	  $value = file_get_contents('./input/'.$file);
25
+	  print '---- Testing '.$file."\n";
26
+	  $geometry = geoPHP::load($value, $format);
27
+	  test_adapters($geometry, $format, $value);
28
+	  test_methods($geometry);
29
+	  test_geometry($geometry);
30
+	  test_detection($value, $format, $file);
31
+	}
32 32
   }
33 33
   print "Testing Done!";
34 34
 }
@@ -115,21 +115,21 @@  discard block
 block discarded – undo
115 115
 function test_adapters($geometry, $format, $input) {
116 116
   // Test adapter output and input. Do a round-trip and re-test
117 117
   foreach (geoPHP::getAdapterMap() as $adapter_key => $adapter_class) {
118
-    if ($adapter_key != 'google_geocode') { //Don't test google geocoder regularily. Uncomment to test
119
-      $output = $geometry->out($adapter_key);
120
-      if ($output) {
121
-        $adapter_loader = new $adapter_class();
122
-        $test_geom_1 = $adapter_loader->read($output);
123
-        $test_geom_2 = $adapter_loader->read($test_geom_1->out($adapter_key));
124
-
125
-        if ($test_geom_1->out('wkt') != $test_geom_2->out('wkt')) {
126
-          print "Mismatched adapter output in ".$adapter_class."\n";
127
-        }
128
-      }
129
-      else {
130
-        print "Empty output on "  . $adapter_key . "\n";
131
-      }
132
-    }
118
+	if ($adapter_key != 'google_geocode') { //Don't test google geocoder regularily. Uncomment to test
119
+	  $output = $geometry->out($adapter_key);
120
+	  if ($output) {
121
+		$adapter_loader = new $adapter_class();
122
+		$test_geom_1 = $adapter_loader->read($output);
123
+		$test_geom_2 = $adapter_loader->read($test_geom_1->out($adapter_key));
124
+
125
+		if ($test_geom_1->out('wkt') != $test_geom_2->out('wkt')) {
126
+		  print "Mismatched adapter output in ".$adapter_class."\n";
127
+		}
128
+	  }
129
+	  else {
130
+		print "Empty output on "  . $adapter_key . "\n";
131
+	  }
132
+	}
133 133
   }
134 134
 
135 135
   // Test to make sure adapter work the same wether GEOS is ON or OFF
@@ -137,30 +137,30 @@  discard block
 block discarded – undo
137 137
   if (!geoPHP::geosInstalled()) return;
138 138
 
139 139
   foreach (geoPHP::getAdapterMap() as $adapter_key => $adapter_class) {
140
-    if ($adapter_key != 'google_geocode') { //Don't test google geocoder regularily. Uncomment to test
141
-      // Turn GEOS on
142
-      geoPHP::geosInstalled(TRUE);
140
+	if ($adapter_key != 'google_geocode') { //Don't test google geocoder regularily. Uncomment to test
141
+	  // Turn GEOS on
142
+	  geoPHP::geosInstalled(TRUE);
143 143
 
144
-      $output = $geometry->out($adapter_key);
145
-      if ($output) {
146
-        $adapter_loader = new $adapter_class();
144
+	  $output = $geometry->out($adapter_key);
145
+	  if ($output) {
146
+		$adapter_loader = new $adapter_class();
147 147
 
148
-        $test_geom_1 = $adapter_loader->read($output);
148
+		$test_geom_1 = $adapter_loader->read($output);
149 149
 
150
-        // Turn GEOS off
151
-        geoPHP::geosInstalled(FALSE);
150
+		// Turn GEOS off
151
+		geoPHP::geosInstalled(FALSE);
152 152
 
153
-        $test_geom_2 = $adapter_loader->read($output);
153
+		$test_geom_2 = $adapter_loader->read($output);
154 154
 
155
-        // Turn GEOS back On
156
-        geoPHP::geosInstalled(TRUE);
155
+		// Turn GEOS back On
156
+		geoPHP::geosInstalled(TRUE);
157 157
 
158
-        // Check to make sure a both are the same with geos and without
159
-        if ($test_geom_1->out('wkt') != $test_geom_2->out('wkt')) {
160
-          print "Mismatched adapter output between GEOS and NORM in ".$adapter_class."\n";
161
-        }
162
-      }
163
-    }
158
+		// Check to make sure a both are the same with geos and without
159
+		if ($test_geom_1->out('wkt') != $test_geom_2->out('wkt')) {
160
+		  print "Mismatched adapter output between GEOS and NORM in ".$adapter_class."\n";
161
+		}
162
+	  }
163
+	}
164 164
   }
165 165
 }
166 166
 
@@ -170,75 +170,75 @@  discard block
 block discarded – undo
170 170
   if (!geoPHP::geosInstalled()) return;
171 171
 
172 172
   $methods = array(
173
-    //'boundary', //@@TODO: Uncomment this and fix errors
174
-    'envelope',   //@@TODO: Testing reveales errors in this method -- POINT vs. POLYGON
175
-    'getBBox',
176
-    'x',
177
-    'y',
178
-    'startPoint',
179
-    'endPoint',
180
-    'isRing',
181
-    'isClosed',
182
-    'numPoints',
173
+	//'boundary', //@@TODO: Uncomment this and fix errors
174
+	'envelope',   //@@TODO: Testing reveales errors in this method -- POINT vs. POLYGON
175
+	'getBBox',
176
+	'x',
177
+	'y',
178
+	'startPoint',
179
+	'endPoint',
180
+	'isRing',
181
+	'isClosed',
182
+	'numPoints',
183 183
   );
184 184
 
185 185
   foreach ($methods as $method) {
186
-    // Turn GEOS on
187
-    geoPHP::geosInstalled(TRUE);
188
-    $geos_result = $geometry->$method();
189
-
190
-    // Turn GEOS off
191
-    geoPHP::geosInstalled(FALSE);
192
-    $norm_result = $geometry->$method();
193
-
194
-    // Turn GEOS back On
195
-    geoPHP::geosInstalled(TRUE);
196
-
197
-    $geos_type = gettype($geos_result);
198
-    $norm_type = gettype($norm_result);
199
-
200
-    if ($geos_type != $norm_type) {
201
-      print 'Type mismatch on '.$method."\n";
202
-      continue;
203
-    }
204
-
205
-    // Now check base on type
206
-    if ($geos_type == 'object') {
207
-      $haus_dist = $geos_result->hausdorffDistance(geoPHP::load($norm_result->out('wkt'),'wkt'));
208
-
209
-      // Get the length of the diagonal of the bbox - this is used to scale the haustorff distance
210
-      // Using Pythagorean theorem
211
-      $bb = $geos_result->getBBox();
212
-      $scale = sqrt((($bb['maxy'] - $bb['miny'])^2) + (($bb['maxx'] - $bb['minx'])^2));
213
-
214
-      // The difference in the output of GEOS and native-PHP methods should be less than 0.5 scaled haustorff units
215
-      if ($haus_dist / $scale > 0.5) {
216
-        print 'Output mismatch on '.$method.":\n";
217
-        print 'GEOS : '.$geos_result->out('wkt')."\n";
218
-        print 'NORM : '.$norm_result->out('wkt')."\n";
219
-        continue;
220
-      }
221
-    }
222
-
223
-    if ($geos_type == 'boolean' || $geos_type == 'string') {
224
-      if ($geos_result !== $norm_result) {
225
-        print 'Output mismatch on '.$method.":\n";
226
-        print 'GEOS : '.(string) $geos_result."\n";
227
-        print 'NORM : '.(string) $norm_result."\n";
228
-        continue;
229
-      }
230
-    }
231
-
232
-    //@@TODO: Run tests for output of types arrays and float
233
-    //@@TODO: centroid function is non-compliant for collections and strings
186
+	// Turn GEOS on
187
+	geoPHP::geosInstalled(TRUE);
188
+	$geos_result = $geometry->$method();
189
+
190
+	// Turn GEOS off
191
+	geoPHP::geosInstalled(FALSE);
192
+	$norm_result = $geometry->$method();
193
+
194
+	// Turn GEOS back On
195
+	geoPHP::geosInstalled(TRUE);
196
+
197
+	$geos_type = gettype($geos_result);
198
+	$norm_type = gettype($norm_result);
199
+
200
+	if ($geos_type != $norm_type) {
201
+	  print 'Type mismatch on '.$method."\n";
202
+	  continue;
203
+	}
204
+
205
+	// Now check base on type
206
+	if ($geos_type == 'object') {
207
+	  $haus_dist = $geos_result->hausdorffDistance(geoPHP::load($norm_result->out('wkt'),'wkt'));
208
+
209
+	  // Get the length of the diagonal of the bbox - this is used to scale the haustorff distance
210
+	  // Using Pythagorean theorem
211
+	  $bb = $geos_result->getBBox();
212
+	  $scale = sqrt((($bb['maxy'] - $bb['miny'])^2) + (($bb['maxx'] - $bb['minx'])^2));
213
+
214
+	  // The difference in the output of GEOS and native-PHP methods should be less than 0.5 scaled haustorff units
215
+	  if ($haus_dist / $scale > 0.5) {
216
+		print 'Output mismatch on '.$method.":\n";
217
+		print 'GEOS : '.$geos_result->out('wkt')."\n";
218
+		print 'NORM : '.$norm_result->out('wkt')."\n";
219
+		continue;
220
+	  }
221
+	}
222
+
223
+	if ($geos_type == 'boolean' || $geos_type == 'string') {
224
+	  if ($geos_result !== $norm_result) {
225
+		print 'Output mismatch on '.$method.":\n";
226
+		print 'GEOS : '.(string) $geos_result."\n";
227
+		print 'NORM : '.(string) $norm_result."\n";
228
+		continue;
229
+	  }
230
+	}
231
+
232
+	//@@TODO: Run tests for output of types arrays and float
233
+	//@@TODO: centroid function is non-compliant for collections and strings
234 234
   }
235 235
 }
236 236
 
237 237
 function test_detection($value, $format, $file) {
238 238
   $detected = geoPHP::detectFormat($value);
239 239
   if ($detected != $format) {
240
-    if ($detected) print 'detected as ' . $detected . "\n";
241
-    else print "not detected\n";
240
+	if ($detected) print 'detected as ' . $detected . "\n";
241
+	else print "not detected\n";
242 242
   }
243 243
   // Make sure it loads using auto-detect
244 244
   geoPHP::load($value);
Please login to merge, or discard this patch.
Spacing   +7 added lines, -7 removed lines patch added patch discarded remove patch
@@ -18,7 +18,7 @@  discard block
 block discarded – undo
18 18
   }
19 19
 
20 20
   foreach (scandir('./input') as $file) {
21
-    $parts = explode('.',$file);
21
+    $parts = explode('.', $file);
22 22
     if ($parts[0]) {
23 23
       $format = $parts[1];
24 24
       $value = file_get_contents('./input/'.$file);
@@ -88,7 +88,7 @@  discard block
 block discarded – undo
88 88
   $geometry->difference($geometry);
89 89
   $geometry->symDifference($geometry);
90 90
   $geometry->union($geometry);
91
-  $geometry->simplify(0);// @@TODO: Adjust this once we can deal with empty geometries
91
+  $geometry->simplify(0); // @@TODO: Adjust this once we can deal with empty geometries
92 92
   $geometry->disjoint($geometry);
93 93
   $geometry->touches($geometry);
94 94
   $geometry->intersects($geometry);
@@ -127,7 +127,7 @@  discard block
 block discarded – undo
127 127
         }
128 128
       }
129 129
       else {
130
-        print "Empty output on "  . $adapter_key . "\n";
130
+        print "Empty output on ".$adapter_key."\n";
131 131
       }
132 132
     }
133 133
   }
@@ -171,7 +171,7 @@  discard block
 block discarded – undo
171 171
 
172 172
   $methods = array(
173 173
     //'boundary', //@@TODO: Uncomment this and fix errors
174
-    'envelope',   //@@TODO: Testing reveales errors in this method -- POINT vs. POLYGON
174
+    'envelope', //@@TODO: Testing reveales errors in this method -- POINT vs. POLYGON
175 175
     'getBBox',
176 176
     'x',
177 177
     'y',
@@ -204,7 +204,7 @@  discard block
 block discarded – undo
204 204
 
205 205
     // Now check base on type
206 206
     if ($geos_type == 'object') {
207
-      $haus_dist = $geos_result->hausdorffDistance(geoPHP::load($norm_result->out('wkt'),'wkt'));
207
+      $haus_dist = $geos_result->hausdorffDistance(geoPHP::load($norm_result->out('wkt'), 'wkt'));
208 208
 
209 209
       // Get the length of the diagonal of the bbox - this is used to scale the haustorff distance
210 210
       // Using Pythagorean theorem
@@ -212,7 +212,7 @@  discard block
 block discarded – undo
212 212
       $scale = sqrt((($bb['maxy'] - $bb['miny'])^2) + (($bb['maxx'] - $bb['minx'])^2));
213 213
 
214 214
       // The difference in the output of GEOS and native-PHP methods should be less than 0.5 scaled haustorff units
215
-      if ($haus_dist / $scale > 0.5) {
215
+      if ($haus_dist/$scale > 0.5) {
216 216
         print 'Output mismatch on '.$method.":\n";
217 217
         print 'GEOS : '.$geos_result->out('wkt')."\n";
218 218
         print 'NORM : '.$norm_result->out('wkt')."\n";
@@ -237,7 +237,7 @@  discard block
 block discarded – undo
237 237
 function test_detection($value, $format, $file) {
238 238
   $detected = geoPHP::detectFormat($value);
239 239
   if ($detected != $format) {
240
-    if ($detected) print 'detected as ' . $detected . "\n";
240
+    if ($detected) print 'detected as '.$detected."\n";
241 241
     else print "not detected\n";
242 242
   }
243 243
   // Make sure it loads using auto-detect
Please login to merge, or discard this patch.
Braces   +13 added lines, -8 removed lines patch added patch discarded remove patch
@@ -12,8 +12,7 @@  discard block
 block discarded – undo
12 12
 
13 13
   if (geoPHP::geosInstalled()) {
14 14
     print "GEOS is installed.\n";
15
-  }
16
-  else {
15
+  } else {
17 16
     print "GEOS is not installed.\n";
18 17
   }
19 18
 
@@ -125,8 +124,7 @@  discard block
 block discarded – undo
125 124
         if ($test_geom_1->out('wkt') != $test_geom_2->out('wkt')) {
126 125
           print "Mismatched adapter output in ".$adapter_class."\n";
127 126
         }
128
-      }
129
-      else {
127
+      } else {
130 128
         print "Empty output on "  . $adapter_key . "\n";
131 129
       }
132 130
     }
@@ -134,7 +132,9 @@  discard block
 block discarded – undo
134 132
 
135 133
   // Test to make sure adapter work the same wether GEOS is ON or OFF
136 134
   // Cannot test methods if GEOS is not intstalled
137
-  if (!geoPHP::geosInstalled()) return;
135
+  if (!geoPHP::geosInstalled()) {
136
+  	return;
137
+  }
138 138
 
139 139
   foreach (geoPHP::getAdapterMap() as $adapter_key => $adapter_class) {
140 140
     if ($adapter_key != 'google_geocode') { //Don't test google geocoder regularily. Uncomment to test
@@ -167,7 +167,9 @@  discard block
 block discarded – undo
167 167
 
168 168
 function test_methods($geometry) {
169 169
   // Cannot test methods if GEOS is not intstalled
170
-  if (!geoPHP::geosInstalled()) return;
170
+  if (!geoPHP::geosInstalled()) {
171
+  	return;
172
+  }
171 173
 
172 174
   $methods = array(
173 175
     //'boundary', //@@TODO: Uncomment this and fix errors
@@ -237,8 +239,11 @@  discard block
 block discarded – undo
237 239
 function test_detection($value, $format, $file) {
238 240
   $detected = geoPHP::detectFormat($value);
239 241
   if ($detected != $format) {
240
-    if ($detected) print 'detected as ' . $detected . "\n";
241
-    else print "not detected\n";
242
+    if ($detected) {
243
+    	print 'detected as ' . $detected . "\n";
244
+    } else {
245
+    	print "not detected\n";
246
+    }
242 247
   }
243 248
   // Make sure it loads using auto-detect
244 249
   geoPHP::load($value);
Please login to merge, or discard this patch.
require/libs/geoPHP/tests/tests/methodsTest.php 4 patches
Doc Comments   +4 added lines patch added patch discarded remove patch
@@ -58,6 +58,10 @@
 block discarded – undo
58 58
     }
59 59
   }
60 60
 
61
+  /**
62
+   * @param string $method_name
63
+   * @param string|null $argument
64
+   */
61 65
   function _methods_tester($geometry, $method_name, $argument) {
62 66
 
63 67
     if (!method_exists($geometry, $method_name)) {
Please login to merge, or discard this patch.
Indentation   +328 added lines, -328 removed lines patch added patch discarded remove patch
@@ -9,357 +9,357 @@
 block discarded – undo
9 9
   }
10 10
 
11 11
   function testMethods() {
12
-    foreach (scandir('./input') as $file) {
13
-      $parts = explode('.',$file);
14
-      if ($parts[0]) {
15
-        $format = $parts[1];
16
-        $value = file_get_contents('./input/'.$file);
17
-        $geometry = geoPHP::load($value, $format);
12
+	foreach (scandir('./input') as $file) {
13
+	  $parts = explode('.',$file);
14
+	  if ($parts[0]) {
15
+		$format = $parts[1];
16
+		$value = file_get_contents('./input/'.$file);
17
+		$geometry = geoPHP::load($value, $format);
18 18
 
19
-        $methods = array(
20
-          array('name' => 'area'),
21
-          array('name' => 'boundary'),
22
-          array('name' => 'getBBox'),
23
-          array('name' => 'centroid'),
24
-          array('name' => 'length'),
25
-          array('name' => 'greatCircleLength'),
26
-          array('name' => 'haversineLength'),
27
-          array('name' => 'y'),
28
-          array('name' => 'x'),
29
-          array('name' => 'numGeometries'),
30
-          array('name' => 'geometryN', 'argument' => '1'),
31
-          array('name' => 'startPoint'),
32
-          array('name' => 'endPoint'),
33
-          array('name' => 'isRing'),
34
-          array('name' => 'isClosed'),
35
-          array('name' => 'numPoints'),
36
-          array('name' => 'pointN', 'argument' => '1'),
37
-          array('name' => 'exteriorRing'),
38
-          array('name' => 'numInteriorRings'),
39
-          array('name' => 'interiorRingN', 'argument' => '1'),
40
-          array('name' => 'dimension'),
41
-          array('name' => 'geometryType'),
42
-          array('name' => 'SRID'),
43
-          array('name' => 'setSRID', 'argument' => '4326'),
44
-        );
19
+		$methods = array(
20
+		  array('name' => 'area'),
21
+		  array('name' => 'boundary'),
22
+		  array('name' => 'getBBox'),
23
+		  array('name' => 'centroid'),
24
+		  array('name' => 'length'),
25
+		  array('name' => 'greatCircleLength'),
26
+		  array('name' => 'haversineLength'),
27
+		  array('name' => 'y'),
28
+		  array('name' => 'x'),
29
+		  array('name' => 'numGeometries'),
30
+		  array('name' => 'geometryN', 'argument' => '1'),
31
+		  array('name' => 'startPoint'),
32
+		  array('name' => 'endPoint'),
33
+		  array('name' => 'isRing'),
34
+		  array('name' => 'isClosed'),
35
+		  array('name' => 'numPoints'),
36
+		  array('name' => 'pointN', 'argument' => '1'),
37
+		  array('name' => 'exteriorRing'),
38
+		  array('name' => 'numInteriorRings'),
39
+		  array('name' => 'interiorRingN', 'argument' => '1'),
40
+		  array('name' => 'dimension'),
41
+		  array('name' => 'geometryType'),
42
+		  array('name' => 'SRID'),
43
+		  array('name' => 'setSRID', 'argument' => '4326'),
44
+		);
45 45
 
46
-        foreach($methods as $method) {
47
-          $argument = NULL;
48
-          $method_name = $method['name'];
49
-          if (isset($method['argument'])) {
50
-            $argument = $method['argument'];
51
-          }
46
+		foreach($methods as $method) {
47
+		  $argument = NULL;
48
+		  $method_name = $method['name'];
49
+		  if (isset($method['argument'])) {
50
+			$argument = $method['argument'];
51
+		  }
52 52
 
53
-          $this->_methods_tester($geometry, $method_name, $argument);
54
-        }
53
+		  $this->_methods_tester($geometry, $method_name, $argument);
54
+		}
55 55
 
56
-        $this->_methods_tester_with_geos($geometry);
57
-      }
58
-    }
56
+		$this->_methods_tester_with_geos($geometry);
57
+	  }
58
+	}
59 59
   }
60 60
 
61 61
   function _methods_tester($geometry, $method_name, $argument) {
62 62
 
63
-    if (!method_exists($geometry, $method_name)) {
64
-      $this->fail("Method ".$method_name.'() doesn\'t exists.');
65
-      return;
66
-    }
63
+	if (!method_exists($geometry, $method_name)) {
64
+	  $this->fail("Method ".$method_name.'() doesn\'t exists.');
65
+	  return;
66
+	}
67 67
 
68
-    switch ($method_name) {
69
-      case 'y':
70
-      case 'x':
71
-        if ($geometry->geometryType() == 'Point') {
72
-          $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
73
-        }
74
-        if ($geometry->geometryType() == 'LineString') {
75
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
76
-        }
77
-        if ($geometry->geometryType() == 'MultiLineString') {
78
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
79
-        }
80
-        break;
81
-      case 'geometryN':
82
-        if ($geometry->geometryType() == 'Point') {
83
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
84
-        }
85
-        if ($geometry->geometryType() == 'LineString') {
86
-          $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
87
-        }
88
-        if ($geometry->geometryType() == 'MultiLineString') {
89
-          $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
90
-        }
91
-        break;
92
-      case 'startPoint':
93
-        if ($geometry->geometryType() == 'Point') {
94
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
95
-        }
96
-        if ($geometry->geometryType() == 'LineString') {
97
-          $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
98
-        }
99
-        if ($geometry->geometryType() == 'MultiLineString') {
100
-          //TODO: Add a method startPoint() to MultiLineString.
101
-          //$this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
102
-        }
103
-        break;
104
-      case 'endPoint':
105
-        if ($geometry->geometryType() == 'Point') {
106
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
107
-        }
108
-        if ($geometry->geometryType() == 'LineString') {
109
-          $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
110
-        }
111
-        if ($geometry->geometryType() == 'MultiLineString') {
112
-          //TODO: Add a method endPoint() to MultiLineString.
113
-          //$this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
114
-        }
115
-        break;
116
-      case 'isRing':
117
-        if ($geometry->geometryType() == 'Point') {
118
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
119
-        }
120
-        if ($geometry->geometryType() == 'LineString') {
121
-          $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
122
-        }
123
-        if ($geometry->geometryType() == 'MultiLineString') {
124
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
125
-        }
126
-        break;
127
-      case 'isClosed':
128
-        if ($geometry->geometryType() == 'Point') {
129
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
130
-        }
131
-        if ($geometry->geometryType() == 'LineString') {
132
-          $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
133
-        }
134
-        if ($geometry->geometryType() == 'MultiLineString') {
135
-          $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
136
-        }
137
-        break;
138
-      case 'pointN':
139
-        if ($geometry->geometryType() == 'Point') {
140
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
141
-        }
142
-        if ($geometry->geometryType() == 'LineString') {
143
-          $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
144
-        }
145
-        if ($geometry->geometryType() == 'MultiLineString') {
146
-          //TODO: Add a method pointN() to MultiLineString.
147
-          //$this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
148
-        }
149
-        break;
150
-      case 'exteriorRing':
151
-        if ($geometry->geometryType() == 'Point') {
152
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
153
-        }
154
-        if ($geometry->geometryType() == 'LineString') {
155
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
156
-        }
157
-        if ($geometry->geometryType() == 'MultiLineString') {
158
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
159
-        }
160
-        break;
161
-      case 'numInteriorRings':
162
-        if ($geometry->geometryType() == 'Point') {
163
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
164
-        }
165
-        if ($geometry->geometryType() == 'LineString') {
166
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
167
-        }
168
-        if ($geometry->geometryType() == 'MultiLineString') {
169
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
170
-        }
171
-        break;
172
-      case 'interiorRingN':
173
-        if ($geometry->geometryType() == 'Point') {
174
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
175
-        }
176
-        if ($geometry->geometryType() == 'LineString') {
177
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
178
-        }
179
-        if ($geometry->geometryType() == 'MultiLineString') {
180
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
181
-        }
182
-        break;
183
-      case 'SRID':
184
-        if ($geometry->geometryType() == 'Point') {
185
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
186
-        }
187
-        if ($geometry->geometryType() == 'LineString') {
188
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
189
-        }
190
-        if ($geometry->geometryType() == 'MultiLineString') {
191
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
192
-        }
193
-        break;
194
-      case 'getBBox':
195
-        if ($geometry->geometryType() == 'Point') {
196
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
197
-        }
198
-        if ($geometry->geometryType() == 'LineString') {
199
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
200
-        }
201
-        if ($geometry->geometryType() == 'MultiLineString') {
202
-          $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
203
-        }
204
-        break;
205
-      case 'centroid':
206
-        if ($geometry->geometryType() == 'Point') {
207
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
208
-        }
209
-        if ($geometry->geometryType() == 'LineString') {
210
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
211
-        }
212
-        if ($geometry->geometryType() == 'MultiLineString') {
213
-          $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
214
-        }
215
-        break;
216
-      case 'length':
217
-        if ($geometry->geometryType() == 'Point') {
218
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
219
-        }
220
-        if ($geometry->geometryType() == 'LineString') {
221
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
222
-        }
223
-        if ($geometry->geometryType() == 'MultiLineString') {
224
-          $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
225
-        }
226
-        break;
227
-      case 'numGeometries':
228
-        if ($geometry->geometryType() == 'Point') {
229
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
230
-        }
231
-        if ($geometry->geometryType() == 'LineString') {
232
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
233
-        }
234
-        if ($geometry->geometryType() == 'MultiLineString') {
235
-          $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
236
-        }
237
-        break;
238
-      case 'numPoints':
239
-        if ($geometry->geometryType() == 'Point') {
240
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
241
-        }
242
-        if ($geometry->geometryType() == 'LineString') {
243
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
244
-        }
245
-        if ($geometry->geometryType() == 'MultiLineString') {
246
-          $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
247
-        }
248
-        break;
249
-      case 'dimension':
250
-        if ($geometry->geometryType() == 'Point') {
251
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
252
-        }
253
-        if ($geometry->geometryType() == 'LineString') {
254
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
255
-        }
256
-        if ($geometry->geometryType() == 'MultiLineString') {
257
-          $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
258
-        }
259
-        break;
260
-      case 'boundary':
261
-        if ($geometry->geometryType() == 'Point') {
262
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
263
-        }
264
-        if ($geometry->geometryType() == 'LineString') {
265
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
266
-        }
267
-        if ($geometry->geometryType() == 'MultiLineString') {
268
-          $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
269
-        }
270
-        break;
271
-      case 'haversineLength':
272
-        //TODO: Check if output is a float >= 0.
273
-        //TODO: Sometimes haversineLength() returns NAN, needs to check why.
274
-        break;
275
-      case 'greatCircleLength':
276
-      case 'area':
277
-        $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
278
-        break;
279
-      case 'geometryType':
280
-        $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
281
-        break;
282
-      case 'setSRID':
283
-        //TODO: The method setSRID() should return TRUE.
284
-        break;
285
-      default:
286
-        $this->assertTrue($geometry->$method_name($argument), 'Failed on ' . $method_name);
287
-    }
68
+	switch ($method_name) {
69
+	  case 'y':
70
+	  case 'x':
71
+		if ($geometry->geometryType() == 'Point') {
72
+		  $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
73
+		}
74
+		if ($geometry->geometryType() == 'LineString') {
75
+		  $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
76
+		}
77
+		if ($geometry->geometryType() == 'MultiLineString') {
78
+		  $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
79
+		}
80
+		break;
81
+	  case 'geometryN':
82
+		if ($geometry->geometryType() == 'Point') {
83
+		  $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
84
+		}
85
+		if ($geometry->geometryType() == 'LineString') {
86
+		  $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
87
+		}
88
+		if ($geometry->geometryType() == 'MultiLineString') {
89
+		  $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
90
+		}
91
+		break;
92
+	  case 'startPoint':
93
+		if ($geometry->geometryType() == 'Point') {
94
+		  $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
95
+		}
96
+		if ($geometry->geometryType() == 'LineString') {
97
+		  $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
98
+		}
99
+		if ($geometry->geometryType() == 'MultiLineString') {
100
+		  //TODO: Add a method startPoint() to MultiLineString.
101
+		  //$this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
102
+		}
103
+		break;
104
+	  case 'endPoint':
105
+		if ($geometry->geometryType() == 'Point') {
106
+		  $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
107
+		}
108
+		if ($geometry->geometryType() == 'LineString') {
109
+		  $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
110
+		}
111
+		if ($geometry->geometryType() == 'MultiLineString') {
112
+		  //TODO: Add a method endPoint() to MultiLineString.
113
+		  //$this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
114
+		}
115
+		break;
116
+	  case 'isRing':
117
+		if ($geometry->geometryType() == 'Point') {
118
+		  $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
119
+		}
120
+		if ($geometry->geometryType() == 'LineString') {
121
+		  $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
122
+		}
123
+		if ($geometry->geometryType() == 'MultiLineString') {
124
+		  $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
125
+		}
126
+		break;
127
+	  case 'isClosed':
128
+		if ($geometry->geometryType() == 'Point') {
129
+		  $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
130
+		}
131
+		if ($geometry->geometryType() == 'LineString') {
132
+		  $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
133
+		}
134
+		if ($geometry->geometryType() == 'MultiLineString') {
135
+		  $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
136
+		}
137
+		break;
138
+	  case 'pointN':
139
+		if ($geometry->geometryType() == 'Point') {
140
+		  $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
141
+		}
142
+		if ($geometry->geometryType() == 'LineString') {
143
+		  $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
144
+		}
145
+		if ($geometry->geometryType() == 'MultiLineString') {
146
+		  //TODO: Add a method pointN() to MultiLineString.
147
+		  //$this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
148
+		}
149
+		break;
150
+	  case 'exteriorRing':
151
+		if ($geometry->geometryType() == 'Point') {
152
+		  $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
153
+		}
154
+		if ($geometry->geometryType() == 'LineString') {
155
+		  $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
156
+		}
157
+		if ($geometry->geometryType() == 'MultiLineString') {
158
+		  $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
159
+		}
160
+		break;
161
+	  case 'numInteriorRings':
162
+		if ($geometry->geometryType() == 'Point') {
163
+		  $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
164
+		}
165
+		if ($geometry->geometryType() == 'LineString') {
166
+		  $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
167
+		}
168
+		if ($geometry->geometryType() == 'MultiLineString') {
169
+		  $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
170
+		}
171
+		break;
172
+	  case 'interiorRingN':
173
+		if ($geometry->geometryType() == 'Point') {
174
+		  $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
175
+		}
176
+		if ($geometry->geometryType() == 'LineString') {
177
+		  $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
178
+		}
179
+		if ($geometry->geometryType() == 'MultiLineString') {
180
+		  $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
181
+		}
182
+		break;
183
+	  case 'SRID':
184
+		if ($geometry->geometryType() == 'Point') {
185
+		  $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
186
+		}
187
+		if ($geometry->geometryType() == 'LineString') {
188
+		  $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
189
+		}
190
+		if ($geometry->geometryType() == 'MultiLineString') {
191
+		  $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
192
+		}
193
+		break;
194
+	  case 'getBBox':
195
+		if ($geometry->geometryType() == 'Point') {
196
+		  $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
197
+		}
198
+		if ($geometry->geometryType() == 'LineString') {
199
+		  $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
200
+		}
201
+		if ($geometry->geometryType() == 'MultiLineString') {
202
+		  $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
203
+		}
204
+		break;
205
+	  case 'centroid':
206
+		if ($geometry->geometryType() == 'Point') {
207
+		  $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
208
+		}
209
+		if ($geometry->geometryType() == 'LineString') {
210
+		  $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
211
+		}
212
+		if ($geometry->geometryType() == 'MultiLineString') {
213
+		  $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
214
+		}
215
+		break;
216
+	  case 'length':
217
+		if ($geometry->geometryType() == 'Point') {
218
+		  $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
219
+		}
220
+		if ($geometry->geometryType() == 'LineString') {
221
+		  $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
222
+		}
223
+		if ($geometry->geometryType() == 'MultiLineString') {
224
+		  $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
225
+		}
226
+		break;
227
+	  case 'numGeometries':
228
+		if ($geometry->geometryType() == 'Point') {
229
+		  $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
230
+		}
231
+		if ($geometry->geometryType() == 'LineString') {
232
+		  $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
233
+		}
234
+		if ($geometry->geometryType() == 'MultiLineString') {
235
+		  $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
236
+		}
237
+		break;
238
+	  case 'numPoints':
239
+		if ($geometry->geometryType() == 'Point') {
240
+		  $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
241
+		}
242
+		if ($geometry->geometryType() == 'LineString') {
243
+		  $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
244
+		}
245
+		if ($geometry->geometryType() == 'MultiLineString') {
246
+		  $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
247
+		}
248
+		break;
249
+	  case 'dimension':
250
+		if ($geometry->geometryType() == 'Point') {
251
+		  $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
252
+		}
253
+		if ($geometry->geometryType() == 'LineString') {
254
+		  $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
255
+		}
256
+		if ($geometry->geometryType() == 'MultiLineString') {
257
+		  $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
258
+		}
259
+		break;
260
+	  case 'boundary':
261
+		if ($geometry->geometryType() == 'Point') {
262
+		  $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
263
+		}
264
+		if ($geometry->geometryType() == 'LineString') {
265
+		  $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
266
+		}
267
+		if ($geometry->geometryType() == 'MultiLineString') {
268
+		  $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
269
+		}
270
+		break;
271
+	  case 'haversineLength':
272
+		//TODO: Check if output is a float >= 0.
273
+		//TODO: Sometimes haversineLength() returns NAN, needs to check why.
274
+		break;
275
+	  case 'greatCircleLength':
276
+	  case 'area':
277
+		$this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
278
+		break;
279
+	  case 'geometryType':
280
+		$this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
281
+		break;
282
+	  case 'setSRID':
283
+		//TODO: The method setSRID() should return TRUE.
284
+		break;
285
+	  default:
286
+		$this->assertTrue($geometry->$method_name($argument), 'Failed on ' . $method_name);
287
+	}
288 288
 
289 289
   }
290 290
 
291 291
   function _methods_tester_with_geos($geometry) {
292
-    // Cannot test methods if GEOS is not intstalled
293
-    if (!geoPHP::geosInstalled()) return;
292
+	// Cannot test methods if GEOS is not intstalled
293
+	if (!geoPHP::geosInstalled()) return;
294 294
 
295
-    $methods = array(
296
-      //'boundary', //@@TODO: Uncomment this and fix errors
297
-      'envelope',   //@@TODO: Testing reveales errors in this method -- POINT vs. POLYGON
298
-      'getBBox',
299
-      'x',
300
-      'y',
301
-      'startPoint',
302
-      'endPoint',
303
-      'isRing',
304
-      'isClosed',
305
-      'numPoints',
306
-    );
295
+	$methods = array(
296
+	  //'boundary', //@@TODO: Uncomment this and fix errors
297
+	  'envelope',   //@@TODO: Testing reveales errors in this method -- POINT vs. POLYGON
298
+	  'getBBox',
299
+	  'x',
300
+	  'y',
301
+	  'startPoint',
302
+	  'endPoint',
303
+	  'isRing',
304
+	  'isClosed',
305
+	  'numPoints',
306
+	);
307 307
 
308
-    foreach ($methods as $method) {
309
-      // Turn GEOS on
310
-      geoPHP::geosInstalled(TRUE);
311
-      $geos_result = $geometry->$method();
308
+	foreach ($methods as $method) {
309
+	  // Turn GEOS on
310
+	  geoPHP::geosInstalled(TRUE);
311
+	  $geos_result = $geometry->$method();
312 312
 
313
-      // Turn GEOS off
314
-      geoPHP::geosInstalled(FALSE);
315
-      $norm_result = $geometry->$method();
313
+	  // Turn GEOS off
314
+	  geoPHP::geosInstalled(FALSE);
315
+	  $norm_result = $geometry->$method();
316 316
 
317
-      // Turn GEOS back On
318
-      geoPHP::geosInstalled(TRUE);
317
+	  // Turn GEOS back On
318
+	  geoPHP::geosInstalled(TRUE);
319 319
 
320
-      $geos_type = gettype($geos_result);
321
-      $norm_type = gettype($norm_result);
320
+	  $geos_type = gettype($geos_result);
321
+	  $norm_type = gettype($norm_result);
322 322
 
323
-      if ($geos_type != $norm_type) {
324
-        $this->fail('Type mismatch on '.$method);
325
-        $this->dump($geos_type);
326
-        $this->dump($norm_type);
327
-        continue;
328
-      }
323
+	  if ($geos_type != $norm_type) {
324
+		$this->fail('Type mismatch on '.$method);
325
+		$this->dump($geos_type);
326
+		$this->dump($norm_type);
327
+		continue;
328
+	  }
329 329
 
330
-      // Now check base on type
331
-      if ($geos_type == 'object') {
332
-        $haus_dist = $geos_result->hausdorffDistance(geoPHP::load($norm_result->out('wkt'),'wkt'));
330
+	  // Now check base on type
331
+	  if ($geos_type == 'object') {
332
+		$haus_dist = $geos_result->hausdorffDistance(geoPHP::load($norm_result->out('wkt'),'wkt'));
333 333
 
334
-        // Get the length of the diagonal of the bbox - this is used to scale the haustorff distance
335
-        // Using Pythagorean theorem
336
-        $bb = $geos_result->getBBox();
337
-        $scale = sqrt((($bb['maxy'] - $bb['miny'])^2) + (($bb['maxx'] - $bb['minx'])^2));
334
+		// Get the length of the diagonal of the bbox - this is used to scale the haustorff distance
335
+		// Using Pythagorean theorem
336
+		$bb = $geos_result->getBBox();
337
+		$scale = sqrt((($bb['maxy'] - $bb['miny'])^2) + (($bb['maxx'] - $bb['minx'])^2));
338 338
 
339
-        // The difference in the output of GEOS and native-PHP methods should be less than 0.5 scaled haustorff units
340
-        if ($haus_dist / $scale > 0.5) {
341
-          $this->fail('Output mismatch on '.$method);
342
-          $this->dump('GEOS : ');
343
-          $this->dump($geos_result->out('wkt'));
344
-          $this->dump('NORM : ');
345
-          $this->dump($norm_result->out('wkt'));
346
-          continue;
347
-        }
348
-      }
339
+		// The difference in the output of GEOS and native-PHP methods should be less than 0.5 scaled haustorff units
340
+		if ($haus_dist / $scale > 0.5) {
341
+		  $this->fail('Output mismatch on '.$method);
342
+		  $this->dump('GEOS : ');
343
+		  $this->dump($geos_result->out('wkt'));
344
+		  $this->dump('NORM : ');
345
+		  $this->dump($norm_result->out('wkt'));
346
+		  continue;
347
+		}
348
+	  }
349 349
 
350
-      if ($geos_type == 'boolean' || $geos_type == 'string') {
351
-        if ($geos_result !== $norm_result) {
352
-          $this->fail('Output mismatch on '.$method);
353
-          $this->dump('GEOS : ');
354
-          $this->dump((string) $geos_result);
355
-          $this->dump('NORM : ');
356
-          $this->dump((string) $norm_result);
357
-          continue;
358
-        }
359
-      }
350
+	  if ($geos_type == 'boolean' || $geos_type == 'string') {
351
+		if ($geos_result !== $norm_result) {
352
+		  $this->fail('Output mismatch on '.$method);
353
+		  $this->dump('GEOS : ');
354
+		  $this->dump((string) $geos_result);
355
+		  $this->dump('NORM : ');
356
+		  $this->dump((string) $norm_result);
357
+		  continue;
358
+		}
359
+	  }
360 360
 
361
-      //@@TODO: Run tests for output of types arrays and float
362
-      //@@TODO: centroid function is non-compliant for collections and strings
363
-    }
361
+	  //@@TODO: Run tests for output of types arrays and float
362
+	  //@@TODO: centroid function is non-compliant for collections and strings
363
+	}
364 364
   }
365 365
 }
Please login to merge, or discard this patch.
Spacing   +59 added lines, -59 removed lines patch added patch discarded remove patch
@@ -10,7 +10,7 @@  discard block
 block discarded – undo
10 10
 
11 11
   function testMethods() {
12 12
     foreach (scandir('./input') as $file) {
13
-      $parts = explode('.',$file);
13
+      $parts = explode('.', $file);
14 14
       if ($parts[0]) {
15 15
         $format = $parts[1];
16 16
         $value = file_get_contents('./input/'.$file);
@@ -43,7 +43,7 @@  discard block
 block discarded – undo
43 43
           array('name' => 'setSRID', 'argument' => '4326'),
44 44
         );
45 45
 
46
-        foreach($methods as $method) {
46
+        foreach ($methods as $method) {
47 47
           $argument = NULL;
48 48
           $method_name = $method['name'];
49 49
           if (isset($method['argument'])) {
@@ -69,32 +69,32 @@  discard block
 block discarded – undo
69 69
       case 'y':
70 70
       case 'x':
71 71
         if ($geometry->geometryType() == 'Point') {
72
-          $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
72
+          $this->assertNotNull($geometry->$method_name($argument), 'Failed on '.$method_name);
73 73
         }
74 74
         if ($geometry->geometryType() == 'LineString') {
75
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
75
+          $this->assertNull($geometry->$method_name($argument), 'Failed on '.$method_name);
76 76
         }
77 77
         if ($geometry->geometryType() == 'MultiLineString') {
78
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
78
+          $this->assertNull($geometry->$method_name($argument), 'Failed on '.$method_name);
79 79
         }
80 80
         break;
81 81
       case 'geometryN':
82 82
         if ($geometry->geometryType() == 'Point') {
83
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
83
+          $this->assertNull($geometry->$method_name($argument), 'Failed on '.$method_name);
84 84
         }
85 85
         if ($geometry->geometryType() == 'LineString') {
86
-          $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
86
+          $this->assertNotNull($geometry->$method_name($argument), 'Failed on '.$method_name);
87 87
         }
88 88
         if ($geometry->geometryType() == 'MultiLineString') {
89
-          $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
89
+          $this->assertNotNull($geometry->$method_name($argument), 'Failed on '.$method_name);
90 90
         }
91 91
         break;
92 92
       case 'startPoint':
93 93
         if ($geometry->geometryType() == 'Point') {
94
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
94
+          $this->assertNull($geometry->$method_name($argument), 'Failed on '.$method_name);
95 95
         }
96 96
         if ($geometry->geometryType() == 'LineString') {
97
-          $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
97
+          $this->assertNotNull($geometry->$method_name($argument), 'Failed on '.$method_name);
98 98
         }
99 99
         if ($geometry->geometryType() == 'MultiLineString') {
100 100
           //TODO: Add a method startPoint() to MultiLineString.
@@ -103,10 +103,10 @@  discard block
 block discarded – undo
103 103
         break;
104 104
       case 'endPoint':
105 105
         if ($geometry->geometryType() == 'Point') {
106
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
106
+          $this->assertNull($geometry->$method_name($argument), 'Failed on '.$method_name);
107 107
         }
108 108
         if ($geometry->geometryType() == 'LineString') {
109
-          $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
109
+          $this->assertNotNull($geometry->$method_name($argument), 'Failed on '.$method_name);
110 110
         }
111 111
         if ($geometry->geometryType() == 'MultiLineString') {
112 112
           //TODO: Add a method endPoint() to MultiLineString.
@@ -115,32 +115,32 @@  discard block
 block discarded – undo
115 115
         break;
116 116
       case 'isRing':
117 117
         if ($geometry->geometryType() == 'Point') {
118
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
118
+          $this->assertNull($geometry->$method_name($argument), 'Failed on '.$method_name);
119 119
         }
120 120
         if ($geometry->geometryType() == 'LineString') {
121
-          $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
121
+          $this->assertNotNull($geometry->$method_name($argument), 'Failed on '.$method_name);
122 122
         }
123 123
         if ($geometry->geometryType() == 'MultiLineString') {
124
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
124
+          $this->assertNull($geometry->$method_name($argument), 'Failed on '.$method_name);
125 125
         }
126 126
         break;
127 127
       case 'isClosed':
128 128
         if ($geometry->geometryType() == 'Point') {
129
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
129
+          $this->assertNull($geometry->$method_name($argument), 'Failed on '.$method_name);
130 130
         }
131 131
         if ($geometry->geometryType() == 'LineString') {
132
-          $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
132
+          $this->assertNotNull($geometry->$method_name($argument), 'Failed on '.$method_name);
133 133
         }
134 134
         if ($geometry->geometryType() == 'MultiLineString') {
135
-          $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
135
+          $this->assertNotNull($geometry->$method_name($argument), 'Failed on '.$method_name);
136 136
         }
137 137
         break;
138 138
       case 'pointN':
139 139
         if ($geometry->geometryType() == 'Point') {
140
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
140
+          $this->assertNull($geometry->$method_name($argument), 'Failed on '.$method_name);
141 141
         }
142 142
         if ($geometry->geometryType() == 'LineString') {
143
-          $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
143
+          $this->assertNotNull($geometry->$method_name($argument), 'Failed on '.$method_name);
144 144
         }
145 145
         if ($geometry->geometryType() == 'MultiLineString') {
146 146
           //TODO: Add a method pointN() to MultiLineString.
@@ -149,123 +149,123 @@  discard block
 block discarded – undo
149 149
         break;
150 150
       case 'exteriorRing':
151 151
         if ($geometry->geometryType() == 'Point') {
152
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
152
+          $this->assertNull($geometry->$method_name($argument), 'Failed on '.$method_name);
153 153
         }
154 154
         if ($geometry->geometryType() == 'LineString') {
155
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
155
+          $this->assertNull($geometry->$method_name($argument), 'Failed on '.$method_name);
156 156
         }
157 157
         if ($geometry->geometryType() == 'MultiLineString') {
158
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
158
+          $this->assertNull($geometry->$method_name($argument), 'Failed on '.$method_name);
159 159
         }
160 160
         break;
161 161
       case 'numInteriorRings':
162 162
         if ($geometry->geometryType() == 'Point') {
163
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
163
+          $this->assertNull($geometry->$method_name($argument), 'Failed on '.$method_name);
164 164
         }
165 165
         if ($geometry->geometryType() == 'LineString') {
166
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
166
+          $this->assertNull($geometry->$method_name($argument), 'Failed on '.$method_name);
167 167
         }
168 168
         if ($geometry->geometryType() == 'MultiLineString') {
169
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
169
+          $this->assertNull($geometry->$method_name($argument), 'Failed on '.$method_name);
170 170
         }
171 171
         break;
172 172
       case 'interiorRingN':
173 173
         if ($geometry->geometryType() == 'Point') {
174
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
174
+          $this->assertNull($geometry->$method_name($argument), 'Failed on '.$method_name);
175 175
         }
176 176
         if ($geometry->geometryType() == 'LineString') {
177
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
177
+          $this->assertNull($geometry->$method_name($argument), 'Failed on '.$method_name);
178 178
         }
179 179
         if ($geometry->geometryType() == 'MultiLineString') {
180
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
180
+          $this->assertNull($geometry->$method_name($argument), 'Failed on '.$method_name);
181 181
         }
182 182
         break;
183 183
       case 'SRID':
184 184
         if ($geometry->geometryType() == 'Point') {
185
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
185
+          $this->assertNull($geometry->$method_name($argument), 'Failed on '.$method_name);
186 186
         }
187 187
         if ($geometry->geometryType() == 'LineString') {
188
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
188
+          $this->assertNull($geometry->$method_name($argument), 'Failed on '.$method_name);
189 189
         }
190 190
         if ($geometry->geometryType() == 'MultiLineString') {
191
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
191
+          $this->assertNull($geometry->$method_name($argument), 'Failed on '.$method_name);
192 192
         }
193 193
         break;
194 194
       case 'getBBox':
195 195
         if ($geometry->geometryType() == 'Point') {
196
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
196
+          $this->assertNull($geometry->$method_name($argument), 'Failed on '.$method_name);
197 197
         }
198 198
         if ($geometry->geometryType() == 'LineString') {
199
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
199
+          $this->assertNull($geometry->$method_name($argument), 'Failed on '.$method_name);
200 200
         }
201 201
         if ($geometry->geometryType() == 'MultiLineString') {
202
-          $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
202
+          $this->assertNotNull($geometry->$method_name($argument), 'Failed on '.$method_name);
203 203
         }
204 204
         break;
205 205
       case 'centroid':
206 206
         if ($geometry->geometryType() == 'Point') {
207
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
207
+          $this->assertNull($geometry->$method_name($argument), 'Failed on '.$method_name);
208 208
         }
209 209
         if ($geometry->geometryType() == 'LineString') {
210
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
210
+          $this->assertNull($geometry->$method_name($argument), 'Failed on '.$method_name);
211 211
         }
212 212
         if ($geometry->geometryType() == 'MultiLineString') {
213
-          $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
213
+          $this->assertNotNull($geometry->$method_name($argument), 'Failed on '.$method_name);
214 214
         }
215 215
         break;
216 216
       case 'length':
217 217
         if ($geometry->geometryType() == 'Point') {
218
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
218
+          $this->assertNull($geometry->$method_name($argument), 'Failed on '.$method_name);
219 219
         }
220 220
         if ($geometry->geometryType() == 'LineString') {
221
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
221
+          $this->assertNull($geometry->$method_name($argument), 'Failed on '.$method_name);
222 222
         }
223 223
         if ($geometry->geometryType() == 'MultiLineString') {
224
-          $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
224
+          $this->assertNotNull($geometry->$method_name($argument), 'Failed on '.$method_name);
225 225
         }
226 226
         break;
227 227
       case 'numGeometries':
228 228
         if ($geometry->geometryType() == 'Point') {
229
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
229
+          $this->assertNull($geometry->$method_name($argument), 'Failed on '.$method_name);
230 230
         }
231 231
         if ($geometry->geometryType() == 'LineString') {
232
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
232
+          $this->assertNull($geometry->$method_name($argument), 'Failed on '.$method_name);
233 233
         }
234 234
         if ($geometry->geometryType() == 'MultiLineString') {
235
-          $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
235
+          $this->assertNotNull($geometry->$method_name($argument), 'Failed on '.$method_name);
236 236
         }
237 237
         break;
238 238
       case 'numPoints':
239 239
         if ($geometry->geometryType() == 'Point') {
240
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
240
+          $this->assertNull($geometry->$method_name($argument), 'Failed on '.$method_name);
241 241
         }
242 242
         if ($geometry->geometryType() == 'LineString') {
243
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
243
+          $this->assertNull($geometry->$method_name($argument), 'Failed on '.$method_name);
244 244
         }
245 245
         if ($geometry->geometryType() == 'MultiLineString') {
246
-          $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
246
+          $this->assertNotNull($geometry->$method_name($argument), 'Failed on '.$method_name);
247 247
         }
248 248
         break;
249 249
       case 'dimension':
250 250
         if ($geometry->geometryType() == 'Point') {
251
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
251
+          $this->assertNull($geometry->$method_name($argument), 'Failed on '.$method_name);
252 252
         }
253 253
         if ($geometry->geometryType() == 'LineString') {
254
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
254
+          $this->assertNull($geometry->$method_name($argument), 'Failed on '.$method_name);
255 255
         }
256 256
         if ($geometry->geometryType() == 'MultiLineString') {
257
-          $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
257
+          $this->assertNotNull($geometry->$method_name($argument), 'Failed on '.$method_name);
258 258
         }
259 259
         break;
260 260
       case 'boundary':
261 261
         if ($geometry->geometryType() == 'Point') {
262
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
262
+          $this->assertNull($geometry->$method_name($argument), 'Failed on '.$method_name);
263 263
         }
264 264
         if ($geometry->geometryType() == 'LineString') {
265
-          $this->assertNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
265
+          $this->assertNull($geometry->$method_name($argument), 'Failed on '.$method_name);
266 266
         }
267 267
         if ($geometry->geometryType() == 'MultiLineString') {
268
-          $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
268
+          $this->assertNotNull($geometry->$method_name($argument), 'Failed on '.$method_name);
269 269
         }
270 270
         break;
271 271
       case 'haversineLength':
@@ -274,16 +274,16 @@  discard block
 block discarded – undo
274 274
         break;
275 275
       case 'greatCircleLength':
276 276
       case 'area':
277
-        $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
277
+        $this->assertNotNull($geometry->$method_name($argument), 'Failed on '.$method_name);
278 278
         break;
279 279
       case 'geometryType':
280
-        $this->assertNotNull($geometry->$method_name($argument), 'Failed on ' . $method_name);
280
+        $this->assertNotNull($geometry->$method_name($argument), 'Failed on '.$method_name);
281 281
         break;
282 282
       case 'setSRID':
283 283
         //TODO: The method setSRID() should return TRUE.
284 284
         break;
285 285
       default:
286
-        $this->assertTrue($geometry->$method_name($argument), 'Failed on ' . $method_name);
286
+        $this->assertTrue($geometry->$method_name($argument), 'Failed on '.$method_name);
287 287
     }
288 288
 
289 289
   }
@@ -294,7 +294,7 @@  discard block
 block discarded – undo
294 294
 
295 295
     $methods = array(
296 296
       //'boundary', //@@TODO: Uncomment this and fix errors
297
-      'envelope',   //@@TODO: Testing reveales errors in this method -- POINT vs. POLYGON
297
+      'envelope', //@@TODO: Testing reveales errors in this method -- POINT vs. POLYGON
298 298
       'getBBox',
299 299
       'x',
300 300
       'y',
@@ -329,7 +329,7 @@  discard block
 block discarded – undo
329 329
 
330 330
       // Now check base on type
331 331
       if ($geos_type == 'object') {
332
-        $haus_dist = $geos_result->hausdorffDistance(geoPHP::load($norm_result->out('wkt'),'wkt'));
332
+        $haus_dist = $geos_result->hausdorffDistance(geoPHP::load($norm_result->out('wkt'), 'wkt'));
333 333
 
334 334
         // Get the length of the diagonal of the bbox - this is used to scale the haustorff distance
335 335
         // Using Pythagorean theorem
@@ -337,7 +337,7 @@  discard block
 block discarded – undo
337 337
         $scale = sqrt((($bb['maxy'] - $bb['miny'])^2) + (($bb['maxx'] - $bb['minx'])^2));
338 338
 
339 339
         // The difference in the output of GEOS and native-PHP methods should be less than 0.5 scaled haustorff units
340
-        if ($haus_dist / $scale > 0.5) {
340
+        if ($haus_dist/$scale > 0.5) {
341 341
           $this->fail('Output mismatch on '.$method);
342 342
           $this->dump('GEOS : ');
343 343
           $this->dump($geos_result->out('wkt'));
Please login to merge, or discard this patch.
Braces   +3 added lines, -1 removed lines patch added patch discarded remove patch
@@ -290,7 +290,9 @@
 block discarded – undo
290 290
 
291 291
   function _methods_tester_with_geos($geometry) {
292 292
     // Cannot test methods if GEOS is not intstalled
293
-    if (!geoPHP::geosInstalled()) return;
293
+    if (!geoPHP::geosInstalled()) {
294
+    	return;
295
+    }
294 296
 
295 297
     $methods = array(
296 298
       //'boundary', //@@TODO: Uncomment this and fix errors
Please login to merge, or discard this patch.
require/libs/uagent/uagent.php 4 patches
Doc Comments   +3 added lines patch added patch discarded remove patch
@@ -122,6 +122,9 @@
 block discarded – undo
122 122
         return self::array_random( empty( $lang ) ? self::$languages : $lang );
123 123
     }
124 124
 
125
+    /**
126
+     * @param string $os
127
+     */
125 128
     private static function get_processor( $os )
126 129
     {
127 130
         return self::array_random( self::$processors[$os] );
Please login to merge, or discard this patch.
Indentation   +342 added lines, -342 removed lines patch added patch discarded remove patch
@@ -8,347 +8,347 @@
 block discarded – undo
8 8
 
9 9
 class UAgent
10 10
 {
11
-    // General token that says the browser is Mozilla compatible, 
12
-    // and is common to almost every browser today.
13
-    const MOZILLA = 'Mozilla/5.0 ';
14
-
15
-    /**
16
-     * Processors by Arch.
17
-     */
18
-    public static $processors = array(
19
-        'lin' => array( 'i686', 'x86_64' ),
20
-        'mac' => array( 'Intel', 'PPC', 'U; Intel', 'U; PPC' ),
21
-        'win' => array( 'foo' )
22
-    );
23
-
24
-    /**
25
-     * Browsers
26
-     * 
27
-     * Weighting is based on market share to determine frequency.
28
-     */
29
-    public static $browsers = array(
30
-        34 => array(
31
-            89 => array( 'chrome', 'win' ),
32
-            9  => array( 'chrome', 'mac' ),
33
-            2  => array( 'chrome', 'lin' )
34
-        ),
35
-        32 => array(
36
-            100 => array( 'iexplorer', 'win' )
37
-        ),
38
-        25 => array(
39
-            83 => array( 'firefox', 'win' ),
40
-            16 => array( 'firefox', 'mac' ),
41
-            1  => array( 'firefox', 'lin' )
42
-        ),
43
-        7 => array(
44
-            95 => array( 'safari', 'mac' ),
45
-            4  => array( 'safari', 'win' ),
46
-            1  => array( 'safari', 'lin' )
47
-        ),
48
-        2 => array(
49
-            91 => array( 'opera', 'win' ),
50
-            6  => array( 'opera', 'lin' ),
51
-            3  => array( 'opera', 'mac' )
52
-        )
53
-    );
54
-
55
-    /**
56
-     * List of Lanuge Culture Codes (ISO 639-1)
57
-     *
58
-     * @see: http://msdn.microsoft.com/en-gb/library/ee825488(v=cs.20).aspx
59
-     */
60
-    public static $languages = array(
61
-        'af-ZA', 'ar-AE', 'ar-BH', 'ar-DZ', 'ar-EG', 'ar-IQ', 'ar-JO', 'ar-KW', 'ar-LB',
62
-        'ar-LY', 'ar-MA', 'ar-OM', 'ar-QA', 'ar-SA', 'ar-SY', 'ar-TN', 'ar-YE', 'be-BY',
63
-        'bg-BG', 'ca-ES', 'cs-CZ', 'Cy-az-AZ', 'Cy-sr-SP', 'Cy-uz-UZ', 'da-DK', 'de-AT',
64
-        'de-CH', 'de-DE', 'de-LI', 'de-LU', 'div-MV', 'el-GR', 'en-AU', 'en-BZ', 'en-CA', 
65
-        'en-CB', 'en-GB', 'en-IE', 'en-JM', 'en-NZ', 'en-PH', 'en-TT', 'en-US', 'en-ZA', 
66
-        'en-ZW', 'es-AR', 'es-BO', 'es-CL', 'es-CO',  'es-CR', 'es-DO', 'es-EC', 'es-ES',
67
-        'es-GT', 'es-HN', 'es-MX', 'es-NI', 'es-PA', 'es-PE', 'es-PR', 'es-PY', 'es-SV',
68
-        'es-UY', 'es-VE', 'et-EE', 'eu-ES', 'fa-IR', 'fi-FI', 'fo-FO', 'fr-BE', 'fr-CA',
69
-        'fr-CH', 'fr-FR', 'fr-LU', 'fr-MC', 'gl-ES', 'gu-IN', 'he-IL', 'hi-IN', 'hr-HR', 
70
-        'hu-HU', 'hy-AM', 'id-ID', 'is-IS', 'it-CH', 'it-IT', 'ja-JP', 'ka-GE', 'kk-KZ',
71
-        'kn-IN', 'kok-IN', 'ko-KR', 'ky-KZ', 'Lt-az-AZ', 'lt-LT', 'Lt-sr-SP', 'Lt-uz-UZ', 
72
-        'lv-LV', 'mk-MK', 'mn-MN', 'mr-IN', 'ms-BN', 'ms-MY', 'nb-NO', 'nl-BE', 'nl-NL', 
73
-        'nn-NO', 'pa-IN', 'pl-PL', 'pt-BR', 'pt-PT', 'ro-RO', 'ru-RU', 'sa-IN', 'sk-SK', 
74
-        'sl-SI', 'sq-AL', 'sv-FI', 'sv-SE', 'sw-KE', 'syr-SY', 'ta-IN', 'te-IN', 'th-TH', 
75
-        'tr-TR', 'tt-RU', 'uk-UA', 'ur-PK', 'vi-VN', 'zh-CHS', 'zh-CHT', 'zh-CN', 'zh-HK', 
76
-        'zh-MO', 'zh-SG', 'zh-TW',   
77
-    );    
78
-
79
-    /**
80
-     * Generate Device Platform
81
-     *
82
-     * Uses a random result with a weighting related to frequencies.
83
-     */
84
-    public static function generate_platform()
85
-    {
86
-        $rand = mt_rand( 1, 100 );
87
-        $sum = 0;
88
-
89
-        foreach ( self::$browsers as $share => $freq_os )
90
-        {
91
-            $sum += $share;
92
-
93
-            if ( $rand <= $sum )
94
-            {
95
-                $rand = mt_rand( 1, 100 );
96
-                $sum = 0;
97
-
98
-                foreach ( $freq_os as $share => $choice )
99
-                {
100
-                    $sum += $share;
101
-
102
-                    if ( $rand <= $sum )
103
-                    {
104
-                        return $choice;
105
-                    }
106
-                }
107
-            }
108
-        }
109
-
110
-        throw new Exception( 'Sum of $browsers frequency is not 100.' );
111
-    }
112
-
113
-    private static function array_random( $array )
114
-    {
115
-        $i = array_rand( $array, 1 );
116
-
117
-        return $array[$i];
118
-    }
119
-
120
-    private static function get_language( $lang = array() )
121
-    {
122
-        return self::array_random( empty( $lang ) ? self::$languages : $lang );
123
-    }
124
-
125
-    private static function get_processor( $os )
126
-    {
127
-        return self::array_random( self::$processors[$os] );
128
-    }
129
-
130
-    private static function get_version_nt()
131
-    {   
132
-        // Win2k (5.0) to Win 7 (6.1).
133
-        return mt_rand( 5, 6 ) . '.' . mt_rand( 0, 1 );
134
-    }
135
-
136
-    private static function get_version_osx()
137
-    {
138
-        return '10_' . mt_rand( 5, 7 ) . '_' . mt_rand( 0, 9 );
139
-    }
140
-
141
-    private static function get_version_webkit()
142
-    {
143
-        return mt_rand( 531, 536 ) . mt_rand( 0, 2 );
144
-    }
145
-
146
-    private static function get_verison_chrome()
147
-    {
148
-        return mt_rand( 13, 15 ) . '.0.' . mt_rand( 800, 899 ) . '.0';
149
-    }
150
-
151
-    private static function get_version_gecko()
152
-    {
153
-        return mt_rand( 17, 31 ) . '.0';
154
-    }
155
-
156
-    private static function get_version_ie()
157
-    {
158
-        return mt_rand( 7, 9 ) . '.0';
159
-    }
160
-
161
-    private static function get_version_trident()
162
-    {
163
-        // IE8 (4.0) to IE11 (7.0).
164
-        return mt_rand( 4, 7 ) . '.0';
165
-    }
166
-
167
-    private static function get_version_net()
168
-    {
169
-        // generic .NET Framework common language run time (CLR) version numbers.
170
-        $frameworks = array(
171
-            '2.0.50727',
172
-            '3.0.4506',
173
-            '3.5.30729',
174
-        );
175
-
176
-        $rev = '.' . mt_rand( 26, 648 );
177
-
178
-        return self::array_random( $frameworks ) . $rev;
179
-    }
180
-
181
-    private static function get_version_safari()
182
-    {
183
-        if ( mt_rand( 0, 1 ) == 0 )
184
-        {
185
-            $ver = mt_rand( 4, 5 ) . '.' . mt_rand( 0, 1 );
186
-        }
187
-        else
188
-        {
189
-            $ver = mt_rand( 4, 5 ) . '.0.' . mt_rand( 1, 5 );
190
-        }
191
-
192
-        return $ver;
193
-    }
194
-
195
-    private static function get_version_opera()
196
-    {
197
-        return mt_rand( 15, 19 ) . '.0.' . mt_rand( 1147, 1284 ) . mt_rand( 49, 100 );
198
-    }
199
-
200
-    /**
201
-     * Opera
202
-     * 
203
-     * @see: http://dev.opera.com/blog/opera-user-agent-strings-opera-15-and-beyond/
204
-     */
205
-    public static function opera( $arch )
206
-    {
207
-        $opera = ' OPR/' . self::get_version_opera();
208
-
209
-        // WebKit Rendering Engine (WebKit = Backend, Safari = Frontend).
210
-        $engine = self::get_version_webkit();
211
-        $webkit = ' AppleWebKit/' . $engine . ' (KHTML, like Gecko)';
212
-        $chrome = ' Chrome/' . self::get_verison_chrome();
213
-        $safari = ' Safari/' . $engine;
214
-
215
-        switch ( $arch )
216
-        {
217
-            case 'lin':
218
-                return '(X11; Linux {proc}) ' . $webkit . $chrome . $safari . $opera;
219
-            case 'mac':
220
-                $osx = self::get_version_osx();
221
-                return '(Macintosh; U; {proc} Mac OS X ' . $osx . ')' . $webkit . $chrome . $safari . $opera;
222
-            case 'win':
223
-                // fall through.
224
-            default:
225
-                $nt = self::get_version_nt();
226
-                return '(Windows NT ' . $nt . '; WOW64) ' . $webkit . $chrome . $safari . $opera;
227
-        }
228
-    }    
229
-
230
-    /**
231
-     * Safari
232
-     *
233
-     */
234
-    public static function safari( $arch )
235
-    {
236
-        $version = ' Version/' . self::get_version_safari();
237
-
238
-        // WebKit Rendering Engine (WebKit = Backend, Safari = Frontend).
239
-        $engine = self::get_version_webkit();
240
-        $webkit = ' AppleWebKit/' . $engine . ' (KHTML, like Gecko)';
241
-        $safari = ' Safari/' . $engine;
242
-
243
-        switch ( $arch )
244
-        {
245
-            case 'mac':
246
-                $osx = self::get_version_osx();
247
-                return '(Macintosh; U; {proc} Mac OS X ' . $osx . '; {lang})' . $webkit . $version . $safari;
248
-            case 'win':
249
-                // fall through.
250
-            default:
251
-                $nt = self::get_version_nt();
252
-                return '(Windows; U; Windows NT ' . $nt . ')' . $webkit . $version . $safari;
253
-        }
254
-
255
-    }
256
-
257
-    /**
258
-     * Internet Explorer
259
-     * 
260
-     * @see: http://msdn.microsoft.com/en-gb/library/ms537503(v=vs.85).aspx
261
-     */
262
-    public static function iexplorer( $arch )
263
-    {
264
-        $nt = self::get_version_nt();
265
-        $ie = self::get_version_ie();
266
-        $trident = self::get_version_trident();
267
-        $net = self::get_version_net();
268
-
269
-        return '(compatible' 
270
-            . '; MSIE ' . $ie 
271
-            . '; Windows NT ' . $nt 
272
-            . '; WOW64' // A 32-bit version of Internet Explorer is running on a 64-bit processor.
273
-            . '; Trident/' . $trident 
274
-            . '; .NET CLR ' . $net
275
-            . ')';
276
-    }
277
-
278
-    /**
279
-     * Firefox User-Agent
280
-     *
281
-     * @see: https://developer.mozilla.org/en-US/docs/Web/HTTP/Gecko_user_agent_string_reference
282
-     */
283
-    public static function firefox( $arch )
284
-    {
285
-        // The release version of Gecko. 
286
-        $gecko = self::get_version_gecko();
287
-
288
-        // On desktop, the gecko trail is fixed.
289
-        $trail = '20100101';
290
-
291
-        $release = 'rv:' . $gecko;
292
-        $version = 'Gecko/' . $trail . ' Firefox/' . $gecko;
293
-
294
-        switch ( $arch )
295
-        {
296
-            case 'lin':
297
-                return '(X11; Linux {proc}; ' . $release . ') ' . $version;
298
-            case 'mac':
299
-                $osx = self::get_version_osx();
300
-                return '(Macintosh; {proc} Mac OS X ' . $osx . '; ' . $release . ') ' . $version;
301
-            case 'win':
302
-                // fall through.
303
-            default:
304
-                $nt = self::get_version_nt();
305
-                return '(Windows NT ' . $nt . '; {lang}; ' . $release . ') ' . $version;
306
-        }
307
-    }
308
-
309
-    public static function chrome( $arch )
310
-    {
311
-        $chrome = ' Chrome/' . self::get_verison_chrome();
312
-
313
-        // WebKit Rendering Engine (WebKit = Backend, Safari = Frontend).
314
-        $engine = self::get_version_webkit();
315
-        $webkit = ' AppleWebKit/' . $engine . ' (KHTML, like Gecko)';
316
-        $safari = ' Safari/' . $engine;
317
-
318
-        switch ( $arch )
319
-        {
320
-            case 'lin':
321
-                return '(X11; Linux {proc}) ' . $webkit . $chrome . $safari;
322
-            case 'mac':
323
-                $osx = self::get_version_osx();
324
-                return '(Macintosh; U; {proc} Mac OS X ' . $osx . ')' . $webkit . $chrome . $safari;
325
-            case 'win':
326
-                // fall through.
327
-            default:
328
-                $nt = self::get_version_nt();
329
-                return '(Windows NT ' . $nt . ') ' . $webkit . $chrome . $safari;
330
-        }
331
-    }
332
-
333
-    public static function random( $lang = array( 'en-US' ) )
334
-    {
335
-        list( $browser, $os ) = self::generate_platform();
336
-
337
-        return self::generate( $browser, $os, $lang );
338
-    }
339
-
340
-    public static function generate( $browser = 'chrome', $os = 'win', $lang = array( 'en-US' ) )
341
-    {
342
-        $ua = self::MOZILLA . call_user_func( 'UAgent::' . $browser, $os );
343
-
344
-        $tags = array(
345
-            '{proc}' => self::get_processor( $os ),
346
-            '{lang}' => self::get_language( $lang ),
347
-        );
348
-
349
-        $ua = str_replace( array_keys( $tags ), array_values( $tags ), $ua );
350
-
351
-        return $ua;
352
-    }
11
+	// General token that says the browser is Mozilla compatible, 
12
+	// and is common to almost every browser today.
13
+	const MOZILLA = 'Mozilla/5.0 ';
14
+
15
+	/**
16
+	 * Processors by Arch.
17
+	 */
18
+	public static $processors = array(
19
+		'lin' => array( 'i686', 'x86_64' ),
20
+		'mac' => array( 'Intel', 'PPC', 'U; Intel', 'U; PPC' ),
21
+		'win' => array( 'foo' )
22
+	);
23
+
24
+	/**
25
+	 * Browsers
26
+	 * 
27
+	 * Weighting is based on market share to determine frequency.
28
+	 */
29
+	public static $browsers = array(
30
+		34 => array(
31
+			89 => array( 'chrome', 'win' ),
32
+			9  => array( 'chrome', 'mac' ),
33
+			2  => array( 'chrome', 'lin' )
34
+		),
35
+		32 => array(
36
+			100 => array( 'iexplorer', 'win' )
37
+		),
38
+		25 => array(
39
+			83 => array( 'firefox', 'win' ),
40
+			16 => array( 'firefox', 'mac' ),
41
+			1  => array( 'firefox', 'lin' )
42
+		),
43
+		7 => array(
44
+			95 => array( 'safari', 'mac' ),
45
+			4  => array( 'safari', 'win' ),
46
+			1  => array( 'safari', 'lin' )
47
+		),
48
+		2 => array(
49
+			91 => array( 'opera', 'win' ),
50
+			6  => array( 'opera', 'lin' ),
51
+			3  => array( 'opera', 'mac' )
52
+		)
53
+	);
54
+
55
+	/**
56
+	 * List of Lanuge Culture Codes (ISO 639-1)
57
+	 *
58
+	 * @see: http://msdn.microsoft.com/en-gb/library/ee825488(v=cs.20).aspx
59
+	 */
60
+	public static $languages = array(
61
+		'af-ZA', 'ar-AE', 'ar-BH', 'ar-DZ', 'ar-EG', 'ar-IQ', 'ar-JO', 'ar-KW', 'ar-LB',
62
+		'ar-LY', 'ar-MA', 'ar-OM', 'ar-QA', 'ar-SA', 'ar-SY', 'ar-TN', 'ar-YE', 'be-BY',
63
+		'bg-BG', 'ca-ES', 'cs-CZ', 'Cy-az-AZ', 'Cy-sr-SP', 'Cy-uz-UZ', 'da-DK', 'de-AT',
64
+		'de-CH', 'de-DE', 'de-LI', 'de-LU', 'div-MV', 'el-GR', 'en-AU', 'en-BZ', 'en-CA', 
65
+		'en-CB', 'en-GB', 'en-IE', 'en-JM', 'en-NZ', 'en-PH', 'en-TT', 'en-US', 'en-ZA', 
66
+		'en-ZW', 'es-AR', 'es-BO', 'es-CL', 'es-CO',  'es-CR', 'es-DO', 'es-EC', 'es-ES',
67
+		'es-GT', 'es-HN', 'es-MX', 'es-NI', 'es-PA', 'es-PE', 'es-PR', 'es-PY', 'es-SV',
68
+		'es-UY', 'es-VE', 'et-EE', 'eu-ES', 'fa-IR', 'fi-FI', 'fo-FO', 'fr-BE', 'fr-CA',
69
+		'fr-CH', 'fr-FR', 'fr-LU', 'fr-MC', 'gl-ES', 'gu-IN', 'he-IL', 'hi-IN', 'hr-HR', 
70
+		'hu-HU', 'hy-AM', 'id-ID', 'is-IS', 'it-CH', 'it-IT', 'ja-JP', 'ka-GE', 'kk-KZ',
71
+		'kn-IN', 'kok-IN', 'ko-KR', 'ky-KZ', 'Lt-az-AZ', 'lt-LT', 'Lt-sr-SP', 'Lt-uz-UZ', 
72
+		'lv-LV', 'mk-MK', 'mn-MN', 'mr-IN', 'ms-BN', 'ms-MY', 'nb-NO', 'nl-BE', 'nl-NL', 
73
+		'nn-NO', 'pa-IN', 'pl-PL', 'pt-BR', 'pt-PT', 'ro-RO', 'ru-RU', 'sa-IN', 'sk-SK', 
74
+		'sl-SI', 'sq-AL', 'sv-FI', 'sv-SE', 'sw-KE', 'syr-SY', 'ta-IN', 'te-IN', 'th-TH', 
75
+		'tr-TR', 'tt-RU', 'uk-UA', 'ur-PK', 'vi-VN', 'zh-CHS', 'zh-CHT', 'zh-CN', 'zh-HK', 
76
+		'zh-MO', 'zh-SG', 'zh-TW',   
77
+	);    
78
+
79
+	/**
80
+	 * Generate Device Platform
81
+	 *
82
+	 * Uses a random result with a weighting related to frequencies.
83
+	 */
84
+	public static function generate_platform()
85
+	{
86
+		$rand = mt_rand( 1, 100 );
87
+		$sum = 0;
88
+
89
+		foreach ( self::$browsers as $share => $freq_os )
90
+		{
91
+			$sum += $share;
92
+
93
+			if ( $rand <= $sum )
94
+			{
95
+				$rand = mt_rand( 1, 100 );
96
+				$sum = 0;
97
+
98
+				foreach ( $freq_os as $share => $choice )
99
+				{
100
+					$sum += $share;
101
+
102
+					if ( $rand <= $sum )
103
+					{
104
+						return $choice;
105
+					}
106
+				}
107
+			}
108
+		}
109
+
110
+		throw new Exception( 'Sum of $browsers frequency is not 100.' );
111
+	}
112
+
113
+	private static function array_random( $array )
114
+	{
115
+		$i = array_rand( $array, 1 );
116
+
117
+		return $array[$i];
118
+	}
119
+
120
+	private static function get_language( $lang = array() )
121
+	{
122
+		return self::array_random( empty( $lang ) ? self::$languages : $lang );
123
+	}
124
+
125
+	private static function get_processor( $os )
126
+	{
127
+		return self::array_random( self::$processors[$os] );
128
+	}
129
+
130
+	private static function get_version_nt()
131
+	{   
132
+		// Win2k (5.0) to Win 7 (6.1).
133
+		return mt_rand( 5, 6 ) . '.' . mt_rand( 0, 1 );
134
+	}
135
+
136
+	private static function get_version_osx()
137
+	{
138
+		return '10_' . mt_rand( 5, 7 ) . '_' . mt_rand( 0, 9 );
139
+	}
140
+
141
+	private static function get_version_webkit()
142
+	{
143
+		return mt_rand( 531, 536 ) . mt_rand( 0, 2 );
144
+	}
145
+
146
+	private static function get_verison_chrome()
147
+	{
148
+		return mt_rand( 13, 15 ) . '.0.' . mt_rand( 800, 899 ) . '.0';
149
+	}
150
+
151
+	private static function get_version_gecko()
152
+	{
153
+		return mt_rand( 17, 31 ) . '.0';
154
+	}
155
+
156
+	private static function get_version_ie()
157
+	{
158
+		return mt_rand( 7, 9 ) . '.0';
159
+	}
160
+
161
+	private static function get_version_trident()
162
+	{
163
+		// IE8 (4.0) to IE11 (7.0).
164
+		return mt_rand( 4, 7 ) . '.0';
165
+	}
166
+
167
+	private static function get_version_net()
168
+	{
169
+		// generic .NET Framework common language run time (CLR) version numbers.
170
+		$frameworks = array(
171
+			'2.0.50727',
172
+			'3.0.4506',
173
+			'3.5.30729',
174
+		);
175
+
176
+		$rev = '.' . mt_rand( 26, 648 );
177
+
178
+		return self::array_random( $frameworks ) . $rev;
179
+	}
180
+
181
+	private static function get_version_safari()
182
+	{
183
+		if ( mt_rand( 0, 1 ) == 0 )
184
+		{
185
+			$ver = mt_rand( 4, 5 ) . '.' . mt_rand( 0, 1 );
186
+		}
187
+		else
188
+		{
189
+			$ver = mt_rand( 4, 5 ) . '.0.' . mt_rand( 1, 5 );
190
+		}
191
+
192
+		return $ver;
193
+	}
194
+
195
+	private static function get_version_opera()
196
+	{
197
+		return mt_rand( 15, 19 ) . '.0.' . mt_rand( 1147, 1284 ) . mt_rand( 49, 100 );
198
+	}
199
+
200
+	/**
201
+	 * Opera
202
+	 * 
203
+	 * @see: http://dev.opera.com/blog/opera-user-agent-strings-opera-15-and-beyond/
204
+	 */
205
+	public static function opera( $arch )
206
+	{
207
+		$opera = ' OPR/' . self::get_version_opera();
208
+
209
+		// WebKit Rendering Engine (WebKit = Backend, Safari = Frontend).
210
+		$engine = self::get_version_webkit();
211
+		$webkit = ' AppleWebKit/' . $engine . ' (KHTML, like Gecko)';
212
+		$chrome = ' Chrome/' . self::get_verison_chrome();
213
+		$safari = ' Safari/' . $engine;
214
+
215
+		switch ( $arch )
216
+		{
217
+			case 'lin':
218
+				return '(X11; Linux {proc}) ' . $webkit . $chrome . $safari . $opera;
219
+			case 'mac':
220
+				$osx = self::get_version_osx();
221
+				return '(Macintosh; U; {proc} Mac OS X ' . $osx . ')' . $webkit . $chrome . $safari . $opera;
222
+			case 'win':
223
+				// fall through.
224
+			default:
225
+				$nt = self::get_version_nt();
226
+				return '(Windows NT ' . $nt . '; WOW64) ' . $webkit . $chrome . $safari . $opera;
227
+		}
228
+	}    
229
+
230
+	/**
231
+	 * Safari
232
+	 *
233
+	 */
234
+	public static function safari( $arch )
235
+	{
236
+		$version = ' Version/' . self::get_version_safari();
237
+
238
+		// WebKit Rendering Engine (WebKit = Backend, Safari = Frontend).
239
+		$engine = self::get_version_webkit();
240
+		$webkit = ' AppleWebKit/' . $engine . ' (KHTML, like Gecko)';
241
+		$safari = ' Safari/' . $engine;
242
+
243
+		switch ( $arch )
244
+		{
245
+			case 'mac':
246
+				$osx = self::get_version_osx();
247
+				return '(Macintosh; U; {proc} Mac OS X ' . $osx . '; {lang})' . $webkit . $version . $safari;
248
+			case 'win':
249
+				// fall through.
250
+			default:
251
+				$nt = self::get_version_nt();
252
+				return '(Windows; U; Windows NT ' . $nt . ')' . $webkit . $version . $safari;
253
+		}
254
+
255
+	}
256
+
257
+	/**
258
+	 * Internet Explorer
259
+	 * 
260
+	 * @see: http://msdn.microsoft.com/en-gb/library/ms537503(v=vs.85).aspx
261
+	 */
262
+	public static function iexplorer( $arch )
263
+	{
264
+		$nt = self::get_version_nt();
265
+		$ie = self::get_version_ie();
266
+		$trident = self::get_version_trident();
267
+		$net = self::get_version_net();
268
+
269
+		return '(compatible' 
270
+			. '; MSIE ' . $ie 
271
+			. '; Windows NT ' . $nt 
272
+			. '; WOW64' // A 32-bit version of Internet Explorer is running on a 64-bit processor.
273
+			. '; Trident/' . $trident 
274
+			. '; .NET CLR ' . $net
275
+			. ')';
276
+	}
277
+
278
+	/**
279
+	 * Firefox User-Agent
280
+	 *
281
+	 * @see: https://developer.mozilla.org/en-US/docs/Web/HTTP/Gecko_user_agent_string_reference
282
+	 */
283
+	public static function firefox( $arch )
284
+	{
285
+		// The release version of Gecko. 
286
+		$gecko = self::get_version_gecko();
287
+
288
+		// On desktop, the gecko trail is fixed.
289
+		$trail = '20100101';
290
+
291
+		$release = 'rv:' . $gecko;
292
+		$version = 'Gecko/' . $trail . ' Firefox/' . $gecko;
293
+
294
+		switch ( $arch )
295
+		{
296
+			case 'lin':
297
+				return '(X11; Linux {proc}; ' . $release . ') ' . $version;
298
+			case 'mac':
299
+				$osx = self::get_version_osx();
300
+				return '(Macintosh; {proc} Mac OS X ' . $osx . '; ' . $release . ') ' . $version;
301
+			case 'win':
302
+				// fall through.
303
+			default:
304
+				$nt = self::get_version_nt();
305
+				return '(Windows NT ' . $nt . '; {lang}; ' . $release . ') ' . $version;
306
+		}
307
+	}
308
+
309
+	public static function chrome( $arch )
310
+	{
311
+		$chrome = ' Chrome/' . self::get_verison_chrome();
312
+
313
+		// WebKit Rendering Engine (WebKit = Backend, Safari = Frontend).
314
+		$engine = self::get_version_webkit();
315
+		$webkit = ' AppleWebKit/' . $engine . ' (KHTML, like Gecko)';
316
+		$safari = ' Safari/' . $engine;
317
+
318
+		switch ( $arch )
319
+		{
320
+			case 'lin':
321
+				return '(X11; Linux {proc}) ' . $webkit . $chrome . $safari;
322
+			case 'mac':
323
+				$osx = self::get_version_osx();
324
+				return '(Macintosh; U; {proc} Mac OS X ' . $osx . ')' . $webkit . $chrome . $safari;
325
+			case 'win':
326
+				// fall through.
327
+			default:
328
+				$nt = self::get_version_nt();
329
+				return '(Windows NT ' . $nt . ') ' . $webkit . $chrome . $safari;
330
+		}
331
+	}
332
+
333
+	public static function random( $lang = array( 'en-US' ) )
334
+	{
335
+		list( $browser, $os ) = self::generate_platform();
336
+
337
+		return self::generate( $browser, $os, $lang );
338
+	}
339
+
340
+	public static function generate( $browser = 'chrome', $os = 'win', $lang = array( 'en-US' ) )
341
+	{
342
+		$ua = self::MOZILLA . call_user_func( 'UAgent::' . $browser, $os );
343
+
344
+		$tags = array(
345
+			'{proc}' => self::get_processor( $os ),
346
+			'{lang}' => self::get_language( $lang ),
347
+		);
348
+
349
+		$ua = str_replace( array_keys( $tags ), array_values( $tags ), $ua );
350
+
351
+		return $ua;
352
+	}
353 353
 }
354 354
 ?>
Please login to merge, or discard this patch.
Spacing   +87 added lines, -87 removed lines patch added patch discarded remove patch
@@ -16,9 +16,9 @@  discard block
 block discarded – undo
16 16
      * Processors by Arch.
17 17
      */
18 18
     public static $processors = array(
19
-        'lin' => array( 'i686', 'x86_64' ),
20
-        'mac' => array( 'Intel', 'PPC', 'U; Intel', 'U; PPC' ),
21
-        'win' => array( 'foo' )
19
+        'lin' => array('i686', 'x86_64'),
20
+        'mac' => array('Intel', 'PPC', 'U; Intel', 'U; PPC'),
21
+        'win' => array('foo')
22 22
     );
23 23
 
24 24
     /**
@@ -28,27 +28,27 @@  discard block
 block discarded – undo
28 28
      */
29 29
     public static $browsers = array(
30 30
         34 => array(
31
-            89 => array( 'chrome', 'win' ),
32
-            9  => array( 'chrome', 'mac' ),
33
-            2  => array( 'chrome', 'lin' )
31
+            89 => array('chrome', 'win'),
32
+            9  => array('chrome', 'mac'),
33
+            2  => array('chrome', 'lin')
34 34
         ),
35 35
         32 => array(
36
-            100 => array( 'iexplorer', 'win' )
36
+            100 => array('iexplorer', 'win')
37 37
         ),
38 38
         25 => array(
39
-            83 => array( 'firefox', 'win' ),
40
-            16 => array( 'firefox', 'mac' ),
41
-            1  => array( 'firefox', 'lin' )
39
+            83 => array('firefox', 'win'),
40
+            16 => array('firefox', 'mac'),
41
+            1  => array('firefox', 'lin')
42 42
         ),
43 43
         7 => array(
44
-            95 => array( 'safari', 'mac' ),
45
-            4  => array( 'safari', 'win' ),
46
-            1  => array( 'safari', 'lin' )
44
+            95 => array('safari', 'mac'),
45
+            4  => array('safari', 'win'),
46
+            1  => array('safari', 'lin')
47 47
         ),
48 48
         2 => array(
49
-            91 => array( 'opera', 'win' ),
50
-            6  => array( 'opera', 'lin' ),
51
-            3  => array( 'opera', 'mac' )
49
+            91 => array('opera', 'win'),
50
+            6  => array('opera', 'lin'),
51
+            3  => array('opera', 'mac')
52 52
         )
53 53
     );
54 54
 
@@ -63,7 +63,7 @@  discard block
 block discarded – undo
63 63
         'bg-BG', 'ca-ES', 'cs-CZ', 'Cy-az-AZ', 'Cy-sr-SP', 'Cy-uz-UZ', 'da-DK', 'de-AT',
64 64
         'de-CH', 'de-DE', 'de-LI', 'de-LU', 'div-MV', 'el-GR', 'en-AU', 'en-BZ', 'en-CA', 
65 65
         'en-CB', 'en-GB', 'en-IE', 'en-JM', 'en-NZ', 'en-PH', 'en-TT', 'en-US', 'en-ZA', 
66
-        'en-ZW', 'es-AR', 'es-BO', 'es-CL', 'es-CO',  'es-CR', 'es-DO', 'es-EC', 'es-ES',
66
+        'en-ZW', 'es-AR', 'es-BO', 'es-CL', 'es-CO', 'es-CR', 'es-DO', 'es-EC', 'es-ES',
67 67
         'es-GT', 'es-HN', 'es-MX', 'es-NI', 'es-PA', 'es-PE', 'es-PR', 'es-PY', 'es-SV',
68 68
         'es-UY', 'es-VE', 'et-EE', 'eu-ES', 'fa-IR', 'fi-FI', 'fo-FO', 'fr-BE', 'fr-CA',
69 69
         'fr-CH', 'fr-FR', 'fr-LU', 'fr-MC', 'gl-ES', 'gu-IN', 'he-IL', 'hi-IN', 'hr-HR', 
@@ -83,23 +83,23 @@  discard block
 block discarded – undo
83 83
      */
84 84
     public static function generate_platform()
85 85
     {
86
-        $rand = mt_rand( 1, 100 );
86
+        $rand = mt_rand(1, 100);
87 87
         $sum = 0;
88 88
 
89
-        foreach ( self::$browsers as $share => $freq_os )
89
+        foreach (self::$browsers as $share => $freq_os)
90 90
         {
91 91
             $sum += $share;
92 92
 
93
-            if ( $rand <= $sum )
93
+            if ($rand <= $sum)
94 94
             {
95
-                $rand = mt_rand( 1, 100 );
95
+                $rand = mt_rand(1, 100);
96 96
                 $sum = 0;
97 97
 
98
-                foreach ( $freq_os as $share => $choice )
98
+                foreach ($freq_os as $share => $choice)
99 99
                 {
100 100
                     $sum += $share;
101 101
 
102
-                    if ( $rand <= $sum )
102
+                    if ($rand <= $sum)
103 103
                     {
104 104
                         return $choice;
105 105
                     }
@@ -107,61 +107,61 @@  discard block
 block discarded – undo
107 107
             }
108 108
         }
109 109
 
110
-        throw new Exception( 'Sum of $browsers frequency is not 100.' );
110
+        throw new Exception('Sum of $browsers frequency is not 100.');
111 111
     }
112 112
 
113
-    private static function array_random( $array )
113
+    private static function array_random($array)
114 114
     {
115
-        $i = array_rand( $array, 1 );
115
+        $i = array_rand($array, 1);
116 116
 
117 117
         return $array[$i];
118 118
     }
119 119
 
120
-    private static function get_language( $lang = array() )
120
+    private static function get_language($lang = array())
121 121
     {
122
-        return self::array_random( empty( $lang ) ? self::$languages : $lang );
122
+        return self::array_random(empty($lang) ? self::$languages : $lang);
123 123
     }
124 124
 
125
-    private static function get_processor( $os )
125
+    private static function get_processor($os)
126 126
     {
127
-        return self::array_random( self::$processors[$os] );
127
+        return self::array_random(self::$processors[$os]);
128 128
     }
129 129
 
130 130
     private static function get_version_nt()
131 131
     {   
132 132
         // Win2k (5.0) to Win 7 (6.1).
133
-        return mt_rand( 5, 6 ) . '.' . mt_rand( 0, 1 );
133
+        return mt_rand(5, 6).'.'.mt_rand(0, 1);
134 134
     }
135 135
 
136 136
     private static function get_version_osx()
137 137
     {
138
-        return '10_' . mt_rand( 5, 7 ) . '_' . mt_rand( 0, 9 );
138
+        return '10_'.mt_rand(5, 7).'_'.mt_rand(0, 9);
139 139
     }
140 140
 
141 141
     private static function get_version_webkit()
142 142
     {
143
-        return mt_rand( 531, 536 ) . mt_rand( 0, 2 );
143
+        return mt_rand(531, 536).mt_rand(0, 2);
144 144
     }
145 145
 
146 146
     private static function get_verison_chrome()
147 147
     {
148
-        return mt_rand( 13, 15 ) . '.0.' . mt_rand( 800, 899 ) . '.0';
148
+        return mt_rand(13, 15).'.0.'.mt_rand(800, 899).'.0';
149 149
     }
150 150
 
151 151
     private static function get_version_gecko()
152 152
     {
153
-        return mt_rand( 17, 31 ) . '.0';
153
+        return mt_rand(17, 31).'.0';
154 154
     }
155 155
 
156 156
     private static function get_version_ie()
157 157
     {
158
-        return mt_rand( 7, 9 ) . '.0';
158
+        return mt_rand(7, 9).'.0';
159 159
     }
160 160
 
161 161
     private static function get_version_trident()
162 162
     {
163 163
         // IE8 (4.0) to IE11 (7.0).
164
-        return mt_rand( 4, 7 ) . '.0';
164
+        return mt_rand(4, 7).'.0';
165 165
     }
166 166
 
167 167
     private static function get_version_net()
@@ -173,20 +173,20 @@  discard block
 block discarded – undo
173 173
             '3.5.30729',
174 174
         );
175 175
 
176
-        $rev = '.' . mt_rand( 26, 648 );
176
+        $rev = '.'.mt_rand(26, 648);
177 177
 
178
-        return self::array_random( $frameworks ) . $rev;
178
+        return self::array_random($frameworks).$rev;
179 179
     }
180 180
 
181 181
     private static function get_version_safari()
182 182
     {
183
-        if ( mt_rand( 0, 1 ) == 0 )
183
+        if (mt_rand(0, 1) == 0)
184 184
         {
185
-            $ver = mt_rand( 4, 5 ) . '.' . mt_rand( 0, 1 );
185
+            $ver = mt_rand(4, 5).'.'.mt_rand(0, 1);
186 186
         }
187 187
         else
188 188
         {
189
-            $ver = mt_rand( 4, 5 ) . '.0.' . mt_rand( 1, 5 );
189
+            $ver = mt_rand(4, 5).'.0.'.mt_rand(1, 5);
190 190
         }
191 191
 
192 192
         return $ver;
@@ -194,7 +194,7 @@  discard block
 block discarded – undo
194 194
 
195 195
     private static function get_version_opera()
196 196
     {
197
-        return mt_rand( 15, 19 ) . '.0.' . mt_rand( 1147, 1284 ) . mt_rand( 49, 100 );
197
+        return mt_rand(15, 19).'.0.'.mt_rand(1147, 1284).mt_rand(49, 100);
198 198
     }
199 199
 
200 200
     /**
@@ -202,28 +202,28 @@  discard block
 block discarded – undo
202 202
      * 
203 203
      * @see: http://dev.opera.com/blog/opera-user-agent-strings-opera-15-and-beyond/
204 204
      */
205
-    public static function opera( $arch )
205
+    public static function opera($arch)
206 206
     {
207
-        $opera = ' OPR/' . self::get_version_opera();
207
+        $opera = ' OPR/'.self::get_version_opera();
208 208
 
209 209
         // WebKit Rendering Engine (WebKit = Backend, Safari = Frontend).
210 210
         $engine = self::get_version_webkit();
211
-        $webkit = ' AppleWebKit/' . $engine . ' (KHTML, like Gecko)';
212
-        $chrome = ' Chrome/' . self::get_verison_chrome();
213
-        $safari = ' Safari/' . $engine;
211
+        $webkit = ' AppleWebKit/'.$engine.' (KHTML, like Gecko)';
212
+        $chrome = ' Chrome/'.self::get_verison_chrome();
213
+        $safari = ' Safari/'.$engine;
214 214
 
215
-        switch ( $arch )
215
+        switch ($arch)
216 216
         {
217 217
             case 'lin':
218
-                return '(X11; Linux {proc}) ' . $webkit . $chrome . $safari . $opera;
218
+                return '(X11; Linux {proc}) '.$webkit.$chrome.$safari.$opera;
219 219
             case 'mac':
220 220
                 $osx = self::get_version_osx();
221
-                return '(Macintosh; U; {proc} Mac OS X ' . $osx . ')' . $webkit . $chrome . $safari . $opera;
221
+                return '(Macintosh; U; {proc} Mac OS X '.$osx.')'.$webkit.$chrome.$safari.$opera;
222 222
             case 'win':
223 223
                 // fall through.
224 224
             default:
225 225
                 $nt = self::get_version_nt();
226
-                return '(Windows NT ' . $nt . '; WOW64) ' . $webkit . $chrome . $safari . $opera;
226
+                return '(Windows NT '.$nt.'; WOW64) '.$webkit.$chrome.$safari.$opera;
227 227
         }
228 228
     }    
229 229
 
@@ -231,25 +231,25 @@  discard block
 block discarded – undo
231 231
      * Safari
232 232
      *
233 233
      */
234
-    public static function safari( $arch )
234
+    public static function safari($arch)
235 235
     {
236
-        $version = ' Version/' . self::get_version_safari();
236
+        $version = ' Version/'.self::get_version_safari();
237 237
 
238 238
         // WebKit Rendering Engine (WebKit = Backend, Safari = Frontend).
239 239
         $engine = self::get_version_webkit();
240
-        $webkit = ' AppleWebKit/' . $engine . ' (KHTML, like Gecko)';
241
-        $safari = ' Safari/' . $engine;
240
+        $webkit = ' AppleWebKit/'.$engine.' (KHTML, like Gecko)';
241
+        $safari = ' Safari/'.$engine;
242 242
 
243
-        switch ( $arch )
243
+        switch ($arch)
244 244
         {
245 245
             case 'mac':
246 246
                 $osx = self::get_version_osx();
247
-                return '(Macintosh; U; {proc} Mac OS X ' . $osx . '; {lang})' . $webkit . $version . $safari;
247
+                return '(Macintosh; U; {proc} Mac OS X '.$osx.'; {lang})'.$webkit.$version.$safari;
248 248
             case 'win':
249 249
                 // fall through.
250 250
             default:
251 251
                 $nt = self::get_version_nt();
252
-                return '(Windows; U; Windows NT ' . $nt . ')' . $webkit . $version . $safari;
252
+                return '(Windows; U; Windows NT '.$nt.')'.$webkit.$version.$safari;
253 253
         }
254 254
 
255 255
     }
@@ -259,7 +259,7 @@  discard block
 block discarded – undo
259 259
      * 
260 260
      * @see: http://msdn.microsoft.com/en-gb/library/ms537503(v=vs.85).aspx
261 261
      */
262
-    public static function iexplorer( $arch )
262
+    public static function iexplorer($arch)
263 263
     {
264 264
         $nt = self::get_version_nt();
265 265
         $ie = self::get_version_ie();
@@ -267,11 +267,11 @@  discard block
 block discarded – undo
267 267
         $net = self::get_version_net();
268 268
 
269 269
         return '(compatible' 
270
-            . '; MSIE ' . $ie 
271
-            . '; Windows NT ' . $nt 
270
+            . '; MSIE '.$ie 
271
+            . '; Windows NT '.$nt 
272 272
             . '; WOW64' // A 32-bit version of Internet Explorer is running on a 64-bit processor.
273
-            . '; Trident/' . $trident 
274
-            . '; .NET CLR ' . $net
273
+            . '; Trident/'.$trident 
274
+            . '; .NET CLR '.$net
275 275
             . ')';
276 276
     }
277 277
 
@@ -280,7 +280,7 @@  discard block
 block discarded – undo
280 280
      *
281 281
      * @see: https://developer.mozilla.org/en-US/docs/Web/HTTP/Gecko_user_agent_string_reference
282 282
      */
283
-    public static function firefox( $arch )
283
+    public static function firefox($arch)
284 284
     {
285 285
         // The release version of Gecko. 
286 286
         $gecko = self::get_version_gecko();
@@ -288,65 +288,65 @@  discard block
 block discarded – undo
288 288
         // On desktop, the gecko trail is fixed.
289 289
         $trail = '20100101';
290 290
 
291
-        $release = 'rv:' . $gecko;
292
-        $version = 'Gecko/' . $trail . ' Firefox/' . $gecko;
291
+        $release = 'rv:'.$gecko;
292
+        $version = 'Gecko/'.$trail.' Firefox/'.$gecko;
293 293
 
294
-        switch ( $arch )
294
+        switch ($arch)
295 295
         {
296 296
             case 'lin':
297
-                return '(X11; Linux {proc}; ' . $release . ') ' . $version;
297
+                return '(X11; Linux {proc}; '.$release.') '.$version;
298 298
             case 'mac':
299 299
                 $osx = self::get_version_osx();
300
-                return '(Macintosh; {proc} Mac OS X ' . $osx . '; ' . $release . ') ' . $version;
300
+                return '(Macintosh; {proc} Mac OS X '.$osx.'; '.$release.') '.$version;
301 301
             case 'win':
302 302
                 // fall through.
303 303
             default:
304 304
                 $nt = self::get_version_nt();
305
-                return '(Windows NT ' . $nt . '; {lang}; ' . $release . ') ' . $version;
305
+                return '(Windows NT '.$nt.'; {lang}; '.$release.') '.$version;
306 306
         }
307 307
     }
308 308
 
309
-    public static function chrome( $arch )
309
+    public static function chrome($arch)
310 310
     {
311
-        $chrome = ' Chrome/' . self::get_verison_chrome();
311
+        $chrome = ' Chrome/'.self::get_verison_chrome();
312 312
 
313 313
         // WebKit Rendering Engine (WebKit = Backend, Safari = Frontend).
314 314
         $engine = self::get_version_webkit();
315
-        $webkit = ' AppleWebKit/' . $engine . ' (KHTML, like Gecko)';
316
-        $safari = ' Safari/' . $engine;
315
+        $webkit = ' AppleWebKit/'.$engine.' (KHTML, like Gecko)';
316
+        $safari = ' Safari/'.$engine;
317 317
 
318
-        switch ( $arch )
318
+        switch ($arch)
319 319
         {
320 320
             case 'lin':
321
-                return '(X11; Linux {proc}) ' . $webkit . $chrome . $safari;
321
+                return '(X11; Linux {proc}) '.$webkit.$chrome.$safari;
322 322
             case 'mac':
323 323
                 $osx = self::get_version_osx();
324
-                return '(Macintosh; U; {proc} Mac OS X ' . $osx . ')' . $webkit . $chrome . $safari;
324
+                return '(Macintosh; U; {proc} Mac OS X '.$osx.')'.$webkit.$chrome.$safari;
325 325
             case 'win':
326 326
                 // fall through.
327 327
             default:
328 328
                 $nt = self::get_version_nt();
329
-                return '(Windows NT ' . $nt . ') ' . $webkit . $chrome . $safari;
329
+                return '(Windows NT '.$nt.') '.$webkit.$chrome.$safari;
330 330
         }
331 331
     }
332 332
 
333
-    public static function random( $lang = array( 'en-US' ) )
333
+    public static function random($lang = array('en-US'))
334 334
     {
335
-        list( $browser, $os ) = self::generate_platform();
335
+        list($browser, $os) = self::generate_platform();
336 336
 
337
-        return self::generate( $browser, $os, $lang );
337
+        return self::generate($browser, $os, $lang);
338 338
     }
339 339
 
340
-    public static function generate( $browser = 'chrome', $os = 'win', $lang = array( 'en-US' ) )
340
+    public static function generate($browser = 'chrome', $os = 'win', $lang = array('en-US'))
341 341
     {
342
-        $ua = self::MOZILLA . call_user_func( 'UAgent::' . $browser, $os );
342
+        $ua = self::MOZILLA.call_user_func('UAgent::'.$browser, $os);
343 343
 
344 344
         $tags = array(
345
-            '{proc}' => self::get_processor( $os ),
346
-            '{lang}' => self::get_language( $lang ),
345
+            '{proc}' => self::get_processor($os),
346
+            '{lang}' => self::get_language($lang),
347 347
         );
348 348
 
349
-        $ua = str_replace( array_keys( $tags ), array_values( $tags ), $ua );
349
+        $ua = str_replace(array_keys($tags), array_values($tags), $ua);
350 350
 
351 351
         return $ua;
352 352
     }
Please login to merge, or discard this patch.
Braces   +1 added lines, -2 removed lines patch added patch discarded remove patch
@@ -183,8 +183,7 @@
 block discarded – undo
183 183
         if ( mt_rand( 0, 1 ) == 0 )
184 184
         {
185 185
             $ver = mt_rand( 4, 5 ) . '.' . mt_rand( 0, 1 );
186
-        }
187
-        else
186
+        } else
188 187
         {
189 188
             $ver = mt_rand( 4, 5 ) . '.0.' . mt_rand( 1, 5 );
190 189
         }
Please login to merge, or discard this patch.
country-statistics-aircraft.php 2 patches
Indentation   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -3,8 +3,8 @@
 block discarded – undo
3 3
 require_once('require/class.Spotter.php');
4 4
 require_once('require/class.Language.php');
5 5
 if (!isset($_GET['country'])) {
6
-        header('Location: '.$globalURL.'/country');
7
-        die();
6
+		header('Location: '.$globalURL.'/country');
7
+		die();
8 8
 }
9 9
 $Spotter = new Spotter();
10 10
 
Please login to merge, or discard this patch.
Spacing   +8 added lines, -8 removed lines patch added patch discarded remove patch
@@ -8,13 +8,13 @@  discard block
 block discarded – undo
8 8
 }
9 9
 $Spotter = new Spotter();
10 10
 
11
-$country = ucwords(str_replace("-", " ", urldecode(filter_input(INPUT_GET,'country',FILTER_SANITIZE_STRING))));
12
-$sort = filter_input(INPUT_GET,'sort',FILTER_SANITIZE_STRING);
11
+$country = ucwords(str_replace("-", " ", urldecode(filter_input(INPUT_GET, 'country', FILTER_SANITIZE_STRING))));
12
+$sort = filter_input(INPUT_GET, 'sort', FILTER_SANITIZE_STRING);
13 13
 $spotter_array = $Spotter->getSpotterDataByCountry($country, "0,1", $sort);
14 14
 
15 15
 if (!empty($spotter_array))
16 16
 {
17
-	$title = sprintf(_("Most Common Aircraft from %s"),$country);
17
+	$title = sprintf(_("Most Common Aircraft from %s"), $country);
18 18
 
19 19
 	require_once('header.php');
20 20
 	print '<div class="select-item">';
@@ -22,9 +22,9 @@  discard block
 block discarded – undo
22 22
 	print '<select name="country" class="selectpicker" data-live-search="true">';
23 23
 	print '<option></option>';
24 24
 	$all_countries = $Spotter->getAllCountries();
25
-	foreach($all_countries as $all_country)
25
+	foreach ($all_countries as $all_country)
26 26
 	{
27
-		if($country == $all_country['country'])
27
+		if ($country == $all_country['country'])
28 28
 		{
29 29
 			print '<option value="'.strtolower(str_replace(" ", "-", $all_country['country'])).'" selected="selected">'.$all_country['country'].'</option>';
30 30
 		} else {
@@ -39,7 +39,7 @@  discard block
 block discarded – undo
39 39
 	if ($_GET['country'] != "NA")
40 40
 	{
41 41
 		print '<div class="info column">';
42
-		print '<h1>'.sprintf(_("Airports &amp; Airlines from %s"),$country).'</h1>';
42
+		print '<h1>'.sprintf(_("Airports &amp; Airlines from %s"), $country).'</h1>';
43 43
 		print '</div>';
44 44
 	} else {
45 45
 		print '<div class="alert alert-warning">'._("This special country profile shows all flights that do <u>not</u> have a country of a airline or departure/arrival airport associated with them.").'</div>';
@@ -48,7 +48,7 @@  discard block
 block discarded – undo
48 48
 	include('country-sub-menu.php');
49 49
 	print '<div class="column">';
50 50
 	print '<h2>'._("Most Common Aircraft").'</h2>';
51
-	print '<p>'.sprintf(_("The statistic below shows the most common aircraft of flights from <strong>%s</strong>."),$country).'</p>';
51
+	print '<p>'.sprintf(_("The statistic below shows the most common aircraft of flights from <strong>%s</strong>."), $country).'</p>';
52 52
 
53 53
 	$aircraft_array = $Spotter->countAllAircraftTypesByCountry($country);
54 54
 	if (!empty($aircraft_array))
@@ -62,7 +62,7 @@  discard block
 block discarded – undo
62 62
 		print '</thead>';
63 63
 		print '<tbody>';
64 64
 		$i = 1;
65
-		foreach($aircraft_array as $aircraft_item)
65
+		foreach ($aircraft_array as $aircraft_item)
66 66
 		{
67 67
 			print '<tr>';
68 68
 			print '<td><strong>'.$i.'</strong></td>';
Please login to merge, or discard this patch.
registration-detailed.php 2 patches
Spacing   +7 added lines, -7 removed lines patch added patch discarded remove patch
@@ -3,17 +3,17 @@  discard block
 block discarded – undo
3 3
 require_once('require/class.Spotter.php');
4 4
 require_once('require/class.Language.php');
5 5
 
6
-if (!isset($_GET['registration'])){
6
+if (!isset($_GET['registration'])) {
7 7
 	header('Location: '.$globalURL.'');
8 8
 } else {
9 9
 	$Spotter = new Spotter();
10 10
 	//calculuation for the pagination
11
-	if(!isset($_GET['limit']))
11
+	if (!isset($_GET['limit']))
12 12
 	{
13 13
 		$limit_start = 0;
14 14
 		$limit_end = 25;
15 15
 		$absolute_difference = 25;
16
-	}  else {
16
+	} else {
17 17
 		$limit_explode = explode(",", $_GET['limit']);
18 18
 		$limit_start = $limit_explode[0];
19 19
 		$limit_end = $limit_explode[1];
@@ -26,8 +26,8 @@  discard block
 block discarded – undo
26 26
 	$limit_next = $limit_end + $absolute_difference;
27 27
 	$limit_previous_1 = $limit_start - $absolute_difference;
28 28
 	$limit_previous_2 = $limit_end - $absolute_difference;
29
-	$registration = filter_input(INPUT_GET,'registration',FILTER_SANITIZE_STRING);
30
-	$sort = filter_input(INPUT_GET,'sort',FILTER_SANITIZE_STRING);
29
+	$registration = filter_input(INPUT_GET, 'registration', FILTER_SANITIZE_STRING);
30
+	$sort = filter_input(INPUT_GET, 'sort', FILTER_SANITIZE_STRING);
31 31
 	
32 32
 	$page_url = $globalURL.'/registration/'.$registration;
33 33
 	
@@ -40,7 +40,7 @@  discard block
 block discarded – undo
40 40
 	
41 41
 	if (!empty($spotter_array))
42 42
 	{
43
-		$title = sprintf(_("Detailed View of aircraft with registration %s"),$registration);
43
+		$title = sprintf(_("Detailed View of aircraft with registration %s"), $registration);
44 44
 		require_once('header.php');
45 45
 		print '<div class="info column">';
46 46
 		print '<h1>'.$registration.' - '.$aircraft_array[0]['aircraft_name'].' ('.$aircraft_array[0]['aircraft_icao'].')</h1>';
@@ -51,7 +51,7 @@  discard block
 block discarded – undo
51 51
 		
52 52
 		include('registration-sub-menu.php');
53 53
 		print '<div class="table column">';
54
-		print '<p>'.sprintf(_("The table below shows the detailed information of all flights of aircraft with the registration <strong>%s</strong>."),$registration).'</p>';
54
+		print '<p>'.sprintf(_("The table below shows the detailed information of all flights of aircraft with the registration <strong>%s</strong>."), $registration).'</p>';
55 55
 
56 56
 		include('table-output.php');
57 57
 		print '<div class="pagination">';
Please login to merge, or discard this patch.
Braces   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -14,7 +14,7 @@
 block discarded – undo
14 14
 		$limit_start = 0;
15 15
 		$limit_end = 25;
16 16
 		$absolute_difference = 25;
17
-	}  else {
17
+	} else {
18 18
 		$limit_explode = explode(",", $_GET['limit']);
19 19
 		$limit_start = $limit_explode[0];
20 20
 		$limit_end = $limit_explode[1];
Please login to merge, or discard this patch.
contribute.php 1 patch
Braces   +13 added lines, -2 removed lines patch added patch discarded remove patch
@@ -11,10 +11,21 @@
 block discarded – undo
11 11
     <p>You can contribute to <?php print $globalName; ?> if you have an ADS-B receiver.</p>
12 12
     <h3>You need to : </h3>
13 13
     <ul>
14
-	<li>Create an account on <a href="<?php if (isset($globalContributeLogin)) print $globalContributeLogin.'">'.$globalContributeLogin; else print 'https://login.flightairmap.fr">login.flightairmap.fr'; ?></a></li>
14
+	<li>Create an account on <a href="<?php if (isset($globalContributeLogin)) {
15
+	print $globalContributeLogin.'">'.$globalContributeLogin;
16
+} else {
17
+	print 'https://login.flightairmap.fr">login.flightairmap.fr';
18
+}
19
+?></a></li>
15 20
 	<li>Download dump1090 fork from <a href="https://github.com/Ysurac/dump1090">https://github.com/Ysurac/dump1090</a></li>
16 21
 	<li>Compile zfamup1090 with <em>make zfamup1090</em> (you need to have libcurl installed)</li>
17
-	<li>Run zfamup1090 : <em>./zfamup1090 --net-zfam-user YourUsername --net-zfam-pass YourPassword<?php if (isset($globalContributeURL)) print ' --net-zfam-addr '.$globalContributeURL; if (isset($globalContributePort)) print ' --net-zfam-port '.$globalContributePort; ?></em> (add <em>--net-bo-ipaddr ipofbeastsource --net-bo-port portofbeastsource</em> if needed, default to 127.0.0.1 and 30005)</li>
22
+	<li>Run zfamup1090 : <em>./zfamup1090 --net-zfam-user YourUsername --net-zfam-pass YourPassword<?php if (isset($globalContributeURL)) {
23
+	print ' --net-zfam-addr '.$globalContributeURL;
24
+}
25
+if (isset($globalContributePort)) {
26
+	print ' --net-zfam-port '.$globalContributePort;
27
+}
28
+?></em> (add <em>--net-bo-ipaddr ipofbeastsource --net-bo-port portofbeastsource</em> if needed, default to 127.0.0.1 and 30005)</li>
18 29
     </ul>
19 30
 </div>
20 31
 <?php
Please login to merge, or discard this patch.
ident-statistics-manufacturer.php 2 patches
Spacing   +6 added lines, -6 removed lines patch added patch discarded remove patch
@@ -7,13 +7,13 @@  discard block
 block discarded – undo
7 7
         die();
8 8
 }
9 9
 $Spotter = new Spotter();
10
-$sort = filter_input(INPUT_GET,'sort',FILTER_SANITIZE_STRING);
11
-$ident = filter_input(INPUT_GET,'ident',FILTER_SANITIZE_STRING);
12
-$spotter_array = $Spotter->getSpotterDataByIdent($ident,"0,1", $sort);
10
+$sort = filter_input(INPUT_GET, 'sort', FILTER_SANITIZE_STRING);
11
+$ident = filter_input(INPUT_GET, 'ident', FILTER_SANITIZE_STRING);
12
+$spotter_array = $Spotter->getSpotterDataByIdent($ident, "0,1", $sort);
13 13
 
14 14
 if (!empty($spotter_array))
15 15
 {
16
-	$title = sprintf(_("Most Common Aircraft Manufacturer of %s"),$spotter_array[0]['ident']);
16
+	$title = sprintf(_("Most Common Aircraft Manufacturer of %s"), $spotter_array[0]['ident']);
17 17
 	require_once('header.php');
18 18
 	print '<div class="info column">';
19 19
 	print '<h1>'.$spotter_array[0]['ident'].'</h1>';
@@ -24,7 +24,7 @@  discard block
 block discarded – undo
24 24
 	include('ident-sub-menu.php');
25 25
 	print '<div class="column">';
26 26
 	print '<h2>'._("Most Common Aircraft Manufacturer").'</h2>';
27
-	print '<p>'.sprintf(_("The statistic below shows the most common Aircraft Manufacturer of flights using the ident/callsign <strong>%s</strong>."),$spotter_array[0]['ident']).'</p>';
27
+	print '<p>'.sprintf(_("The statistic below shows the most common Aircraft Manufacturer of flights using the ident/callsign <strong>%s</strong>."), $spotter_array[0]['ident']).'</p>';
28 28
 
29 29
 	$manufacturers_array = $Spotter->countAllAircraftManufacturerByIdent($ident);
30 30
 	if (!empty($manufacturers_array))
@@ -39,7 +39,7 @@  discard block
 block discarded – undo
39 39
 		print '</thead>';
40 40
 		print '<tbody>';
41 41
 		$i = 1;
42
-		foreach($manufacturers_array as $manufacturer_item)
42
+		foreach ($manufacturers_array as $manufacturer_item)
43 43
 		{
44 44
 			print '<tr>';
45 45
 			print '<td><strong>'.$i.'</strong></td>';
Please login to merge, or discard this patch.
Indentation   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -3,8 +3,8 @@
 block discarded – undo
3 3
 require_once('require/class.Spotter.php');
4 4
 require_once('require/class.Language.php');
5 5
 if (!isset($_GET['ident'])) {
6
-        header('Location: '.$globalURL.'/ident');
7
-        die();
6
+		header('Location: '.$globalURL.'/ident');
7
+		die();
8 8
 }
9 9
 $Spotter = new Spotter();
10 10
 $sort = filter_input(INPUT_GET,'sort',FILTER_SANITIZE_STRING);
Please login to merge, or discard this patch.
footer.php 3 patches
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -4,7 +4,7 @@
 block discarded – undo
4 4
 	<?php
5 5
 	    if (isset($sql_time)) {
6 6
 	?>
7
-	<i><?php echo _("Page generated in").' '.round($sql_time+$page_time,2); ?>s (<?php print round($page_time,2); ?>ms PHP - <?php print round($sql_time,2); ?>ms SQL)</i>
7
+	<i><?php echo _("Page generated in").' '.round($sql_time + $page_time, 2); ?>s (<?php print round($page_time, 2); ?>ms PHP - <?php print round($sql_time, 2); ?>ms SQL)</i>
8 8
 	<br />
9 9
 	<?php
10 10
 	    }
Please login to merge, or discard this patch.
Indentation   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -6,12 +6,12 @@
 block discarded – undo
6 6
 </div>
7 7
 <footer class="container">
8 8
 	<?php
9
-	    if (isset($sql_time)) {
9
+		if (isset($sql_time)) {
10 10
 	?>
11 11
 	<i><?php echo _("Page generated in").' '.round($sql_time+$page_time,2); ?>s (<?php print round($page_time,2); ?>ms PHP - <?php print round($sql_time,2); ?>ms SQL)</i>
12 12
 	<br />
13 13
 	<?php
14
-	    }
14
+		}
15 15
 	?>
16 16
 	<span>Developed in Barrie by <a href="http://www.mariotrunz.me/" target="_blank">Mario Trunz</a> & at <a href="http://www.zugaina.com" target="_blank">Zugaina</a> by Ycarus</span> - <span><a href="<?php if (isset($globalURL)) print $globalURL; ?>/about#source">Source &amp; Credits</a></span> - <span><a href="https://www.flightairmap.com/" target="_blank">Get source code</a></span>
17 17
 </footer>
Please login to merge, or discard this patch.
Braces   +8 added lines, -3 removed lines patch added patch discarded remove patch
@@ -1,8 +1,10 @@  discard block
 block discarded – undo
1 1
 </section>
2 2
 <div class="pub onmap">
3 3
 <?php
4
-	if (isset($globalPubFooter)) print $globalPubFooter;
5
-?>
4
+	if (isset($globalPubFooter)) {
5
+		print $globalPubFooter;
6
+	}
7
+	?>
6 8
 </div>
7 9
 <footer class="container">
8 10
 	<?php
@@ -13,7 +15,10 @@  discard block
 block discarded – undo
13 15
 	<?php
14 16
 	    }
15 17
 	?>
16
-	<span>Developed in Barrie by <a href="http://www.mariotrunz.me/" target="_blank">Mario Trunz</a> & at <a href="http://www.zugaina.com" target="_blank">Zugaina</a> by Ycarus</span> - <span><a href="<?php if (isset($globalURL)) print $globalURL; ?>/about#source">Source &amp; Credits</a></span> - <span><a href="https://www.flightairmap.com/" target="_blank">Get source code</a></span>
18
+	<span>Developed in Barrie by <a href="http://www.mariotrunz.me/" target="_blank">Mario Trunz</a> & at <a href="http://www.zugaina.com" target="_blank">Zugaina</a> by Ycarus</span> - <span><a href="<?php if (isset($globalURL)) {
19
+	print $globalURL;
20
+}
21
+?>/about#source">Source &amp; Credits</a></span> - <span><a href="https://www.flightairmap.com/" target="_blank">Get source code</a></span>
17 22
 </footer>
18 23
 
19 24
 <div class="notifications bottom-left"></div>
Please login to merge, or discard this patch.
tools-acars.php 2 patches
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -8,7 +8,7 @@
 block discarded – undo
8 8
 
9 9
 $page_url = $globalURL.'/tools-acars';
10 10
 
11
-$message = filter_input(INPUT_POST,'acars_message',FILTER_SANITIZE_STRING);
11
+$message = filter_input(INPUT_POST, 'acars_message', FILTER_SANITIZE_STRING);
12 12
 
13 13
 print '<div class="info column">';
14 14
 print '<h1>'._("Parse ACARS messages").'</h1>';
Please login to merge, or discard this patch.
Braces   +3 added lines, -1 removed lines patch added patch discarded remove patch
@@ -21,7 +21,9 @@
 block discarded – undo
21 21
 print '<fieldset class="form-group">';
22 22
 print '<label for="acars_message">'._("ACARS Message").'</label>';
23 23
 print '<textarea class="form-control" name="acars_message" id="acars_message" rows="5">';
24
-if ($message != '') print $message;
24
+if ($message != '') {
25
+	print $message;
26
+}
25 27
 print '</textarea>';
26 28
 print '</fieldset>';
27 29
 print '<button type="submit" class="btn btn-primary">Submit</button>';
Please login to merge, or discard this patch.