-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathsanitize-callbacks.php
84 lines (76 loc) · 1.87 KB
/
sanitize-callbacks.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
<?php
/**
*
* @param variable $value
* @param Voce_Setting $setting
* @param array $args
* @return variable
*/
function vs_sanitize_checkbox($value, $setting, $args) {
return !is_null( $value );
}
/**
*
* @param variable $value
* @param Voce_Setting $setting
* @param array $args
* @return variable
*/
function vs_sanitize_text($value, $setting, $args) {
return ( $args['display_callback'] === 'vs_display_textarea' ) ? strip_tags( trim( $value ) ) : sanitize_text_field( $value );
}
/**
*
* @param variable $value
* @param Voce_Setting $setting
* @param array $args
* @return variable
*/
function vs_sanitize_url($value, $setting, $args) {
return esc_url_raw( sanitize_text_field( $value ) );
}
/**
*
* @param variable $value
* @param Voce_Setting $setting
* @param array $args
* @return variable
*/
function vs_sanitize_email($value, $setting, $args) {
$value = sanitize_email( sanitize_text_field( $value ) );
if( !is_email( $value ) ) {
$setting->add_error( sprintf( 'The %s is not a valid email address', $setting->title ) );
return null;
}
return $value;
}
/**
*
* @param variable $value
* @param Voce_Setting $setting
* @param array $args
* @return variable
*/
function vs_sanitize_dropdown($value, $setting, $args) {
$value = strip_tags( trim( $value ) );
if( ! in_array( $value, array_keys( $args['options'] ) ) )
return false;
return $value;
}
/**
*
* @param variable $value
* @return variable
*/
function vs_sanitize_int( $value ) {
return intval( $value );
}
/* Deprecated Functions */
function vs_santize_checkbox($value, $setting, $args) {
_deprecated_function( __FUNCTION__, '0.2', 'vs_sanitize_checkbox()' );
return vs_sanitize_checkbox($value, $setting, $args);
}
function vs_santize_text($value, $setting, $args) {
_deprecated_function( __FUNCTION__, '0.2', 'vs_sanitize_text()' );
return vs_sanitize_text($value, $setting, $args);
}