23
23
use GuzzleHttp \Exception \GuzzleException ;
24
24
use Magento \Framework \Exception \LocalizedException ;
25
25
use Magento \Store \Model \ScopeInterface ;
26
+ use Meta \BusinessExtension \Helper \CatalogConfigUpdateHelper ;
26
27
use Meta \BusinessExtension \Helper \FBEHelper ;
27
28
use Meta \BusinessExtension \Helper \GraphAPIAdapter ;
28
29
use Meta \BusinessExtension \Model \ResourceModel \FacebookInstalledFeature ;
@@ -50,24 +51,32 @@ class SaveFBEInstallsResponse
50
51
*/
51
52
private $ installedFeatureResource ;
52
53
54
+ /**
55
+ * @var CatalogConfigUpdateHelper
56
+ */
57
+ private CatalogConfigUpdateHelper $ catalogConfigUpdateHelper ;
58
+
53
59
/**
54
60
* Construct
55
61
*
56
62
* @param FBEHelper $fbeHelper
57
63
* @param SystemConfig $systemConfig
58
64
* @param GraphAPIAdapter $graphApiAdapter
59
65
* @param FacebookInstalledFeature $installedFeatureResource
66
+ * @param CatalogConfigUpdateHelper $catalogConfigUpdateHelper
60
67
*/
61
68
public function __construct (
62
69
FBEHelper $ fbeHelper ,
63
70
SystemConfig $ systemConfig ,
64
71
GraphAPIAdapter $ graphApiAdapter ,
65
- FacebookInstalledFeature $ installedFeatureResource
72
+ FacebookInstalledFeature $ installedFeatureResource ,
73
+ CatalogConfigUpdateHelper $ catalogConfigUpdateHelper
66
74
) {
67
75
$ this ->fbeHelper = $ fbeHelper ;
68
76
$ this ->systemConfig = $ systemConfig ;
69
77
$ this ->graphApiAdapter = $ graphApiAdapter ;
70
78
$ this ->installedFeatureResource = $ installedFeatureResource ;
79
+ $ this ->catalogConfigUpdateHelper = $ catalogConfigUpdateHelper ;
71
80
}
72
81
73
82
/**
@@ -86,15 +95,24 @@ public function save($response, $storeId)
86
95
return false ;
87
96
}
88
97
$ data = $ response [0 ];
98
+ $ catalogId = $ data ['catalog_id ' ] ?? '' ;
99
+ $ pixelId = $ data ['pixel_id ' ] ?? '' ;
100
+ $ commercePartnerIntegrationId = $ data ['commerce_partner_integration_id ' ] ?? '' ;
101
+
102
+ // we will update catalog config if catalog has been updated in Meta
103
+ $ this ->catalogConfigUpdateHelper ->updateCatalogConfiguration (
104
+ (int ) $ storeId ,
105
+ $ catalogId ,
106
+ $ commercePartnerIntegrationId ,
107
+ $ pixelId ,
108
+ false
109
+ );
89
110
90
- $ this ->savePixelId ($ data [ ' pixel_id ' ] ?? '' , $ storeId );
111
+ $ this ->savePixelId ($ pixelId , $ storeId );
91
112
$ this ->saveProfiles ($ data ['profiles ' ] ?? '' , $ storeId );
92
113
$ this ->savePages ($ data ['pages ' ] ?? '' , $ storeId );
93
- $ this ->saveCatalogId ($ data ['catalog_id ' ] ?? '' , $ storeId );
94
- $ this ->saveCommercePartnerIntegrationId (
95
- $ data ['commerce_partner_integration_id ' ] ?? '' ,
96
- $ storeId
97
- );
114
+ $ this ->saveCatalogId ($ catalogId , $ storeId );
115
+ $ this ->saveCommercePartnerIntegrationId ($ commercePartnerIntegrationId , $ storeId );
98
116
$ this ->saveMerchantSettingsId ($ data ['commerce_merchant_settings_id ' ] ?? '' , $ storeId );
99
117
$ this ->saveInstalledFeatures ($ data ['installed_features ' ] ?? '' , $ storeId );
100
118
$ this ->systemConfig ->cleanCache ();
0 commit comments