public function handle_user_input(&$user_input, &$plugin_cookies)
 {
     $input = parent::handle_user_input($user_input, $plugin_cookies);
     if (!$input) {
         hd_print(__METHOD__);
         if ($user_input->control_id == 'playAll') {
             return $this->doMakePlayListAndPlay($user_input, $plugin_cookies);
         }
     } else {
         return $input;
     }
 }
Example #2
0
 public function get_vod_info($media_url_str, &$plugin_cookies)
 {
     // hd_print(print_r(debug_backtrace(), true));
     HD::print_backtrace();
     $media_url = MediaURL::decode($media_url_str);
     hd_print(__METHOD__ . ': ' . print_r($media_url, true));
     if ($media_url->screen_id == 'emplexer_base_channel') {
         $toPlay = $media_url->video_media_array[$plugin_cookies->channel_selected_index];
         return EmplexerBaseChannel::get_vod_info($toPlay);
     }
     if ($media_url->screen_id == 'vod_movie') {
         return $this->vod->get_vod_info($media_url, $plugin_cookies);
         // EmplexerVod::get_vod_info($media_url, $plugin_cookies);
     }
     $handler = $media_url->back_screen_id == EmplexerVideoList::ID ? EmplexerVideoList::ID : EmplexerMovieList::ID;
     $params = array('key' => $media_url->key, 'back_screen_id' => $media_url->back_screen_id, 'back_key' => $media_url->back_key, 'back_filter_name' => $media_url->back_filter_name);
     $stop_action = UserInputHandlerRegistry::create_action($this->get_screen_by_id($handler), 'stop', $params);
     $time_action = UserInputHandlerRegistry::create_action($this->get_screen_by_id($handler), 'time', $params);
     $series_array = array();
     $series_array[] = array(PluginVodSeriesInfo::name => $media_url->title, PluginVodSeriesInfo::playback_url => $media_url->video_url, PluginVodSeriesInfo::playback_url_is_stream_url => true);
     $toBeReturned = array(PluginVodInfo::id => $media_url->movie_id, PluginVodInfo::series => $series_array, PluginVodInfo::name => $media_url->name, PluginVodInfo::description => $media_url->summary, PluginVodInfo::poster_url => $media_url->thumb, PluginVodInfo::initial_series_ndx => 0, PluginVodInfo::buffering_ms => 3000, PluginVodInfo::initial_position_ms => EmplexerVideoList::$viewOffset, PluginVodInfo::advert_mode => false, PluginVodInfo::timer => array(GuiTimerDef::delay_ms => 5000), PluginVodInfo::actions => array(GUI_EVENT_PLAYBACK_STOP => $stop_action, GUI_EVENT_TIMER => $time_action));
     hd_print(print_r($toBeReturned, true));
     return $toBeReturned;
 }
 public function doParseOnDirectories(&$xml, &$media_url, &$plugin_cookies)
 {
     $items = parent::doParseOnDirectories($xml, $media_url, $plugin_cookies);
     return $items;
 }
Example #4
0
 public function getAllAvailableChannels(&$plugin_cookies, $handler)
 {
     hd_print(__METHOD__);
     $url = EmplexerConfig::getInstance()->getPlexBaseUrl($plugin_cookies, $handler);
     hd_print("BASE_URL={$url}");
     $xml = HD::getAndParseXmlFromUrl($url);
     hd_print(print_r($xml, true));
     // $validChannels = array('video', 'music', 'photos');
     $validChannels = EmplexerConfig::getInstance()->getValidChannelsNames();
     $items = array();
     foreach ($xml as $d) {
         $key = (string) $d->attributes()->key;
         if (in_array($key, $validChannels)) {
             $channelName = ucwords("{$key} Channels");
             $items[] = array(PluginRegularFolderItem::media_url => EmplexerBaseChannel::get_media_url_str($key), PluginRegularFolderItem::caption => $channelName, PluginRegularFolderItem::view_item_params => array(ViewItemParams::icon_path => 'plugin_file://icons/sudoku.png'));
         }
     }
     hd_print(__METHOD__ . ':' . print_r($items, true));
     return $items;
 }