Example #1
0
function jwplayer_api_get_instance()
{
    $api_key = get_option('jwplayer_api_key');
    $api_secret = get_option('jwplayer_api_secret');
    if (8 === strlen($api_key) && 24 === strlen($api_secret)) {
        return new JWPlayer_api($api_key, $api_secret);
    } else {
        jwplayer_log('API: Could not instantiate.');
        return null;
    }
}
Example #2
0
function jwplayer_shortcode_handle($atts)
{
    jwplayer_log($atts, true);
    // Check for a api key
    $api_key = get_option('jwplayer_api_key');
    if (empty($api_key)) {
        return '';
    }
    $keys = array_keys($atts);
    $r = '/(?P<media>[0-9a-z]{8})(?:[-_])?(?P<player>[0-9a-z]{8})?/i';
    $m = array();
    if (count($keys) > 0 && 0 === $keys[0] && preg_match($r, $atts[0], $m)) {
        unset($atts[0]);
        $player = isset($m['player']) ? $m['player'] : null;
        return jwplayer_shortcode_create_js_embed($m['media'], $player, $atts);
    } else {
        // Legacy shortcode
        return jwplayer_shortcode_handle_legacy($atts);
    }
}
Example #3
0
function jwplayer_import_playlists()
{
    if (!current_user_can('manage_options')) {
        return;
    }
    $imported_playlists = get_option('jwplayer_imported_playlists');
    if (!$imported_playlists) {
        $imported_playlists = array();
        add_option('jwplayer_imported_playlists', $imported_playlists);
    }
    $playlists = jwplayer_import_legacy_playlists();
    foreach ($playlists as $playlist) {
        if (array_key_exists($playlist->ID, $imported_playlists)) {
            continue;
        }
        $media_ids = explode(',', get_post_meta($playlist->ID, 'jwplayermodule_playlist_items', true));
        $media_hashes = array();
        foreach ($media_ids as $media_id) {
            $media_hash = jwplayer_media_hash(intval($media_id));
            $media_hashes[] = $media_hash;
        }
        if (empty($media_hashes)) {
            continue;
        }
        $params = array('title' => $playlist->post_title, 'type' => 'manual');
        $response = jwplayer_api_call('/channels/create', $params);
        if (jwplayer_api_response_ok($response)) {
            $hash = $response['channel']['key'];
            $imported_playlists[$playlist->ID] = $hash;
            foreach ($media_hashes as $media_hash) {
                $params = array('channel_key' => $hash, 'video_key' => $media_hash);
                $response = jwplayer_api_call('/channels/videos/create', $params);
                if (!jwplayer_api_response_ok($response)) {
                    jwplayer_log('ERROR ADDING VIDEO TO PLAYLIST');
                    jwplayer_log($params, true);
                    jwplayer_log($response, true);
                }
            }
        } else {
            jwplayer_log('ERROR CREATING NEW PLAYLIST');
            jwplayer_log($params, true);
            jwplayer_log($response, true);
        }
    }
    update_option('jwplayer_imported_playlists', $imported_playlists);
    jwplayer_import_check_redirect();
}