PluginProbe
Timetics – Appointment Booking Calendar & Scheduling / 1.0.38
Timetics – Appointment Booking Calendar & Scheduling v1.0.38
1.0.61 1.0.60 1.0.59 1.0.58 1.0.57 1.0.56 trunk 1.0.0 1.0.1 1.0.10 1.0.11 1.0.12 1.0.13 1.0.14 1.0.15 1.0.16 1.0.17 1.0.18 1.0.19 1.0.2 1.0.20 1.0.21 1.0.22 1.0.23 1.0.24 All 62 releases
← All changes | timetics.php +39 -3 1.0.101.0.38 View file →
@@ -3,9 +3,9 @@
3 3 /**
4 4 * Plugin Name: Timetics
5 5 * Plugin URI: https://arraytics.com/timetics/
6 6 * Description: Schedule, Appointment and Seat Booking plugin.
7 - * Version: 1.0.10
7 + * Version: 1.0.38
8 8 * Requires at least: 5.2
9 9 * Requires PHP: 7.3
10 10 * Author: Arraytics
11 11 * Author URI: https://arraytics.com/
@@ -55,9 +55,9 @@
55 55 *
56 56 * @return string
57 57 */
58 58 public static function get_version() {
59 - return '1.0.10';
59 + return '1.0.38';
60 60 }
61 61
62 62 /**
63 63 * Requirements Array
@@ -103,9 +103,9 @@
103 103 * @since 1.0.0
104 104 */
105 105 private function __construct() {
106 106 // Always load translation.
107 - add_action( 'plugins_loaded', array( $this, 'load_text_domain' ) );
107 + add_action( 'init', array( $this, 'load_text_domain' ) );
108 108
109 109 // Initialize plugin functionalities or quit.
110 110 $this->requirements_met() ? $this->initialize_modules() : $this->quit();
111 111 }
@@ -135,13 +135,24 @@
135 135 require_once dirname( __FILE__ ) . '/core/settings/settings.php';
136 136
137 137 require_once dirname( __FILE__ ) . '/utils/global-helper.php';
138 138
139 + // block for showing banner.
140 + require_once plugin_dir_path( __FILE__ ) . '/utils/notice/notice.php';
141 + require_once plugin_dir_path( __FILE__ ) . '/utils/banner/banner.php';
142 + require_once plugin_dir_path( __FILE__ ) . '/utils/pro-awareness/pro-awareness.php';
143 +
139 144 // Include the bootstrap file if not loaded.
140 145 if ( ! class_exists( 'Timetics\Bootstrap' ) ) {
141 146 require_once self::get_plugin_dir() . 'bootstrap.php';
142 147 }
143 148
149 + // init notice class.
150 + \Oxaim\Libs\Notice::init();
151 +
152 + // init pro menu class.
153 + \Wpmet\Libs\Pro_Awareness::init();
154 +
144 155 // Initialize the bootstraper if exists.
145 156 if ( class_exists( 'Timetics\Bootstrap' ) ) {
146 157
147 158 // Initialize all modules through plugins_loaded.
@@ -209,8 +220,25 @@
209 220 * @return void
210 221 */
211 222 public function init() {
212 223 Timetics\Bootstrap::instantiate( self::get_plugin_file() );
224 +
225 + // Add autoload from composer for integrating uninstallation form
226 + if (file_exists(plugin_dir_path( __FILE__ ) . '/vendor/autoload.php')) {
227 + require_once plugin_dir_path( __FILE__ ) . '/vendor/autoload.php';
228 + }
229 +
230 + if ( class_exists( 'UninstallerForm\UninstallerForm' ) ) {
231 + $uninstaller_form = new \UninstallerForm\UninstallerForm();
232 + $uninstaller_form->init(
233 + 'Timetics', // Plugin name
234 + 'timetics', // Plugin Slug
235 + __FILE__,
236 + 'timetics', // Text Domain Name
237 + 'timetics-feedback-modal', // plugins-admin-script-handler
238 + 'https://arraytics.com/?fluentcrm=1&route=contact&hash=13cce8a6-c038-4997-91e7-4a2326cc1124'
239 + );
240 + }
213 241 }
214 242
215 243 /**
216 244 * Called Only Once While Activation
@@ -231,8 +259,16 @@
231 259 timetics_add_woocommerce_product_cat();
232 260
233 261 // Update option for onboard settings.
234 262 $timetics_onboard_setup = get_option( 'timetics_onboard_setup' );
263 +
264 + $timetics_demo_data = get_option( 'timetics_demo_data' );
265 +
266 + if ( ! $timetics_demo_data ) {
267 + $dummy_data_generator = new Timetics\Core\DummyData\Dummy_Data_Generator();
268 + $dummy_data_generator->generate();
269 + update_option( 'timetics_demo_data', true );
270 + }
235 271
236 272 if ( ! $timetics_onboard_setup ) {
237 273 update_option( 'timetics_onboard_settings', true );
238 274 }