| 1 |
<?php |
| 2 |
/** |
| 3 |
* Enqueue Scripts Functions |
| 4 |
* |
| 5 |
* @package REQUEST_A_QUOTE |
| 6 |
* @since WPAS 4.0 |
| 7 |
*/ |
| 8 |
if (!defined('ABSPATH')) exit; |
| 9 |
add_action('admin_enqueue_scripts', 'request_a_quote_load_admin_enq'); |
| 10 |
/** |
| 11 |
* Enqueue style and js for each admin entity pages and settings |
| 12 |
* |
| 13 |
* @since WPAS 4.0 |
| 14 |
* @param string $hook |
| 15 |
* |
| 16 |
*/ |
| 17 |
function request_a_quote_load_admin_enq($hook) { |
| 18 |
global $typenow; |
| 19 |
$dir_url = REQUEST_A_QUOTE_PLUGIN_URL; |
| 20 |
do_action('emd_ext_admin_enq', 'request_a_quote', $hook); |
| 21 |
$min_trigger = get_option('request_a_quote_show_rateme_plugin_min', 0); |
| 22 |
$tracking_optin = get_option('request_a_quote_tracking_optin', 0); |
| 23 |
if (-1 !== intval($tracking_optin) || - 1 !== intval($min_trigger)) { |
| 24 |
wp_enqueue_style('emd-plugin-rateme-css', $dir_url . 'assets/css/emd-plugin-rateme.css'); |
| 25 |
wp_enqueue_script('emd-plugin-rateme-js', $dir_url . 'assets/js/emd-plugin-rateme.js'); |
| 26 |
} |
| 27 |
if ($hook == 'edit-tags.php') { |
| 28 |
return; |
| 29 |
} |
| 30 |
if (isset($_GET['page']) && $_GET['page'] == 'request_a_quote_settings') { |
| 31 |
wp_enqueue_style('emd-accordion-css', $dir_url . 'assets/css/emd-accordion.css'); |
| 32 |
wp_enqueue_script('accordion'); |
| 33 |
wp_enqueue_script('country-js', $dir_url . 'assets/js/emd-country.js', array() , '', true); |
| 34 |
wp_enqueue_style('codemirror-css', $dir_url . 'assets/ext/codemirror/codemirror.min.css'); |
| 35 |
wp_enqueue_script('codemirror-js', $dir_url . 'assets/ext/codemirror/codemirror.min.js', array() , '', true); |
| 36 |
wp_enqueue_script('codemirror-css-js', $dir_url . 'assets/ext/codemirror/css.min.js', array() , '', true); |
| 37 |
wp_enqueue_script('codemirror-jvs-js', $dir_url . 'assets/ext/codemirror/javascript.min.js', array() , '', true); |
| 38 |
return; |
| 39 |
} else if (isset($_GET['page']) && in_array($_GET['page'], Array( |
| 40 |
'request_a_quote_notify' |
| 41 |
))) { |
| 42 |
wp_enqueue_style('emd-accordion-css', $dir_url . 'assets/css/emd-accordion.css'); |
| 43 |
wp_enqueue_script('accordion'); |
| 44 |
return; |
| 45 |
} else if (isset($_GET['page']) && in_array($_GET['page'], Array( |
| 46 |
'request_a_quote_glossary' |
| 47 |
))) { |
| 48 |
wp_enqueue_style('emd-accordion-css', $dir_url . 'assets/css/emd-accordion.css'); |
| 49 |
wp_enqueue_script('accordion'); |
| 50 |
return; |
| 51 |
} else if (isset($_GET['page']) && $_GET['page'] == 'request_a_quote') { |
| 52 |
wp_enqueue_style('lazyYT-css', $dir_url . 'assets/ext/lazyyt/lazyYT.min.css'); |
| 53 |
wp_enqueue_script('lazyYT-js', $dir_url . 'assets/ext/lazyyt/lazyYT.min.js'); |
| 54 |
wp_enqueue_script('getting-started-js', $dir_url . 'assets/js/getting-started.js'); |
| 55 |
return; |
| 56 |
} else if (isset($_GET['page']) && in_array($_GET['page'], Array( |
| 57 |
'request_a_quote_store', |
| 58 |
'request_a_quote_support' |
| 59 |
))) { |
| 60 |
wp_enqueue_style('admin-tabs', $dir_url . 'assets/css/admin-store.css'); |
| 61 |
return; |
| 62 |
} else if (isset($_GET['page']) && $_GET['page'] == 'request_a_quote_licenses') { |
| 63 |
wp_enqueue_style('admin-css', $dir_url . 'assets/css/emd-admin.min.css'); |
| 64 |
return; |
| 65 |
} else if (isset($_GET['page']) && $_GET['page'] == 'request_a_quote_shortcodes') { |
| 66 |
wp_enqueue_script('emd-copy-js', $dir_url . 'assets/js/emd-copy.js', array( |
| 67 |
'clipboard' |
| 68 |
) , ''); |
| 69 |
return; |
| 70 |
} |
| 71 |
if (in_array($typenow, Array( |
| 72 |
'emd_quote' |
| 73 |
))) { |
| 74 |
$theme_changer_enq = 1; |
| 75 |
$sing_enq = 0; |
| 76 |
$tab_enq = 0; |
| 77 |
if ($hook == 'post.php' || $hook == 'post-new.php') { |
| 78 |
$unique_vars['msg'] = __('Please enter a unique value.', 'request-a-quote'); |
| 79 |
$unique_vars['reqtxt'] = __('required', 'request-a-quote'); |
| 80 |
$unique_vars['app_name'] = 'request_a_quote'; |
| 81 |
$unique_vars['nonce'] = wp_create_nonce('emd_form'); |
| 82 |
$ent_list = get_option('request_a_quote_ent_list'); |
| 83 |
if (!empty($ent_list[$typenow])) { |
| 84 |
$unique_vars['keys'] = $ent_list[$typenow]['unique_keys']; |
| 85 |
if (!empty($ent_list[$typenow]['req_blt'])) { |
| 86 |
$unique_vars['req_blt_tax'] = $ent_list[$typenow]['req_blt']; |
| 87 |
} |
| 88 |
} |
| 89 |
$tax_list = get_option('request_a_quote_tax_list'); |
| 90 |
if (!empty($tax_list[$typenow])) { |
| 91 |
foreach ($tax_list[$typenow] as $txn_name => $txn_val) { |
| 92 |
if ($txn_val['required'] == 1) { |
| 93 |
$unique_vars['req_blt_tax'][$txn_name] = Array( |
| 94 |
'hier' => $txn_val['hier'], |
| 95 |
'type' => $txn_val['type'], |
| 96 |
'label' => $txn_val['label'] . ' ' . __('Taxonomy', 'request-a-quote') |
| 97 |
); |
| 98 |
} |
| 99 |
} |
| 100 |
} |
| 101 |
$rel_list = get_option('request_a_quote_rel_list'); |
| 102 |
if (!empty($rel_list)) { |
| 103 |
foreach ($rel_list as $rel_name => $rel_val) { |
| 104 |
if ($rel_val['required'] == 1) { |
| 105 |
$rel_name = preg_replace('/^rel_/', '', $rel_name); |
| 106 |
if (($rel_val['show'] == 'any' || $rel_val['show'] == 'from') && $rel_val['from'] == $typenow) { |
| 107 |
$unique_vars['req_blt_tax']['p2p-from-' . $rel_name] = Array( |
| 108 |
'type' => 'rel', |
| 109 |
'label' => $rel_val['from_title'] . ' ' . __('Relationship', 'request-a-quote') |
| 110 |
); |
| 111 |
} elseif ($rel_val['show'] == 'to' && $rel_val['to'] == $typenow) { |
| 112 |
$unique_vars['req_blt_tax']['p2p-to-' . $rel_name] = Array( |
| 113 |
'type' => 'rel', |
| 114 |
'label' => $rel_val['to_title'] . ' ' . __('Relationship', 'request-a-quote') |
| 115 |
); |
| 116 |
} |
| 117 |
} |
| 118 |
} |
| 119 |
} |
| 120 |
wp_enqueue_script('unique_validate-js', $dir_url . 'assets/js/unique_validate.js', array( |
| 121 |
'jquery', |
| 122 |
'jquery-validate' |
| 123 |
) , REQUEST_A_QUOTE_VERSION, true); |
| 124 |
wp_localize_script("unique_validate-js", 'unique_vars', $unique_vars); |
| 125 |
} elseif ($hook == 'edit.php') { |
| 126 |
wp_enqueue_style('request-a-quote-allview-css', REQUEST_A_QUOTE_PLUGIN_URL . '/assets/css/allview.css'); |
| 127 |
emd_lite_admin_enq_files('request_a_quote', $hook); |
| 128 |
} |
| 129 |
switch ($typenow) { |
| 130 |
case 'emd_quote': |
| 131 |
break; |
| 132 |
} |
| 133 |
} |
| 134 |
} |
| 135 |
add_action('wp_enqueue_scripts', 'request_a_quote_frontend_scripts'); |
| 136 |
/** |
| 137 |
* Enqueue style and js for each frontend entity pages and components |
| 138 |
* |
| 139 |
* @since WPAS 4.0 |
| 140 |
* |
| 141 |
*/ |
| 142 |
function request_a_quote_frontend_scripts() { |
| 143 |
$dir_url = REQUEST_A_QUOTE_PLUGIN_URL; |
| 144 |
wp_register_style('emd-pagination', $dir_url . 'assets/css/emd-pagination.min.css', '', REQUEST_A_QUOTE_VERSION); |
| 145 |
wp_register_style('request-a-quote-allview-css', $dir_url . '/assets/css/allview.css', '', REQUEST_A_QUOTE_VERSION); |
| 146 |
$grid_vars = Array(); |
| 147 |
$local_vars['ajax_url'] = admin_url('admin-ajax.php'); |
| 148 |
$wpas_shc_list = get_option('request_a_quote_shc_list'); |
| 149 |
wp_register_style('frontgen', $dir_url . 'assets/css/frontgen.css', '', REQUEST_A_QUOTE_VERSION); |
| 150 |
wp_register_script('emd-std-paging-js', $dir_url . 'assets/js/emd-std-paging.js', '', REQUEST_A_QUOTE_VERSION, true); |
| 151 |
do_action('emd_localize_scripts', 'request_a_quote'); |
| 152 |
if (is_single() && get_post_type() == 'emd_quote') { |
| 153 |
wp_enqueue_style('frontgen'); |
| 154 |
do_action('emd_enqueue_sat_view', 'request-a-quote', 'emd_quote', 'single'); |
| 155 |
wp_enqueue_style('request-a-quote-allview-css'); |
| 156 |
request_a_quote_enq_custom_css_js(); |
| 157 |
return; |
| 158 |
} |
| 159 |
} |
| 160 |
/** |
| 161 |
* Enqueue custom css if set in settings tool tab |
| 162 |
* |
| 163 |
* @since WPAS 5.3 |
| 164 |
* |
| 165 |
*/ |
| 166 |
function request_a_quote_enq_custom_css_js() { |
| 167 |
$tools = get_option('request_a_quote_tools'); |
| 168 |
if (!empty($tools['custom_css'])) { |
| 169 |
$url = home_url(); |
| 170 |
if (is_ssl()) { |
| 171 |
$url = home_url('/', 'https'); |
| 172 |
} |
| 173 |
wp_register_style('request-a-quote-custom', false); |
| 174 |
wp_enqueue_style('request-a-quote-custom'); |
| 175 |
wp_add_inline_style('request-a-quote-custom', $tools['custom_css']); |
| 176 |
} |
| 177 |
if (!empty($tools['custom_js'])) { |
| 178 |
$url = home_url(); |
| 179 |
if (is_ssl()) { |
| 180 |
$url = home_url('/', 'https'); |
| 181 |
} |
| 182 |
wp_register_script('request-a-quote-custom', false); |
| 183 |
wp_enqueue_script('request-a-quote-custom'); |
| 184 |
wp_add_inline_script('request-a-quote-custom', $tools['custom_js']); |
| 185 |
} |
| 186 |
} |
| 187 |
/** |
| 188 |
* Enqueue if allview css is not enqueued |
| 189 |
* |
| 190 |
* @since WPAS 4.5 |
| 191 |
* |
| 192 |
*/ |
| 193 |
function request_a_quote_enq_allview() { |
| 194 |
if (!wp_style_is('request-a-quote-allview-css', 'enqueued')) { |
| 195 |
wp_enqueue_style('request-a-quote-allview-css'); |
| 196 |
} |
| 197 |
} |
| 198 |
add_action('admin_print_footer_scripts', 'request_a_quote_edit_next_prev_button'); |
| 199 |
function request_a_quote_edit_next_prev_button() { |
| 200 |
$screen = get_current_screen(); |
| 201 |
$supported_types = array( |
| 202 |
'emd_quote' |
| 203 |
); |
| 204 |
if (strpos($screen->parent_file, 'edit.php') !== false && in_array($screen->id, $supported_types) && in_array($screen->post_type, $supported_types) && $screen->action != 'add') { |
| 205 |
$next_post = get_previous_post(); |
| 206 |
$previous_post = get_next_post(); |
| 207 |
$next_post_id = 0; |
| 208 |
if ($next_post && $next_post->ID) { |
| 209 |
$next_post_id = $next_post->ID; |
| 210 |
} |
| 211 |
$previous_post_id = 0; |
| 212 |
if ($previous_post && $previous_post->ID) { |
| 213 |
$previous_post_id = $previous_post->ID; |
| 214 |
} |
| 215 |
?> |
| 216 |
<script> |
| 217 |
if(window.jQuery) { |
| 218 |
jQuery(document).ready(function($) { |
| 219 |
$(window).load(function() { |
| 220 |
<?php if ($next_post_id) { ?> |
| 221 |
var is_next_post_available = true; |
| 222 |
<?php |
| 223 |
} else { ?> |
| 224 |
var is_next_post_available = false; |
| 225 |
<?php |
| 226 |
} |
| 227 |
if ($previous_post_id) { ?> |
| 228 |
var is_prev_post_available = true; |
| 229 |
<?php |
| 230 |
} else { ?> |
| 231 |
var is_prev_post_available = false; |
| 232 |
<?php |
| 233 |
} |
| 234 |
if ($screen->is_block_editor) { ?> |
| 235 |
if(is_prev_post_available && is_next_post_available){ |
| 236 |
$('.edit-post-header__settings').prepend('<a href="<?php echo get_edit_post_link($previous_post_id) ?>" class="prev-post components-button editor-post-preview is-button is-primary is-large">← <?php esc_html_e('Previous', 'request-a-quote') ?></a><a href="<?php echo get_edit_post_link($next_post_id) ?>" class="next-post components-button editor-post-preview is-button is-primary is-large"><?php esc_html_e('Next', 'request-a-quote') ?> →</a>'); |
| 237 |
}else if(is_prev_post_available && !is_next_post_available){ |
| 238 |
$('.edit-post-header__settings').prepend('<a href="<?php echo get_edit_post_link($previous_post_id) ?>" class="prev-post components-button editor-post-preview is-button is-primary is-large">← <?php esc_html_e('Previous', 'request-a-quote') ?></a>'); |
| 239 |
}else if(is_next_post_available && !is_prev_post_available){ |
| 240 |
$('.edit-post-header__settings').prepend('<a href="<?php echo get_edit_post_link($next_post_id) ?>" class="next-post components-button editor-post-preview is-button is-primary is-large"><?php esc_html_e('Next', 'request-a-quote') ?> →</a>'); |
| 241 |
} |
| 242 |
<?php |
| 243 |
} else { ?> |
| 244 |
if(is_prev_post_available && is_next_post_available){ |
| 245 |
$('.wrap .page-title-action').after('<a href="<?php echo get_edit_post_link($previous_post_id) ?>" class="prev-post page-title-action">← <?php esc_html_e('Previous', 'request-a-quote') ?></a><a href="<?php echo get_edit_post_link($next_post_id) ?>" class="next-post page-title-action"><?php esc_html_e('Next', 'request-a-quote') ?> →</a>'); |
| 246 |
}else if(is_prev_post_available && !is_next_post_available){ |
| 247 |
$('.wrap .page-title-action').after('<a href="<?php echo get_edit_post_link($previous_post_id) ?>" class="prev-post page-title-action">← <?php esc_html_e('Previous', 'request-a-quote') ?></a>'); |
| 248 |
}else if(is_next_post_available && !is_prev_post_available){ |
| 249 |
$('.wrap .page-title-action').after('<a href="<?php echo get_edit_post_link($next_post_id) ?>" class="next-post page-title-action"><?php esc_html_e('Next', 'request-a-quote') ?> →</a>'); |
| 250 |
} |
| 251 |
<?php |
| 252 |
} ?> |
| 253 |
}); |
| 254 |
}); |
| 255 |
} |
| 256 |
</script> |
| 257 |
<?php |
| 258 |
} |
| 259 |
} |