function vimeo_video_uploader_node_presave in Vimeo Video Uploader 8.4
Same name and namespace in other branches
- 8 vimeo_video_uploader.module \vimeo_video_uploader_node_presave()
- 7.2 vimeo_video_uploader.module \vimeo_video_uploader_node_presave()
- 7 vimeo_video_uploader.module \vimeo_video_uploader_node_presave()
Implements hook_node_presave().
File
- ./
vimeo_video_uploader.module, line 51
Code
function vimeo_video_uploader_node_presave(EntityInterface $node) {
$config = \Drupal::config('vimeo_video_uploader.settings');
$client_id = $config
->get('values.client_id');
$client_secret = $config
->get('values.client_secret');
$access_token = $config
->get('values.access_token');
$content_type = $config
->get('values.content_type_select');
$lib = new Vimeo($client_id, $client_secret, $access_token);
if (!empty($node->field_vimeo_file_browse)) {
$field_embeddedvideo = $node
->get('field_embeddedvideo')->value;
$video_title = $node
->get('title')->value;
// $video_desc = $node->get('body')->value;.
$field_vimeo_file_browse = $node
->get('field_vimeo_file_browse')
->getValue();
if ($node
->bundle() == $content_type && empty($node
->id()) && !empty($field_vimeo_file_browse)) {
try {
$file_uri = $node
->get('field_vimeo_file_browse')->entity->uri->value;
$video_id_link = $lib
->upload(\Drupal::service('file_system')
->realpath($file_uri), [
'name' => 'untitled',
'privacy' => [
'view' => 'anybody',
],
]);
// #video id sample /videos/255895935.
$video_id = explode('/', $video_id_link);
$video_id = end($video_id);
if (!empty($video_id)) {
$lib
->request('/videos/' . $video_id, [
'name' => $video_title,
], 'PATCH');
$video_url = 'http://vimeo.com/' . $video_id;
$node->field_embeddedvideo->value = $video_url;
}
file_delete($field_vimeo_file_browse[0]['target_id']);
} catch (VimeoUploadException $e) {
$error_message = $e
->getMessage();
drupal_set_message(t('Not Authorized...! %string', [
'%string' => $error_message,
]), 'error');
return;
}
}
elseif ($node
->bundle() == $content_type && !empty($node
->id())) {
try {
if (!empty($field_vimeo_file_browse)) {
$file_uri = $node
->get('field_vimeo_file_browse')->entity->uri->value;
$lib = new Vimeo($client_id, $client_secret, $access_token);
$video_id_ = substr($field_embeddedvideo, 17);
$lib
->request('/videos/' . $video_id_, [], 'DELETE');
$video_id_link = $lib
->upload(\Drupal::service('file_system')
->realpath($file_uri), [
'name' => 'untitled',
'privacy' => [
'view' => 'anybody',
],
]);
$video_id = substr($video_id_link, 8);
$lib
->request('/videos/' . $video_id, [
'name' => $video_title,
], 'PATCH');
$video_url = 'http://vimeo.com/' . $video_id;
$node->field_embeddedvideo->value = $video_url;
file_delete($field_vimeo_file_browse[0]['target_id']);
}
} catch (VimeoUploadException $e) {
$error_message = $e
->getMessage();
drupal_set_message(t('Not Authorized...! %string', [
'%string' => $error_message,
]), 'error');
return;
}
}
elseif ($node
->bundle() == $content_type && !empty($node
->id()) && empty($field_vimeo_file_browse)) {
try {
$lib = new Vimeo($client_id, $client_secret, $access_token);
$video_id = substr($field_embeddedvideo, 17);
$video_title = $node
->get('title')->value;
$lib
->request('/videos/' . $video_id, [
'name' => $video_title,
], 'PATCH');
} catch (VimeoUploadException $e) {
$error_message = $e
->getMessage();
drupal_set_message(t('Not Authorized...! %string', [
'%string' => $error_message,
]), 'error');
return;
}
}
}
}