PluginProbe
Assistant – Every Day Productivity Apps / 1.3
Assistant – Every Day Productivity Apps v1.3
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.3, at backend/src/Providers/HooksServiceProvider.php

82 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 add_action( 'fl_builder_ui_enqueue_scripts', $enqueue_scripts );
53
54 // setup user profile meta fields - shows on YOUR profile, not on others.
55 add_action( 'show_user_profile', $this->injector->make( OnEditUserProfile::class ) );
56 add_action( 'personal_options_update', $this->injector->make( OnPersonalOptionsUpdate::class ) );
57
58 // Add Assistant Toolbar Item
59 add_action( 'wp_before_admin_bar_render', $this->injector->make( OnWPBeforeAdminBarRender::class ) );
60
61 // post actions
62 add_action( 'before_delete_post', $this->injector->make( OnBeforeDeletePost::class ) );
63
64 // taxonomy actions
65 add_action( 'delete_term', $this->injector->make( OnDeleteTerm::class ) );
66
67 // Customize register
68 add_action( 'customize_register', $this->injector->make( OnCustomizeRegister::class ) );
69
70 }
71
72 public function filters() {
73
74 // setup heartbeat
75 add_filter( 'heartbeat_received', $this->injector->make( OnHeartbeatReceived::class ), 11, 2 );
76
77 add_filter( 'fl_builder_ui_bar_buttons', $this->injector->make( OnFLBuilderUIBarButtons::class ) );
78
79 add_filter( 'script_loader_tag', $this->injector->make( OnScriptLoaderTag::class ), 10, 3 );
80 }
81 }
82