Example #1
0
 protected function execute(InputInterface $input, OutputInterface $output)
 {
     $isVerbose = $output->getVerbosity() >= OutputInterface::VERBOSITY_VERBOSE;
     $sourceUsername = $input->getOption('source-user');
     if (!$sourceUsername) {
         $output->writeln("<error>--source-user is required</error>");
         die;
     }
     $targetUsername = $input->getOption('target-user') ?: $sourceUsername;
     $fromLocationResource = new LocationResource($this->sourceClient);
     $toObserveResource = new ObserveResource($this->client);
     $fromUserResource = new UserResource($this->sourceClient);
     $toUserResource = new UserResource($this->client);
     $sourceUser = $fromUserResource->getOneBy(['username' => $sourceUsername]);
     if (!$sourceUser) {
         $output->writeln("<error>Source user {$sourceUsername} not found</error>");
         die;
     }
     $targetUser = $toUserResource->getOneBy(['username' => $targetUsername]);
     if (!$targetUser) {
         $output->writeln("<error>Target user {$targetUsername} not found</error>");
         die;
     }
     die('Not yet implemented');
     // @todo
     $page = 0;
     $perPage = 10;
     $maxPages = 1;
     while ($page < $maxPages) {
         $result = $fromLocationResource->getList(++$page, $perPage, ['user_id' => $sourceUser['id']], [], [], ['details' => true]);
         var_dump($result['items']);
         die;
         $maxPages = $result['pages'];
         // if no items, return
         if (!count($result['items']) || !$result['total']) {
             break;
         }
         var_dump($result['items']);
         die;
         $locationsToPost = [];
         foreach ($result['items'] as $key => $location) {
             if ($isVerbose) {
                 $no = ($page - 1) * $perPage + $key + 1;
                 $output->writeln("{$no} - Reading location #{$location['id']}");
             }
             $locationsToPost[] = [];
         }
     }
 }
 protected function execute(InputInterface $input, OutputInterface $output)
 {
     $isVerbose = $output->getVerbosity() >= OutputInterface::VERBOSITY_VERBOSE;
     $username = $input->getOption('user');
     $date = $input->getOption('date');
     $output->writeln("Getting locations for {$date}");
     $userResource = new UserResource($this->sourceClient);
     $criteria = [];
     if ($username) {
         $user = $userResource->getOneBy(['username' => $username]);
         if (!$user) {
             throw new \Exception("User {$username} not found");
         }
         $criteria['user_id'] = $user['id'];
     }
     $locationResource = new LocationResource($this->sourceClient);
     $result = $locationResource->getList(1, 100, $criteria, null, null, ['start_date' => $date]);
     var_dump($result);
 }