PluginProbe
Assistant – Every Day Productivity Apps / 1.1.0
Assistant – Every Day Productivity Apps v1.1.0
1.5.5 trunk 0.1.0 0.2.0 0.2.1 0.2.2 0.3.0 0.3.1 0.4 0.4.1 0.4.2 0.5.0 0.5.1 0.6.0 0.7.0 0.7.0.2 0.7.0.3 0.7.0.4 0.7.0.5 0.7.0.6 0.7.0.7 0.7.0.8 0.7.0.9 0.7.1 1.0 All 71 releases
assistant / backend / src / Providers / HooksServiceProvider.php

HooksServiceProvider.php in Assistant – Every Day Productivity Apps 1.1.0, at backend/src/Providers/HooksServiceProvider.php

81 lines 2.5 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace FL\Assistant\Providers;
4
5 use FL\Assistant\System\Contracts\ServiceProviderAbstract;
6
7 use FL\Assistant\Hooks\Actions\OnEditUserProfile;
8 use FL\Assistant\Hooks\Actions\OnEnqueueScripts;
9 use FL\Assistant\Hooks\Actions\OnPersonalOptionsUpdate;
10 use FL\Assistant\Hooks\Actions\OnWPBeforeAdminBarRender;
11 use FL\Assistant\Hooks\Actions\OnBeforeDeletePost;
12 use FL\Assistant\Hooks\Actions\OnDeleteTerm;
13 use FL\Assistant\Hooks\Actions\OnCustomizeRegister;
14
15 use FL\Assistant\Hooks\Filters\OnHeartbeatReceived;
16 use FL\Assistant\Hooks\Filters\OnFLBuilderUIBarButtons;
17 use FL\Assistant\Hooks\Filters\OnScriptLoaderTag;
18
19 use FL\Assistant\Hooks\AdminColumns;
20 use FL\Assistant\Hooks\ImageProxy;
21 use FL\Assistant\Hooks\PostPreview;
22 use FL\Assistant\Hooks\CustomizerPreview;
23
24 class HooksServiceProvider extends ServiceProviderAbstract {
25
26 /**
27 * @throws \FL\Assistant\System\Container\InjectionException
28 */
29 public function bootstrap() {
30
31 register_activation_hook(
32 FL_ASSISTANT_FILE, function () {
33 do_action( 'fl_assistant_activate' );
34 }
35 );
36
37 $this->actions();
38 $this->filters();
39
40 new AdminColumns();
41 new ImageProxy();
42 new PostPreview();
43 new CustomizerPreview();
44 }
45
46 public function actions() {
47
48 // Enqueue Assistant frontend
49 $enqueue_scripts = $this->injector->make( OnEnqueueScripts::class );
50 add_action( 'wp_enqueue_scripts', $enqueue_scripts );
51 add_action( 'admin_enqueue_scripts', $enqueue_scripts );
52
53 // setup user profile meta fields - shows on YOUR profile, not on others.
54 add_action( 'show_user_profile', $this->injector->make( OnEditUserProfile::class ) );
55 add_action( 'personal_options_update', $this->injector->make( OnPersonalOptionsUpdate::class ) );
56
57 // Add Assistant Toolbar Item
58 add_action( 'wp_before_admin_bar_render', $this->injector->make( OnWPBeforeAdminBarRender::class ) );
59
60 // post actions
61 add_action( 'before_delete_post', $this->injector->make( OnBeforeDeletePost::class ) );
62
63 // taxonomy actions
64 add_action( 'delete_term', $this->injector->make( OnDeleteTerm::class ) );
65
66 // Customize register
67 add_action( 'customize_register', $this->injector->make( OnCustomizeRegister::class ) );
68
69 }
70
71 public function filters() {
72
73 // setup heartbeat
74 add_filter( 'heartbeat_received', $this->injector->make( OnHeartbeatReceived::class ), 11, 2 );
75
76 add_filter( 'fl_builder_ui_bar_buttons', $this->injector->make( OnFLBuilderUIBarButtons::class ) );
77
78 add_filter( 'script_loader_tag', $this->injector->make( OnScriptLoaderTag::class ), 10, 3 );
79 }
80 }
81