PluginProbe
Depicter — Popup & Slider Builder / 1.5.2
Depicter — Popup & Slider Builder v1.5.2
4.8.1 trunk 1.0.0 1.1.0 1.1.2 1.1.4 1.1.6 1.1.7 1.1.8 1.1.9 1.2.0 1.3.0 1.3.1 1.3.2 1.3.3 1.3.5 1.3.8 1.5.0 1.5.1 1.5.2 1.5.5 1.6.0 1.6.1 1.6.2 1.7.0 All 76 releases
depicter / app / src / WordPress / PluginServiceProvider.php

PluginServiceProvider.php in Depicter — Popup & Slider Builder 1.5.2, at app/src/WordPress/PluginServiceProvider.php

98 lines 2.5 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 namespace Depicter\WordPress;
3
4 use Averta\WordPress\Models\WPOptions;
5 use WPEmerge\ServiceProviders\ServiceProviderInterface;
6
7 /**
8 * Register plugin general hooks.
9 */
10 class PluginServiceProvider implements ServiceProviderInterface
11 {
12 /**
13 * {@inheritDoc}
14 */
15 public function register( $container ) {
16 $app = $container[ WPEMERGE_APPLICATION_KEY ];
17
18 // register depicter options
19 $container[ 'depicter.options' ] = function () {
20 return new WPOptions('depicter_');
21 };
22 $app->alias( 'options', 'depicter.options' );
23 }
24
25 /**
26 * {@inheritDoc}
27 */
28 public function bootstrap( $container ) {
29 register_activation_hook( DEPICTER_PLUGIN_FILE, [ $this, 'activate' ] );
30 register_deactivation_hook(DEPICTER_PLUGIN_FILE, [ $this, 'deactivate'] );
31
32 add_action( 'plugins_loaded', [$this, 'loadTextDomain'] );
33 add_action( 'upgrader_process_complete',[ $this, 'check_plugin_upgrade' ],10, 2 );
34 add_action( 'admin_init', [ $this, 'check_plugin_upgrade_via_upload' ] );
35 }
36
37 /**
38 * Plugin activation.
39 *
40 * @return void
41 */
42 public function activate() {
43 // Nothing to do right now.
44 }
45
46 /**
47 * Plugin deactivation.
48 *
49 * @return void
50 */
51 public function deactivate() {
52 // Nothing to do right now.
53 }
54
55 /**
56 * Load text domain.
57 *
58 * @return void
59 */
60 public function loadTextDomain() {
61 load_plugin_textdomain( 'depicter', false, basename( dirname( DEPICTER_PLUGIN_FILE ) ) . DIRECTORY_SEPARATOR . 'languages' );
62 }
63
64 /**
65 * Check and fire plugin update hook if plugin upgraded
66 *
67 * @param $upgraderObject
68 * @param $options
69 */
70 public function check_plugin_upgrade( $upgraderObject, $options ) {
71
72 if ( $options['action'] == 'update' && $options['type'] == 'plugin' ) {
73 if( !empty( $options['plugins'] ) ){
74 foreach( $options['plugins'] as $plugin) {
75 if ( $plugin == DEPICTER_PLUGIN_BASENAME ) {
76 $previousVersion = \Depicter::options()->get( 'version', 0 );
77 \Depicter::options()->set( 'version_previous', $previousVersion );
78 \Depicter::options()->set( 'version', DEPICTER_VERSION );
79 do_action( 'depicter/plugin/updated' );
80 }
81 }
82 }
83 }
84 }
85
86 /**
87 * Check if plugin updated via upload or not
88 */
89 public function check_plugin_upgrade_via_upload() {
90 $previousVersion = \Depicter::options()->get( 'version', 0 );
91 if ( version_compare( DEPICTER_VERSION, $previousVersion, '>' ) ) {
92 \Depicter::options()->set( 'version_previous', $previousVersion );
93 \Depicter::options()->set( 'version', DEPICTER_VERSION );
94 do_action( 'depicter/plugin/updated' );
95 }
96 }
97 }
98