3434 */
3535class Plugin extends BasePlugin
3636{
37-
38- const PERMISSION_BULKEDIT_ENTRIES = 'PERMISSION_BULKEDIT_ENTRIES ' ;
39- const PERMISSION_BULKEDIT_PRODUCTS = 'PERMISSION_BULKEDIT_PRODUCTS ' ;
40- const PERMISSION_BULKEDIT_ASSETS = 'PERMISSION_BULKEDIT_ASSETS ' ;
41- const PERMISSION_BULKEDIT_CATEGORIES = 'PERMISSION_BULKEDIT_CATEGORIES ' ;
42- const PERMISSION_BULKEDIT_USERS = 'PERMISSION_BULKEDIT_USERS ' ;
37+ public const PERMISSION_BULKEDIT_ENTRIES = 'PERMISSION_BULKEDIT_ENTRIES ' ;
38+ public const PERMISSION_BULKEDIT_PRODUCTS = 'PERMISSION_BULKEDIT_PRODUCTS ' ;
39+ public const PERMISSION_BULKEDIT_ASSETS = 'PERMISSION_BULKEDIT_ASSETS ' ;
40+ public const PERMISSION_BULKEDIT_CATEGORIES = 'PERMISSION_BULKEDIT_CATEGORIES ' ;
41+ public const PERMISSION_BULKEDIT_USERS = 'PERMISSION_BULKEDIT_USERS ' ;
4342 /**
4443 * @var Plugin
4544 */
4645 public static $ plugin ;
47- public $ schemaVersion = '1.1.0 ' ;
46+ public string $ schemaVersion = '4.0.0 ' ;
47+
4848
4949 public function init ()
5050 {
5151 parent ::init ();
5252 self ::$ plugin = $ this ;
5353
54- $ this ->setComponents (['bulkEdit ' => BulkEdit::class]);
5554
56- Event::on (UserPermissions::class, UserPermissions::EVENT_REGISTER_PERMISSIONS , function (RegisterUserPermissionsEvent $ event ) {
55+ Event::on (UserPermissions::class, UserPermissions::EVENT_REGISTER_PERMISSIONS , function (RegisterUserPermissionsEvent $ event ) {
5756 $ permissions = [];
5857 $ permissions [self ::PERMISSION_BULKEDIT_ENTRIES ] = [
59- 'label ' => Craft::t ('venveo-bulk-edit ' , 'Bulk Edit Entries ' )
58+ 'label ' => Craft::t ('venveo-bulk-edit ' , 'Bulk Edit Entries ' ),
6059 ];
6160 $ permissions [self ::PERMISSION_BULKEDIT_ASSETS ] = [
62- 'label ' => Craft::t ('venveo-bulk-edit ' , 'Bulk Edit Assets ' )
61+ 'label ' => Craft::t ('venveo-bulk-edit ' , 'Bulk Edit Assets ' ),
6362 ];
6463 $ permissions [self ::PERMISSION_BULKEDIT_CATEGORIES ] = [
65- 'label ' => Craft::t ('venveo-bulk-edit ' , 'Bulk Edit Categories ' )
64+ 'label ' => Craft::t ('venveo-bulk-edit ' , 'Bulk Edit Categories ' ),
6665 ];
6766 $ permissions [self ::PERMISSION_BULKEDIT_USERS ] = [
68- 'label ' => Craft::t ('venveo-bulk-edit ' , 'Bulk Edit Users ' )
67+ 'label ' => Craft::t ('venveo-bulk-edit ' , 'Bulk Edit Users ' ),
6968 ];
7069
7170 if (Craft::$ app ->plugins ->isPluginInstalled ('commerce ' )) {
7271 $ permissions [self ::PERMISSION_BULKEDIT_PRODUCTS ] = [
73- 'label ' => Craft::t ('venveo-bulk-edit ' , 'Bulk Edit Products ' )
72+ 'label ' => Craft::t ('venveo-bulk-edit ' , 'Bulk Edit Products ' ),
7473 ];
7574 }
7675
77- $ event ->permissions [Craft::t ('venveo-bulk-edit ' , 'Bulk Edit ' )] = $ permissions ;
76+ $ event ->permissions [] = [
77+ 'heading ' => Craft::t ('venveo-bulk-edit ' , 'Bulk Edit ' ),
78+ 'permissions ' => $ permissions
79+ ];
7880 });
7981
8082 if (Craft::$ app ->request ->isCpRequest ) {
8183 if (Craft::$ app ->user ->checkPermission (self ::PERMISSION_BULKEDIT_ENTRIES )) {
8284 Event::on (Entry::class, Element::EVENT_REGISTER_ACTIONS ,
83- function (RegisterElementActionsEvent $ event ) {
85+ function (RegisterElementActionsEvent $ event ) {
8486 $ event ->actions [] = BulkEditElementAction::class;
8587 }
8688 );
8789 }
8890
8991 if (Craft::$ app ->user ->checkPermission (self ::PERMISSION_BULKEDIT_CATEGORIES )) {
9092 Event::on (Category::class, Element::EVENT_REGISTER_ACTIONS ,
91- function (RegisterElementActionsEvent $ event ) {
93+ function (RegisterElementActionsEvent $ event ) {
9294 $ event ->actions [] = BulkEditElementAction::class;
9395 }
9496 );
9597 }
9698
9799 if (Craft::$ app ->user ->checkPermission (self ::PERMISSION_BULKEDIT_ASSETS )) {
98100 Event::on (Asset::class, Element::EVENT_REGISTER_ACTIONS ,
99- function (RegisterElementActionsEvent $ event ) {
101+ function (RegisterElementActionsEvent $ event ) {
100102 $ event ->actions [] = BulkEditElementAction::class;
101103 }
102104 );
103105 }
104106
105107 if (Craft::$ app ->user ->checkPermission (self ::PERMISSION_BULKEDIT_USERS )) {
106108 Event::on (User::class, Element::EVENT_REGISTER_ACTIONS ,
107- function (RegisterElementActionsEvent $ event ) {
109+ function (RegisterElementActionsEvent $ event ) {
108110 $ event ->actions [] = BulkEditElementAction::class;
109111 }
110112 );
@@ -113,12 +115,24 @@ function (RegisterElementActionsEvent $event) {
113115 if (Craft::$ app ->user ->checkPermission (self ::PERMISSION_BULKEDIT_PRODUCTS )) {
114116 if (Craft::$ app ->plugins ->isPluginInstalled ('commerce ' ) && class_exists (Product::class)) {
115117 Event::on (Product::class, Element::EVENT_REGISTER_ACTIONS ,
116- function (RegisterElementActionsEvent $ event ) {
118+ function (RegisterElementActionsEvent $ event ) {
117119 $ event ->actions [] = BulkEditElementAction::class;
118120 }
119121 );
120122 }
121123 }
122124 }
123125 }
126+
127+ /**
128+ * @inheritdoc
129+ */
130+ public static function config (): array
131+ {
132+ return [
133+ 'components ' => [
134+ 'bulkEdit ' => ['class ' => BulkEdit::class]
135+ ],
136+ ];
137+ }
124138}
0 commit comments