PluginProbe
Ovation Elements / 1.0.7
Ovation Elements v1.0.7
1.2.7 1.2.6 trunk 1.0.2 1.0.3 1.0.4 1.0.5 1.0.6 1.0.7 1.0.8 1.0.9 1.1.0 1.1.1 1.1.2 1.1.3 1.1.4 1.1.5 1.1.6 1.1.7 1.1.8 1.1.9 1.2.0 1.2.1 1.2.2 1.2.3 All 27 releases
ovation-elements / ovation-elements.php

ovation-elements.php in Ovation Elements 1.0.7, at ovation-elements.php

233 lines 11.9 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * Plugin Name: Ovation Elements
4 * Plugin URI:
5 * Description: Transform your site with captivating sliders. Perfect for beginners and advanced users. Create and customize with our ultimate slider plugin.
6 * Version: 1.0.7
7 * Requires at least: 5.2
8 * Requires PHP: 7.2
9 * Author: pewilliams
10 * Author URI: https://www.ovationthemes.com/
11 * License: GPL v2 or later
12 * License URI: https://www.gnu.org/licenses/gpl-2.0.html
13 * Text Domain: ovation-elements
14 */
15
16 if (!defined('ABSPATH')) {
17 exit; // Exit if accessed directly.
18 }
19
20 define( 'OVA_ELEMS_FILE', __FILE__ );
21 define( 'OVA_ELEMS_BASE', plugin_basename( OVA_ELEMS_FILE ) );
22 define( 'OVA_ELEMS_DIR', plugin_dir_path( OVA_ELEMS_FILE ) );
23 define( 'OVA_ELEMS_URL', plugins_url( '/', OVA_ELEMS_FILE ) );
24 define( 'OVA_ELEMS_LICENSE_ENDPOINT', 'https://license.ovationthemes.com/api/public/' );
25
26 define( 'OVA_ELEMS_VER', '1.0.7' );
27
28 // Include necessary files
29 include(plugin_dir_path(__FILE__) . 'includes/admin-settings.php');
30 include(plugin_dir_path(__FILE__) . 'includes/slider-shortcode.php');
31 include(plugin_dir_path(__FILE__) . 'ajax/ajax.php');
32
33 function ova_elems_admin_scripts($hook) {
34
35 if ($hook == 'toplevel_page_ovation_elements' || $hook == 'ovation-elements_page_select-template' || $hook == 'admin_page_edit-slider-template-template1' || $hook == 'admin_page_edit-slider-template-template2' || $hook == 'admin_page_edit-slider-template-template3' || $hook == 'admin_page_edit-slider-template-template4' || $hook == 'admin_page_edit-slider-template-template5') {
36
37 wp_enqueue_style('ova-elems-bootstrap-css', plugin_dir_url(__FILE__) . 'assets/css/bootstrap.min.css', array(), OVA_ELEMS_VER);
38 }
39 wp_enqueue_style('ova-elems-admin-css', plugin_dir_url(__FILE__) . 'assets/css/slider-admin.css', array(), OVA_ELEMS_VER);
40 wp_enqueue_media();
41
42 if ( $hook == 'admin_page_edit-slider-template-template1' ) {
43 wp_enqueue_script('ova-elems-template-1-scripts', plugin_dir_url(__FILE__) . 'assets/js/admin/template-1-scripts.js', array('jquery'), OVA_ELEMS_VER, true);
44 } elseif ( $hook == 'admin_page_edit-slider-template-template2' ) {
45 wp_enqueue_script('ova-elems-template-2-scripts', plugin_dir_url(__FILE__) . 'assets/js/admin/template-2-scripts.js', array('jquery'), OVA_ELEMS_VER, true);
46 } elseif ( $hook == 'admin_page_edit-slider-template-template3' ) {
47 wp_enqueue_script('ova-elems-template-3-scripts', plugin_dir_url(__FILE__) . 'assets/js/admin/template-3-scripts.js', array('jquery'), OVA_ELEMS_VER, true);
48 } elseif ( $hook == 'admin_page_edit-slider-template-template4' ) {
49 wp_enqueue_script('ova-elems-template-4-scripts', plugin_dir_url(__FILE__) . 'assets/js/admin/template-4-scripts.js', array('jquery'), OVA_ELEMS_VER, true);
50 wp_localize_script(
51 'ova-elems-template-4-scripts',
52 'ova_elems_template_script',
53 array(
54 'ajaxurl' => admin_url('admin-ajax.php')
55 )
56 );
57 } elseif ( $hook == 'admin_page_edit-slider-template-template5' ) {
58 wp_enqueue_script('ova-elems-template-5-scripts', plugin_dir_url(__FILE__) . 'assets/js/admin/template-5-scripts.js', array('jquery'), OVA_ELEMS_VER, true);
59 }
60
61 }
62 add_action('admin_enqueue_scripts', 'ova_elems_admin_scripts');
63
64 function ova_elems_admin_enqueue_scripts($hook_suffix) {
65 if ($hook_suffix !== 'toplevel_page_ova-elems') {
66 return;
67 }
68
69 wp_enqueue_script('jquery');
70
71 }
72 add_action('admin_enqueue_scripts', 'ova_elems_admin_enqueue_scripts');
73
74 //i add temprory
75
76 //for enque
77 function ova_elems_enqueue_scripts($hook) {
78
79 // Enqueue Font Awesome
80 wp_enqueue_style('ova-elems-font-awesome', plugin_dir_url(__FILE__) . 'assets/css/font.all.min.css', array(), OVA_ELEMS_VER);
81 wp_enqueue_style('ova-elems-modal-css', OVA_ELEMS_URL . 'assets/css/modal.css', array(), OVA_ELEMS_VER);
82
83 // Enqueue Bootstrap CSS
84 wp_enqueue_script('jquery');
85 if (isset($_GET['page']) && $_GET['page'] == 'ovation_elements') {
86
87 wp_enqueue_style('ova-elems-bootstrap-css', 'https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css', array(), OVA_ELEMS_VER);
88 // Enqueue Bootstrap JS and its dependency Popper.js
89 wp_enqueue_script('ova-elems-popper-js', 'https://cdn.jsdelivr.net/npm/@popperjs/core@2.9.3/dist/umd/popper.min.js', array('jquery'), OVA_ELEMS_VER, true);
90 wp_enqueue_script('ova-elems-bootstrap-js', 'https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/js/bootstrap.min.js', array('jquery', 'ova-elems-popper-js'), OVA_ELEMS_VER, true);
91
92
93 }
94 }
95 add_action('admin_enqueue_scripts', 'ova_elems_enqueue_scripts');
96 //end
97
98 // Register activation hook
99 register_activation_hook(__FILE__, 'ova_elems_activate');
100
101 function ova_elems_activate() {
102 // Activation code here
103 ova_elems_post_type();
104 flush_rewrite_rules();
105 }
106
107 // Register deactivation hook
108 register_deactivation_hook(__FILE__, 'ova_elems_deactivate');
109
110 function ova_elems_deactivate() {
111 // Deactivation code here
112 flush_rewrite_rules();
113 }
114
115 function ova_elems_enqueue_block_editor_assets() {
116
117 wp_enqueue_style('ova-elems-modal-css', OVA_ELEMS_URL . 'assets/css/modal.css', array(), OVA_ELEMS_VER);
118
119 wp_register_script(
120 'ova-elems-modal-js',
121 OVA_ELEMS_URL . 'assets/js/modal.js',
122 array( 'jquery' ),
123 OVA_ELEMS_VER,
124 true
125 );
126
127 $theme = wp_get_theme();
128 $theme_author = $theme->get('Author');
129 $theme_text_domain = $theme->get('TextDomain');
130
131 $theme_directory = get_stylesheet_directory_uri();
132 $screenshot_url = $theme_directory . '/screenshot.png';
133
134 $demo_btn = strtoupper(str_replace("-", "_", $theme_text_domain)) . '_LIVE_DEMO';
135 $buy_pro = strtoupper(str_replace("-", "_", $theme_text_domain)) . '_BUY_PRO';
136 $free_doc = strtoupper(str_replace("-", "_", $theme_text_domain)) . '_FREE_DOC';
137
138 $is_demo_defined = defined($demo_btn);
139 $is_buy_pro_defined = defined($buy_pro);
140 $is_free_doc_defined = defined($free_doc);
141
142 $localize_arr = array(
143 'admin_ajax' => admin_url( 'admin-ajax.php' ),
144 'search_icon' => OVA_ELEMS_URL . 'assets/images/search.png',
145 'is_author' => $theme_author === 'pewilliams' ? true : false,
146 'bundle_image' => OVA_ELEMS_URL . 'assets/images/bundle-images.png'
147 );
148
149 if ($theme_author === 'pewilliams') {
150 $localize_arr['screenshot_url'] = $screenshot_url;
151
152 $localize_arr['demo_btn'] = $is_demo_defined ? constant($demo_btn) : 'https://www.ovationthemes.com/collections/professional-wordpress-themes';
153 $localize_arr['buy_pro'] = $is_buy_pro_defined ? constant($buy_pro) : 'https://www.ovationthemes.com/products/wordpress-bundle';
154 $localize_arr['free_doc'] = $is_free_doc_defined ? constant($free_doc) : 'https://www.ovationthemes.com/';
155 }
156
157 wp_localize_script(
158 'ova-elems-modal-js',
159 'ova_elems_modal_js',
160 $localize_arr
161 );
162 wp_enqueue_script( 'ova-elems-modal-js' );
163 }
164 add_action( 'enqueue_block_editor_assets', 'ova_elems_enqueue_block_editor_assets' );
165
166 // Register block script.
167 function ova_elems_register_block() {
168 wp_register_script( 'ova-elems-block', plugins_url( 'build/index.js', __FILE__ ), array( 'wp-blocks', 'wp-element', 'wp-editor', 'wp-components' ) );
169 register_block_type(
170 'ova-elems/ovation-sliders',
171 array(
172 'editor_script' => 'ova-elems-block',
173 'style' => 'ova-elems-style',
174 'editor_style' => 'ova-elems-editor-style',
175 'attributes' => array(
176 'selectedPost' => array(
177 'type' => 'number',
178 'default' => null,
179 ),
180 ),
181 'render_callback' => 'ova_elems_render_slider_block'
182 )
183 );
184 }
185 add_action( 'init', 'ova_elems_register_block' );
186
187 function ova_elems_render_slider_block( $attributes ) {
188
189 $id = isset( $attributes['selectedPost'] ) ? $attributes['selectedPost'] : null;
190
191 if ( ! $id ) {
192 return '';
193 }
194
195 return do_shortcode( '[ova-elems-slider-template id="' . intval( $id ) . '"]' );
196 }
197
198 add_filter( 'block_categories_all', function( $categories, $post ) {
199 return array_merge(
200 array(
201 array(
202 'slug' => 'Ovation Sliders',
203 'title' => 'Ovation Sliders',
204 'icon' => '<svg id="Layer_2" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 22.56 22.07"><defs><style>{`.cls-1 {fill: #cee1f2;}.cls-2 {fill: none;stroke: #0023c4;stroke-width: .5px;}.cls-2, .cls-3 {stroke-miterlimit: 10;}.cls-4 {fill: #0023c4;}.cls-5, .cls-3 {fill: #ff5cf4;}.cls-3 {stroke: #ff5cf4;stroke-width: .25px;}`}</style></defs><g id="Layer_1-2" data-name="Layer_1"><path class="cls-4" d="M19.76,0h-5.52c-1.33,0-2.41,1.08-2.41,2.42v8.62c0,1.33,1.08,2.41,2.41,2.41h5.52c1.33,0,2.41-1.08,2.41-2.41V3.11l-2.41-3.11ZM20.44,11.03c0,.38-.31.69-.69.69h-5.52c-.38,0-.69-.31-.69-.69V2.42c0-.38.31-.69.69-.69h5.03v.91c0,.26.19.48.43.48h.75v7.92Z"/><path class="cls-1" d="M3.45,19.65v-7.07c0-.86.7-1.55,1.55-1.55h-2.59c-.86,0-1.55.7-1.55,1.55v7.07c0,.86.7,1.55,1.55,1.55h2.59c-.86,0-1.55-.7-1.55-1.55Z"/><path class="cls-4" d="M2.41,7.28h5.34c1.33,0,2.41-.91,2.41-2.04v-3.2c0-1.12-1.08-2.04-2.41-2.04H2.41C1.08,0,0,.91,0,2.04v3.2c0,1.12,1.08,2.04,2.41,2.04ZM1.72,2.04c0-.32.31-.58.69-.58h5.34c.38,0,.69.26.69.58v3.2c0,.32-.31.58-.69.58H2.41c-.38,0-.69-.26-.69-.58v-3.2Z"/><path class="cls-4" d="M2.41,22.07h5.34c1.33,0,2.41-1.08,2.41-2.41v-7.07c0-1.33-1.08-2.41-2.41-2.41H2.41c-1.33,0-2.41,1.08-2.41,2.41v7.07c0,1.33,1.08,2.41,2.41,2.41ZM1.72,12.59c0-.38.31-.69.69-.69h5.34c.38,0,.69.31.69.69v7.07c0,.38-.31.69-.69.69H2.41c-.38,0-.69-.31-.69-.69v-7.07Z"/><circle class="cls-4" cx="5.21" cy="8.75" r=".69"/><circle class="cls-2" cx="2.85" cy="8.75" r=".56"/><circle class="cls-2" cx="7.57" cy="8.75" r=".56"/><path class="cls-5" d="M21.01,19.09c-.4,0-.72.28-.72.62v.32c0,.44-.3.79-.67.79h-5.98c-.37,0-.67-.36-.67-.79v-1.88c0-.44.3-.79.67-.79h1.61c.4,0,.72-.28.72-.62h0c0-.34-.32-.62-.72-.62h-2c-.98,0-1.78.94-1.78,2.11v1.72c0,1.17.8,2.11,1.78,2.11h6.78c.98,0,1.78-.94,1.78-2.11v-.24c0-.34-.32-.62-.72-.62h-.07Z"/><path class="cls-5" d="M22.49,16.25l-2.14-2.22c-.07-.07-.18-.1-.27-.06-.09.04-.15.13-.15.23v1.07h-.08c-1.77,0-3.21,1.44-3.21,3.21v.49c0,.11.08.21.19.24.02,0,.04,0,.05,0,.09,0,.18-.05.23-.14.46-.93,1.4-1.5,2.43-1.5h.39v1.07c0,.1.06.19.15.23.09.04.2.01.27-.06l2.14-2.22c.09-.1.09-.25,0-.34Z"/><path class="cls-3" d="M7.59,3.77l.28-.28-.28-.28s-.02-.05,0-.06c.02-.02.04-.02.06,0l.31.31s.02.05,0,.06l-.31.31s-.05.02-.06,0c-.02-.02-.02-.04,0-.06h0Z"/><path class="cls-3" d="M2.41,3.77s.02.04,0,.06c-.02.02-.05.02-.06,0l-.31-.31s-.02-.05,0-.06l.31-.31s.04-.02.06,0c.02.02.02.05,0,.06l-.28.28.28.28h0Z"/></g></svg>'
205 ),
206 ),
207 $categories
208 );
209 }, 99999, 2 );
210
211 add_action('admin_notices', 'ova_elems_admin_notice_with_html');
212
213 function ova_elems_admin_notice_with_html() {
214 ?>
215 <div class="notice is-dismissible ova-elems">
216 <div class="ova-elems-notice-banner-wrap">
217 <div class="ova-elems-notice-left-img">
218 <img src="<?php echo esc_url( OVA_ELEMS_URL . 'assets/images/notice-background.png'); ?>" alt="">
219 </div>
220 <div class="ova-elems-notice-heading">
221 <h1 class="ova-elems-main-head"><?php echo esc_html('WORDPRESS THEME BUNDLE');?></h1>
222 <h4 class="ova-elems-sub-head"><?php echo esc_html('Access 100+ Gutenberg Block WordPress themes at Just $89');?></h4>
223 </div>
224 <div class="ova-elems-notice-btn">
225 <a class="ova-elems-buy-btn" target="_blank" href="<?php echo esc_url('https://www.ovationthemes.com/products/wordpress-bundle'); ?>"><?php echo esc_html('BUY NOW');?></a>
226 </div>
227 <div class="notice-right-img">
228 <img src="<?php echo esc_url( OVA_ELEMS_URL . 'assets/images/bundle-package.png'); ?>" alt="">
229 </div>
230 </div>
231 </div>
232 <?php
233 }