PluginProbe ʕ •ᴥ•ʔ
Independent Analytics – WordPress Analytics Plugin / 2.15.1
Independent Analytics – WordPress Analytics Plugin v2.15.1
2.15.2 2.15.1 2.15.0 2.14.10 trunk 1.1 1.10 1.10.1 1.11 1.12 1.13 1.14 1.15 1.16 1.17 1.17.1 1.17.2 1.17.3 1.17.4 1.18 1.18.1 1.19.0 1.19.1 1.2 1.20.0 1.21.0 1.22.0 1.22.1 1.23.0 1.23.1 1.24.0 1.24.1 1.25.0 1.25.1 1.26.0 1.27.0 1.28.0 1.28.1 1.28.2 1.28.3 1.29.0 1.3 1.30.0 1.30.1 1.4 1.5 1.6 1.7 1.8 1.9 2.0.0 2.0.1 2.1.4 2.1.5 2.1.6 2.10.0 2.10.1 2.10.2 2.10.3 2.10.4 2.11.0 2.11.1 2.11.10 2.11.2 2.11.3 2.11.4 2.11.5 2.11.6 2.11.7 2.11.8 2.11.9 2.12.0 2.12.1 2.12.2 2.13.1 2.13.2 2.13.5 2.13.6 2.14.0 2.14.1 2.14.2 2.14.4 2.14.6 2.14.7 2.14.8 2.14.9 2.2.0 2.2.1 2.3.1 2.3.2 2.4.2 2.4.3 2.5.0 2.5.1 2.6.0 2.6.1 2.6.2 2.6.3 2.6.4 2.7.0 2.7.1 2.7.2 2.7.3 2.8.2 2.8.3 2.8.4 2.8.5 2.8.6 2.8.7 2.8.8 2.8.9 2.9.2 2.9.3 2.9.4 2.9.5 2.9.6 2.9.7
independent-analytics / IAWP / Utils / Security.php
independent-analytics / IAWP / Utils Last commit date
BladeOne.php 2 years ago CSV.php 9 months ago Calculations.php 2 weeks ago Currency.php 8 months ago Device.php 1 year ago Device_Cache.php 2 years ago Dir.php 6 months ago Format.php 5 months ago Link_Validator.php 6 months ago Number_Formatter.php 5 months ago Obj.php 6 months ago Request.php 6 days ago Salt.php 2 years ago Security.php 6 days ago Server.php 2 years ago Singleton.php 2 years ago Timezone.php 5 months ago URL.php 2 months ago WP_Async_Request.php 1 year ago
Security.php
60 lines
1 <?php
2
3 namespace IAWP\Utils;
4
5 /** @internal */
6 class Security
7 {
8 public static function json_encode($object)
9 {
10 return \json_encode($object, \JSON_HEX_QUOT | \JSON_HEX_TAG | \JSON_HEX_AMP | \JSON_HEX_APOS);
11 }
12 public static function string($string)
13 {
14 return \trim(\sanitize_text_field($string));
15 }
16 public static function array($array)
17 {
18 if (\is_string($array)) {
19 return self::string($array);
20 }
21 if (\is_array($array)) {
22 foreach ($array as $key => $value) {
23 $sanitized_key = \is_string($key) ? self::string($key) : $key;
24 // Sanitize key if it's a string
25 $array[$sanitized_key] = self::array($value);
26 // Recursively sanitize value
27 if ($sanitized_key !== $key) {
28 unset($array[$key]);
29 // Remove old key if changed
30 }
31 }
32 }
33 return $array;
34 }
35 public static function form($html)
36 {
37 return \wp_kses($html, ['div' => ['class' => [], 'style' => []], 'select' => ['class' => []], 'option' => ['class' => [], 'value' => [], 'data-datatype' => []], 'input' => ['class' => [], 'type' => [], 'data-css' => [], 'data-dow' => [], 'data-format' => [], 'readonly'], 'button' => ['class' => []], 'span' => ['class' => [], 'style' => []]]);
38 }
39 public static function svg($html)
40 {
41 return \wp_kses($html, ['svg' => ['height' => [], 'width' => [], 'fill' => [], 'viewbox' => [], 'style' => []], 'path' => ['d' => []]]);
42 }
43 public static function table_cell_content($html)
44 {
45 return \wp_kses($html, ['span' => ['class' => []], 'a' => ['href' => [], 'target' => [], 'class' => []], 'img' => ['alt' => [], 'src' => [], 'class' => [], 'height' => [], 'width' => [], 'loading' => []], 'div' => ['class' => []]]);
46 }
47 public static function user_journey_event_contents($html)
48 {
49 return \wp_kses($html, ['p' => [], 'a' => ['href' => [], 'target' => []], 'span' => ['class' => []]]);
50 }
51 public static function strong_tags_only($html)
52 {
53 return \wp_kses($html, ['strong' => []]);
54 }
55 public static function span_tags_only($html)
56 {
57 return \wp_kses($html, ['span' => ['class' => []]]);
58 }
59 }
60