示例#1
0
 /**
  * Get following info for pinner.
  *
  * @param string $username
  * @param string $type
  * @param int $limit
  * @return Iterator
  * @throws WrongFollowingType
  */
 public function following($username, $type = UrlBuilder::FOLLOWING_PEOPLE, $limit = Pagination::DEFAULT_LIMIT)
 {
     $followingUrl = UrlBuilder::getFollowingUrlByType($type);
     if (empty($followingUrl)) {
         throw new WrongFollowingType("No following results for {$type}");
     }
     return $this->paginate($username, $followingUrl, $limit);
 }
 /**
  * @param integer $entityId
  * @return string
  */
 public function createFollowRequestQuery($entityId)
 {
     $entityName = $this->getEntityIdName();
     $dataJson = ['options' => [$entityName => (string) $entityId], 'context' => []];
     if ($entityName == 'interest_id') {
         $dataJson['options']['interest_list'] = 'favorited';
     }
     $post = ['data' => json_encode($dataJson, JSON_FORCE_OBJECT)];
     return UrlBuilder::buildRequestString($post);
 }
 /**
  * Creates Pinterest API search request.
  *
  * @param string $query
  * @param string $scope
  * @param array $bookmarks
  *
  * @return string
  */
 protected function createSearchQuery($query, $scope, $bookmarks = [])
 {
     $dataJson = $this->appendBookMarks($bookmarks, ['scope' => $scope, 'query' => $query]);
     $request = Request::createRequestData($dataJson, $bookmarks);
     return UrlBuilder::buildRequestString($request);
 }
示例#4
0
 /**
  * Get recommendations for query word. 
  * 
  * @param $query
  * @return array|bool
  */
 public function recommendedFor($query)
 {
     $requestOptions = ['scope' => 'pins', 'query' => $query];
     $result = $this->execGetRequest($requestOptions, UrlBuilder::getSearchUrl());
     return $this->getKeywordsFromRequest($result);
 }
示例#5
0
 /**
  * Create request string.
  *
  * @param array  $data
  * @param array  $bookmarks
  *
  * @return string
  */
 public static function createQuery(array $data = [], $bookmarks = [])
 {
     $data = empty($data) ? new \stdClass() : $data;
     $request = self::createRequestData(['options' => $data], $bookmarks);
     return UrlBuilder::buildRequestString($request);
 }