'.$script.'';
}
} elseif (!empty($params['defer']) || !empty($params['async']) || !empty($params['needTagScript'])) {
// phpcs:ignore WordPress.WP.EnqueuedResources.NonEnqueuedScript -- After WordPress hook.
echo '';
} else {
wp_enqueue_script(
$handle,
$script,
$params['dependencies'],
'11.0.1',
[
'in_footer' => false,
]
);
}
return $handle;
}
function acym_addStyle(bool $raw, string $style): void
{
// TODO: refactor style insertion to use CMS dedicated methods
if ($raw) {
// phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- Raw CSS content passed by caller.
echo '';
} else {
// phpcs:ignore WordPress.WP.EnqueuedResources.NonEnqueuedStylesheet -- To refactor.
echo '';
}
}
function acym_loadCmsScripts(): void
{
$toggleController = acym_isAdmin() ? 'toggle' : 'fronttoggle';
acym_addScript(
true,
'
var ACYM_AJAX_URL = "'.admin_url('admin-ajax.php').'?action='.ACYM_COMPONENT.'_router&'.acym_noTemplate().'&'.acym_getFormToken().'&nocache='.time().'";
var ACYM_TOGGLE_URL = ACYM_AJAX_URL + "&page='.ACYM_COMPONENT.'_toggle&ctrl='.$toggleController.'";
var ACYM_IS_ADMIN = '.(acym_isAdmin() ? 'true' : 'false').';
if("undefined" === typeof icl_ajxloaderimg_src) var icl_ajxloaderimg_src = "";'
);
// Without this line the image insertion and dtexts button doesn't work
wp_enqueue_media();
wp_enqueue_script('jquery');
wp_enqueue_script('jquery-ui-draggable');
wp_enqueue_script('jquery-ui-droppable');
wp_enqueue_script('jquery-ui-sortable');
wp_enqueue_script('jquery-effects-slide');
}
function acym_redirect(string $url, string $msg = '', string $msgType = 'message', bool $safe = true): void
{
if (acym_isAdmin() && substr($url, 0, 4) != 'http' && substr($url, 0, 4) != 'www.') {
$url = acym_addPageParam($url);
}
if (empty($url)) {
$url = acym_rootURI();
}
$wordpressOutput = @ob_get_clean();
if (headers_sent()) {
// phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- Already escaped output from WordPress itself.
echo $wordpressOutput;
acym_addScript(true, 'window.location.href = '.wp_json_encode($url).';');
} else {
if ($safe) {
wp_safe_redirect($url);
} else {
// phpcs:ignore WordPress.Security.SafeRedirect.wp_redirect_wp_redirect -- mainly for email links after tracking is applied
wp_redirect($url);
}
}
exit;
}