} elseif (empty($distance) === false) { $reply->data = Trail::getTrailByTrailDistance($pdo, $distance)->toArray(); } elseif (empty($name) === false) { $reply->data = Trail::getTrailByTrailName($pdo, $name)->toArray(); } elseif (empty($submission) === false) { $reply->data = Trail::getTrailByTrailSubmissionType($pdo, $submission)->toArray(); } elseif (empty($terrain) === false) { $reply->data = Trail::getTrailByTrailTerrain($pdo, $terrain)->toArray(); } elseif (empty($traffic) === false) { $reply->data = Trail::getTrailByTrailTraffic($pdo, $traffic)->toArray(); } elseif (empty($use) === false) { $reply->data = Trail::getTrailByTrailUse($pdo, $use)->toArray(); //} elseif (empty($uuid) === false) { $reply->data = Trail::getTrailByTrailUuid($pdo, $uuid); } else { $reply->data = Trail::getAllTrails($pdo)->toArray(); } } //verify user and verify object is not empty // if the session belongs to an active user allow post if (empty($_SESSION["user"]) === false && $_SESSION["user"]->getUserAccountType() !== "X") { if ($method === "PUT" || $method === "POST") { //verify the XSRF cookie is correct verifyXsrf(); $requestContent = file_get_contents("php://input"); $requestObject = json_decode($requestContent); //make sure all fields are present, in order to prevent database issues if (empty($requestObject->userId) === true) { throw new InvalidArgumentException("user id cannot be empty"); } if (empty($requestObject->submitTrailId) === true) {
/** * calculates trail distance using phpgeo composer package. **/ public static function calculateTrailDistance() { $pdo = connectToEncryptedMySQL("/var/www/trailquail/encrypted-mysql/trailquail.ini"); $trails = Trail::getAllTrails($pdo); $testNum = 0; foreach ($trails as $trail) { $testNum++; $trailRelationships = TrailRelationship::getTrailRelationshipByTrailId($pdo, $trail->getTrailId()); $track = new Polyline(); foreach ($trailRelationships as $trailRelationship) { $segment = Segment::getSegmentBySegmentId($pdo, $trailRelationship->getSegmentId()); $track->addPoint(new Coordinate($segment->getSegmentStart()->getY(), $segment->getSegmentStart()->getX())); $track->addPoint(new Coordinate($segment->getSegmentStop()->getY(), $segment->getSegmentStop()->getX())); } $trailDistanceM = $track->getLength(new Vincenty()); $trailDistanceMi = $trailDistanceM / 1609.344; $trailDistance = $trailDistanceMi; $trail->setTrailDistance($trailDistance); $trail->update($pdo); } }
/** * test grabbing all trails that does not exist * * @expectedException PDOException **/ public function testGetInvalidAllTrails() { //grab a TrailAccessibility that does not exist $trail = Trail::getAllTrails($this->getPDO(), "<script></script>"); $this->assertNull($trail); }