/**
  *
  * @param  string                       $id
  * @return Bridge_Api_ElementCollection
  */
 protected function list_containers_content($object, $id, array $fields = [], $iteration = 0)
 {
     $url = sprintf("/%s/%s/videos", $object, $id);
     $result = $this->_api->call($url, ['fields' => $fields], $this->oauth_token);
     $element_collection = new Bridge_Api_ElementCollection();
     $element_collection->set_items_per_page($result["limit"]);
     $total = sizeof($result["list"]);
     $current_page = $result["page"];
     $total_page = null;
     $element_collection->set_total_items($total);
     $element_collection->set_current_page($current_page);
     $element_collection->set_total_page($total_page);
     $i = 0;
     foreach ($result["list"] as $entry) {
         $i++;
         $element_collection->add_element(new Bridge_Api_Dailymotion_Element($entry, $object));
         if ($i == $iteration) {
             break;
         }
     }
     return $element_collection;
 }
Exemple #2
0
 /**
  *
  * @param  string                       $object
  * @param  int                          $offset_start
  * @param  int                          $quantity
  * @return Bridge_Api_ElementCollection
  */
 public function list_elements($object, $offset_start = 0, $quantity = 10)
 {
     switch ($object) {
         case self::ELEMENT_TYPE_VIDEO:
             $video_feed = $this->get_user_object_list_feed($object, $offset_start, $quantity);
             $element_collection = new Bridge_Api_ElementCollection();
             $element_collection->set_items_per_page($video_feed->getItemsPerPage()->getText());
             $total = $video_feed->getTotalResults()->getText();
             $current_page = floor((int) $video_feed->getStartIndex()->getText() / (int) $video_feed->getItemsPerPage()->getText()) + 1;
             $total_page = ceil((int) $total / (int) $video_feed->getItemsPerPage()->getText());
             $element_collection->set_total_items($total);
             $element_collection->set_current_page($current_page);
             $element_collection->set_total_page($total_page);
             foreach ($video_feed as $entry) {
                 $element_collection->add_element(new Bridge_Api_Youtube_Element($entry, $object));
             }
             return $element_collection;
             break;
         default:
             throw new Bridge_Exception_ElementUnknown('Unknown element ' . $object);
             break;
     }
 }