16
16
*/
17
17
class UpdateSmartButtonLabel implements DataPatchInterface, PatchVersionInterface
18
18
{
19
- /**
20
- * @var array
21
- */
22
- private $ labelSettingsToUpdate = [
23
- 'paypal/style/checkout_page_button_label ' ,
24
- 'paypal/style/cart_page_button_label ' ,
25
- 'paypal/style/mini_cart_page_button_label ' ,
26
- 'paypal/style/product_page_button_label ' ,
27
- ];
28
-
29
19
/**
30
20
* @var ModuleDataSetupInterface
31
21
*/
@@ -47,26 +37,26 @@ public function __construct(
47
37
public function apply ()
48
38
{
49
39
$ this ->moduleDataSetup ->getConnection ()->startSetup ();
50
- $ connection = $ this ->moduleDataSetup ->getConnection ();
51
-
52
- $ select = $ connection -> select ()
53
- -> from ( $ this -> moduleDataSetup -> getTable ( ' core_config_data ' ), [ ' path ' , ' scope ' , ' scope_id ' , ' value ' ])
54
- -> where ( 'path IN (?) ' , $ this -> labelSettingsToUpdate )
55
- -> where ( ' value = ? ' , ' credit ' );
56
-
57
- foreach ( $ connection -> fetchAll ( $ select ) as $ pair ) {
58
- $ value = $ pair [ ' path ' ] === ' paypal/style/product_page_button_label ' ? ' buynow ' : ' paypal ' ;
59
- $ this -> moduleDataSetup -> getConnection ()
60
- -> insertOnDuplicate (
61
- $ this -> moduleDataSetup -> getTable ( ' core_config_data ' ),
62
- [
63
- ' scope ' => $ pair [ ' scope ' ] ,
64
- ' scope_id ' => $ pair [ ' scope_id ' ],
65
- ' path ' => $ pair [ ' path ' ],
66
- ' value ' => $ value
67
- ]
68
- );
69
- }
40
+ $ this ->moduleDataSetup ->getConnection ()-> update (
41
+ $ this -> moduleDataSetup -> getTable ( ' core_config_data ' ),
42
+ [ ' value ' => ' paypal ' ],
43
+ [
44
+ 'path IN (?) ' => [
45
+ ' paypal/style/checkout_page_button_label ' ,
46
+ ' paypal/style/cart_page_button_label ' ,
47
+ ' paypal/style/mini_cart_page_button_label '
48
+ ],
49
+ ' value = ? ' => ' credit '
50
+ ]
51
+ );
52
+ $ this -> moduleDataSetup -> getConnection ()-> update (
53
+ $ this -> moduleDataSetup -> getTable ( ' core_config_data ' ) ,
54
+ [ ' value ' => ' buynow ' ],
55
+ [
56
+ ' path IN (?) ' => [ ' paypal/style/product_page_button_label ' ],
57
+ ' value = ? ' => ' credit '
58
+ ]
59
+ );
70
60
return $ this ->moduleDataSetup ->getConnection ()->endSetup ();
71
61
}
72
62
0 commit comments