album_id * * @return bool|object */ public function get_album_info( $album_id ) { $url = 'https://api.vimeo.com/albums/' . $album_id; $data = $this->fetch_remote( $url ); if ( $data && is_object( $data ) ) { return (object) array( 'title' => $data->name, 'description' => $data->description, 'username' => $data->user->name, ); } return false; } /** * Filters attribute * * @param $attrs * * @return mixed */ public function filter_attrs( $attrs ) { if ( ! empty( $attrs['videos'] ) ) { $videos = &$attrs['videos']; $videos = explode( "\n", $videos ); $videos = array_map( array( $this, 'get_video_ID' ), $videos ); } if ( ! empty( $attrs['playlist_url'] ) ) { $attrs['playlist_url'] = $this->get_album_ID( $attrs['playlist_url'] ); } return $attrs; } /** * Returns video id from URL * * @param $vimeo_url * * @return mixed */ protected function get_video_ID( $vimeo_url ) { $vimeo_url = trim( str_replace( '&', '&', $vimeo_url ) ); if ( preg_match( '#^(?: https? \: )? (?: //)? w* \.? vimeo \.com /* ([^\s]+)$#ix', $vimeo_url, $matched ) ) { return $matched[1]; } else { $video_ID = &$vimeo_url; return $video_ID; } } /** * Returns album ID from URL * * @param $vimeo_album_url * * @return mixed */ protected function get_album_ID( $vimeo_album_url ) { if ( preg_match( '#^(?: https? \: )? (?: //)? w* \.? vimeo \.com /*album/* ([^\s]+)$#ix', $vimeo_album_url, $matched ) ) { return $matched[1]; } return $vimeo_album_url; } /** * Returns playlist/album info * * @param $play_list_id * * @param int $limit * * @return array|bool */ public function get_playlist_videos_info( $play_list_id, $limit = 50 ) { return $this->get_album_videos_info( $play_list_id ); } /** * Fetches album info from Vimeo * * @param $album_id * * @return array|bool */ public function get_album_videos_info( $album_id ) { if ( empty( $album_id ) ) { return false; } $url = 'https://api.vimeo.com/albums/' . $album_id . '/videos'; $data = $this->fetch_remote( $url ); if ( $data && isset( $data->data ) && is_array( $data->data ) ) { $videos_info = array(); foreach ( $data->data as $video ) { $video_id = $this->get_video_ID( $video->link ); $videos_info[ $video_id ] = array( 'title' => $video->name, // 'description' => $video->description, 'thumbnails' => $this->prepare_thumbnails( $video->pictures->sizes ), 'duration' => (int) $video->duration, ); } return $videos_info; } return false; } /** * Prepares thumbnails * * @param $sizes * * @return bool|\stdClass */ private function prepare_thumbnails( $sizes ) { if ( empty( $sizes ) || ! is_array( $sizes ) ) { return false; } $sizes_name = array( 0 => 'default', 1 => 'small', 2 => 'medium', 3 => 'high', 4 => 'xhigh', 5 => 'standard', 6 => 'large', 7 => 'xlarge', 8 => 'huge', 9 => 'xhuge', ); $result = new stdClass(); usort( $sizes, array( $this, '_sort_by_width' ) ); $max_resolution = array_pop( $sizes ); $result->maxres = array( 'url' => $max_resolution->link, 'width' => $max_resolution->width, 'height' => $max_resolution->height, ); foreach ( $sizes as $index => $size ) { $sz_index = floor( $size->width / 100 ) - 1; if ( isset( $sizes_name[ $sz_index ] ) ) { $sz_name = &$sizes_name[ $sz_index ]; $result->$sz_name = array( 'url' => $size->link, 'width' => $size->width, 'height' => $size->height, ); } } return $result; } /** * Handy function for usort * * @param $a * @param $b * * @return bool */ private function _sort_by_width( $a, $b ) { return $a->width > $b->width; } /** * Handy function for default frame url * * @param $attrs * * @return string */ public function default_frame_url( $attrs ) { return 'https://player.vimeo.com/video/{video-id}?autoplay=0'; } /** * Handy function for video frame URL * * @param $attrs * * @return string */ public function change_video_frame_url( $attrs ) { return 'https://player.vimeo.com/video/{video-id}?autoplay=1'; } } injury Archives - Page 7 of 67 - PushAsRx Athletic Training Centers El Paso, TX
Mission Spine Injury Clinic
11860 Vista Del Sol, Ste 128
P: 915-412-6677

injury

The Peroneal Tendon and Its Importance in Mobility

Are individuals with high foot arches or participating in sports involving repetitive ankle motion at risk for developing peroneal tendon… Read More

February 12, 2025

Managing Periodic Limb Movements of Sleep for Better Rest

For individuals experiencing periodic limb movements of sleep, can understanding how movements at night may relate to other sleep disorders… Read More

February 11, 2025

Effective Treatment Options for Triceps Tendonitis

Triceps tendonitis can be frustrating, especially when you need to rest from normal activities. Can knowing the causes, symptoms, and… Read More

February 10, 2025

The Power of Parsley Tea for Well-being

Can drinking parsley tea help improve overall health? Parsley Tea Parsley is commonly used as a garnish and to increase… Read More

February 7, 2025

Achieve Balance and Strength with Push-Pull Workouts

Can a push-pull workout routine be an option for individuals who want focused training on specific muscle groups and balanced… Read More

February 6, 2025

Managing Rotator Cuff Pain: Physical Therapy and Alternatives

Could older individuals who do not have symptoms of shoulder pain or loss of shoulder and arm function have a… Read More

February 5, 2025

Deliciously Healthy: Rice Noodles Nutrition Facts

Can incorporating rice noodles be a healthy alternative to traditional pasta for individuals looking to change their normal routine? Rice… Read More

February 4, 2025

Standing Lower Back Flexion: Finding Relief for Low Back Pain

Could incorporating standing lumbar flexion exercise into a daily routine help decrease pain and improve overall spinal mobility for individuals… Read More

February 3, 2025

Exploring the Potential of Sparkling Water for Weight Loss

Can individuals add sparkling water to their diet to help lower blood sugar and aid with weight loss? Sparkling Water… Read More

January 31, 2025

Personal Injury, Trauma & Spine Rehab Specialists

Online History & Registration 🔘
Call Us Today 🔘