public function SocialContentYoutube::prepareRow in Social Content 7.2
Do the uploads and attach expected fields to a row about to be imported.
Overrides SocialContent::prepareRow
File
- modules/
youtube/ social_content_youtube.class.inc, line 220 - Social Content Youtube class.
Class
- SocialContentYoutube
- @file Social Content Youtube class.
Code
public function prepareRow($row) {
$settings = $this->settings['instance'];
$mappings = $this
->getFieldMappings();
if (parent::prepareRow($row) === FALSE) {
return FALSE;
}
$row->title = $row->snippet->title;
$row->caption = $row->snippet->description;
$row->account_id = $settings['youtube_id'];
$row->account_name = $settings['youtube_username'];
$row->account_link = 'https://www.youtube.com/user/' . $settings['youtube_username'];
$date = new DateTime($row->snippet->publishedAt);
$row->created = $date
->getTimestamp();
$row->link = 'https://www.youtube.com/watch?v=' . $row->id;
$row->embed_link = 'https://www.youtube.com/embed/' . $row->id;
// @todo: Make sure saving file to disk is optional.
$image_url = 'http://i.ytimg.com/vi/' . $row->id . '/hqdefault.jpg';
$picture = $this
->saveExternalFile($image_url, $mappings['picture']);
$row->picture = $picture ? $picture : NULL;
return TRUE;
}