function getStolenBikes() { $query = new ParseQuery("Bikes"); $query->exists("sessionStartTime"); $query->limit(1000); $results = $query->find(); $count = count($results); $listOfBikes = array(); $stolenBikes = 0; for ($i = 0; $i < $count; $i++) { $startDate = $results[$i]->get("sessionStartTime"); $startDate = $startDate->format('Y-m-d H:i:s'); $startDate = strtotime($startDate); $currentDate = new DateTime('now'); $currentDate = $currentDate->format('Y-m-d H:i:s'); $currentDate = strtotime($currentDate); $subtractedDate = $currentDate - $startDate; $expiredTime = 200 * 60; if ($subtractedDate >= $expiredTime * 60) { $stolenBikes++; $bike = $results[$i]; try { $lostBike = new ParseObject("LostBikes"); $lostBike->set("bikeId", $bike->getObjectId()); $user = $bike->get("currentUser"); $user->fetch(); $customerID = $user->get("stripeID"); $amount = 200 * 100; $charge = \Stripe\Charge::create(array('customer' => $customerID, 'amount' => $amount, 'currency' => 'usd')); $lostBike->set("currentUser", $user); $lostBike->set("lastLocation", $bike->get("lastLocation")); $lostBike->set("condition", $bike->get("condition")); $lostBike->save(); $bike->destroy(); } catch (\Parse\ParseException $ex) { return 'Failed to create LostBikes object and destroy Bikes object ' . $ex->getMessage(); } catch (\Stripe\Error\InvalidRequest $e) { return $e->getMessage(); } catch (\Stripe\Error\Authentication $e) { return $e->getMessage(); } catch (\Stripe\Error\ApiConnection $e) { return $e->getMessage(); } catch (\Stripe\Error\Base $e) { return $e->getMessage(); } catch (Exception $e) { return $e->getMessage(); } } } $rString = 0; if ($stolenBikes > 0) { $rString = "Successfully removed " . $stolenBikes . " stolen bikes."; } return $rString; }
public function testExistsRelation() { Helper::clearClass("Item"); $this->saveObjects(9, function ($i) { $obj = ParseObject::create("TestObject"); if ($i & 1) { $obj->set('y', $i); } else { $item = ParseObject::create("Item"); $item->set('e', $i); $obj->set('e', $item); } return $obj; }); $query = new ParseQuery("TestObject"); $query->exists('e'); $results = $query->find(); $this->assertEquals(5, count($results), 'Did not return correct number of objects.'); }
<?php require 'vendor/autoload.php'; require 'api.php'; use Parse\ParseClient; use Parse\ParseQuery; use Parse\ParseObject; ParseClient::initialize('AQ2Vfb0vhbBq3N6t2Aeu4fpLaZ5Xp8HI42P1fOxr', 'yFuVB8uoineYD9d2DXredK3QF0ZH4N0IHcMx9oLf', '34h4r0BN7uE0w64iGdjFqvNqpIejoorV1Gdf82we'); $query = new ParseQuery("Subjects"); $query->exists("SchoolCode"); $results = $query->find(); foreach ($results as $el) { $schoolCode = $el->SchoolCode; $subjectCode = $el->SubjectCode; $url = 'https://api-gw.it.umich.edu/Curriculum/SOC/v1/Terms/2010/Schools/' . $schoolCode . '/Subjects/' . $subjectCode . '/CatalogNbrs'; //$url = 'https://api-gw.it.umich.edu/Curriculum/SOC/v1/Terms/2010/Schools/ENG/Subjects/EECS/CatalogNbrs'; $class = new UMapis(); $json = $class->call_api($url); $data = json_decode($json); if ($data) { if ($data->getSOCCtlgNbrsResponse) { if (isset($data->getSOCCtlgNbrsResponse->ClassOffered)) { foreach ($data->getSOCCtlgNbrsResponse->ClassOffered as $class) { $courseNbr = (int) $class->CatalogNumber; $courseDescr = $class->CourseDescr; $course = new ParseObject('Classes'); $course->set('SchoolCode', $schoolCode); $course->set('SubjectCode', $subjectCode); $course->set('CatalogNbr', $courseNbr); $course->set('CatalogDescr', $courseDescr); $course->save();
function getExpiredReservedBikes() { $query = new ParseQuery("Bikes"); $query->exists("reservedTime"); $query->limit(1000); $results = $query->find(); $count = count($results); $listOfBikes = array(); for ($i = 0; $i < $count; $i++) { $reservedDate = $results[$i]->get("reservedTime"); $reservedDate = $reservedDate->format('Y-m-d H:i:s'); $reservedDate = strtotime($reservedDate); $currentDate = new DateTime('now'); $currentDate = $currentDate->format('Y-m-d H:i:s'); $currentDate = strtotime($currentDate); $subtractedDate = $currentDate - $reservedDate; echo $subtractedDate; echo "s "; $expiredTime = 10; if ($subtractedDate >= $expiredTime * 60) { array_push($listOfBikes, $results[$i]->getObjectId()); } } return $listOfBikes; }
ParseClient::initialize($app_id, $rest_key, $master_key); try { $userQuery = ParseUser::query(); $userQuery->exists("objectId"); // This is not efficiant but Parse lacks random access to objects $users = $userQuery->find(); /* * The Key in $chosenObjects should be the name you want to display in the UML */ $chosenObjects['_User'] = $users[0]; /* * Custum class (Temperature for demo) * You can add as many as you want */ $custumQuery = new ParseQuery("Temperature"); $custumQuery->exists("objectId"); // Same as line 23 $custumObjects = $custumQuery->find(); /* * Add an array of custum objects to be inclused in the UML */ $chosenObjects['Temperature'] = $custumObjects; // We can pass an array of objects /* * Pass the array $chosenObjects to getUML method * @return : String (Null if error) */ $UML = $schema->getUML($chosenObjects); if ($UML) { /* * Get the client to download the txt file