function get_vimeo_video_params($video_link) { $video_id = get_vimeo_id($video_link); $vimeo = get_vimeo_variable()->request('/videos/' . $video_id, array('per_page' => 1), 'GET'); $hq = $vimeo['body']['files'][0]; $sd = null; $hls = null; foreach ($vimeo['body']['files'] as $key => $file) { if ($file['quality'] === 'hd') { if ($hq['fps'] <= $file['fps']) { $hq = $file; } } else { if ($file['quality'] === 'sd') { $sd = $file; } else { if ($file['quality'] === 'hls') { $hls = $file; } } } } $picture = $vimeo['body']['pictures']['sizes'][count($vimeo['body']['pictures']['sizes']) - 1]['link']; $videos = array('hq' => $hq, 'hls' => $hls, 'sd' => $sd, 'picture' => $picture); return $videos; }
$vimeo_login_copy_step_two = 'If you need a new token, <a href="%login_url%">log in with Vimeo!</a>'; $vimeo_login_copy_step_three = 'Done! You can use Vimeo in your code now. '; $query = 'SELECT `wp_options`.`option_value` FROM `wp_options` '; $vimeo_app_id_query = $query . 'WHERE `wp_options`.`option_name` = "options_sdo_api_vimeo_app_id" '; $vimeo_app_secret_query = $query . 'WHERE `wp_options`.`option_name` = "options_sdo_api_vimeo_app_secret" '; $vimeo_app_token_query = $query . 'WHERE `wp_options`.`option_name` = "options_sdo_api_vimeo_app_token" '; $vimeo_page_token_query = $query . 'WHERE `wp_options`.`option_name` = "options_sdo_api_vimeo_page_token" '; $vimeo_app_id = $wpdb->get_var($vimeo_app_id_query); $vimeo_app_secret = $wpdb->get_var($vimeo_app_secret_query); $vimeo_app_token = $wpdb->get_var($vimeo_app_token_query); $vimeo_page_token = $wpdb->get_var($vimeo_page_token_query); if ($vimeo_app_id !== null && $vimeo_app_secret !== null && $vimeo_app_token !== null) { $vimeo_message = str_replace('%step_1_content%', '<del>%step_1_content%</del>', $vimeo_message); } if ($vimeo_app_id !== null && $vimeo_app_secret !== null) { $vimeo = get_vimeo_variable(); $protocol = !empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off' || $_SERVER['SERVER_PORT'] == 443 ? "https://" : "http://"; $scopes = ['public', 'private']; $state = base64_encode(openssl_random_pseudo_bytes(30)); $vimeo_login_url = $vimeo->buildAuthorizationEndpoint($protocol . $_SERVER['SERVER_NAME'] . '/vimeo', $scopes, $state); $vimeo_message = str_replace('%step_1_content%', '<del>' . $vimeo_login_copy_step_one . '<del>', $vimeo_message); } else { $vimeo_login_url = "#"; $vimeo_message = str_replace('%step_1_content%', $vimeo_login_copy_step_one, $vimeo_message); $vimeo_message = str_replace('%step_2_content%', '<span style="opacity: 0.25;">%step_2_content%</span>', $vimeo_message); } if ($vimeo_app_token == null && $vimeo_page_token == null) { $vimeo_message = str_replace('%step_3_content%', '<span style="opacity: 0.25;">%step_3_content%</span>', $vimeo_message); } else { $vimeo_message = str_replace('%step_2_content%', '<del>%step_2_content%</del>', $vimeo_message); $vimeo_message = str_replace('%step_3_content%', '%step_3_content% Renew it by <a href="' . $vimeo_login_url . '">clicking here</a>. ', $vimeo_message);