one-click-accessibility/classes/utils.php
VasylD 9c9536cbeb
[APP-2130] add elementor one (#433)
* [APP-0000] add elementor one

* [APP-0000] add elementor one

* [APP-2207] add dashboard widget

* [APP-2207] add dashboard widget

* [APP-2207] add dashboard widget

* [APP-2207] add dashboard widget

* [APP-0000] Add slug to the connect config

* [APP-0000] Update connect config

* [APP-0000] Update connect config

* [APP-0000] Update connect config

* [APP-0000] Update connect config

* [APP-0000] Update connect config

* Hide sidebar footer if Elementor One is connected

* fix: import errors on opening the scanner

* [APP-0000] Update connect config

* Update modules/settings/module.php

Co-authored-by: Rami Yushuvaev <92088692+rami-elementor@users.noreply.github.com>

* [APP-2270] Top bar implementation (#458)

* [APP-2270] Top bar implementation

* Update top bar title

* Update packages

* fix: env for top bar

* update: ally menu location

* Fix pointer

* Update

* Update

* Update

* Update

* Update

* Fix design saving

* Add missing pro icon to sidebar menu

* Sidebar icons sizes

* Fix link to "Manage subscription"

* fix: header name

* Update logo icon in the sidebar

* Remove logos from modal/dialog headers

* Update button colors

* Make the "Get started" modal dismissible

* Update crown icon

* Update

* Role attribute

* Update logo icon

* Update list item padding

* [APP-0000] Update connect config

* [ACD-7909] Enable Pro features on One

* Update menu order

* [ACD-7909] Enable Pro features on One

* [ACD-7909] Enable Pro features on One

* Hide pointers from Elementor One users

* [ACD-7909] Enable Pro features on One

* fix: don't show notices in some cases (#466)

* [ACD-7794] Fix subitem color and spacing, info and pro icon size (#464)

* fix: subitem color and spacing, info and pro icon size

* chore: update elementor-one-assets package to 0.4.16

* fix: PLG margin and button style issue (#463)

---------

Co-authored-by: Nirbhay Singh <nirbhayr@elementor.com>
Co-authored-by: vasyldinets <vasyld@elementor.red>
Co-authored-by: Nirbhay Singh <121793120+nirbhayel@users.noreply.github.com>

---------

Co-authored-by: Rami Yushuvaev <ramiy@elementor.com>
Co-authored-by: Nirbhay Singh <nirbhayr@elementor.com>
Co-authored-by: Rami Yushuvaev <92088692+rami-elementor@users.noreply.github.com>
Co-authored-by: Nirbhay Singh <121793120+nirbhayel@users.noreply.github.com>
2026-01-12 12:26:38 +01:00

45 lines
1 KiB
PHP

<?php
namespace EA11y\Classes;
use EA11y\Classes\Services\Client;
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly.
}
class Utils {
public static function get_api_client(): ?Client {
return Client::get_instance();
}
public static function is_plugin_settings_page(): bool {
$current_screen = get_current_screen();
return str_contains( $current_screen->id, 'elementor_page_accessibility-settings' );
}
public static function is_elementor_installed() :bool {
$file_path = 'elementor/elementor.php';
$installed_plugins = get_plugins();
return isset( $installed_plugins[ $file_path ] );
}
public static function user_is_admin(): bool {
return current_user_can( 'manage_options' );
}
public static function sanitize_object( $input ) {
// Convert an object to array if needed
if ( is_object( $input ) ) {
$input = (array) $input;
}
// Recursively sanitize
array_walk_recursive($input, function ( &$value ) {
if ( is_string( $value ) ) {
$value = sanitize_text_field( $value );
}
});
return $input;
}
}