Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
ExternalVideoResourceBackend.php
Go to the documentation of this file.
1 <?php
7 
10 
15 {
20 
24  public function __construct(\Magento\ProductVideo\Model\ResourceModel\Video $videoResourceModel)
25  {
26  $this->videoResourceModel = $videoResourceModel;
27  }
28 
36  public function afterDuplicate(Gallery $originalResourceModel, array $valueIdMap)
37  {
38  $mediaGalleryEntitiesData = $this->videoResourceModel->loadByIds(array_keys($valueIdMap));
39  foreach ($mediaGalleryEntitiesData as $row) {
40  $row['value_id'] = $valueIdMap[$row['value_id']];
41  $this->videoResourceModel->insertOnDuplicate($row);
42  }
43 
44  return $valueIdMap;
45  }
46 
52  public function afterCreateBatchBaseSelect(Gallery $originalResourceModel, Select $select)
53  {
54  $select = $select->joinLeft(
55  ['value_video' => $originalResourceModel->getTable('catalog_product_entity_media_gallery_value_video')],
56  implode(
57  ' AND ',
58  [
59  'value.value_id = value_video.value_id',
60  'value.store_id = value_video.store_id',
61  ]
62  ),
63  [
64  'video_provider' => 'provider',
65  'video_url' => 'url',
66  'video_title' => 'title',
67  'video_description' => 'description',
68  'video_metadata' => 'metadata'
69  ]
70  )->joinLeft(
71  [
72  'default_value_video' => $originalResourceModel->getTable(
73  'catalog_product_entity_media_gallery_value_video'
74  )
75  ],
76  implode(
77  ' AND ',
78  [
79  'default_value.value_id = default_value_video.value_id',
80  'default_value.store_id = default_value_video.store_id',
81  ]
82  ),
83  [
84  'video_provider_default' => 'provider',
85  'video_url_default' => 'url',
86  'video_title_default' => 'title',
87  'video_description_default' => 'description',
88  'video_metadata_default' => 'metadata',
89  ]
90  );
91 
92  return $select;
93  }
94 }
afterCreateBatchBaseSelect(Gallery $originalResourceModel, Select $select)
afterDuplicate(Gallery $originalResourceModel, array $valueIdMap)
__construct(\Magento\ProductVideo\Model\ResourceModel\Video $videoResourceModel)