PluginProbe ʕ •ᴥ•ʔ
Contact Form 7 / 6.0.6
Contact Form 7 v6.0.6
6.1.6 5.0.2 5.0.3 5.0.4 5.0.5 5.1 5.1.1 5.1.2 5.1.3 5.1.4 5.1.5 5.1.6 5.1.7 5.1.8 5.1.9 5.2 5.2.1 5.2.2 5.3 5.3.1 5.3.2 5.4 5.4.1 5.4.2 5.5 5.5.1 5.5.2 5.5.3 5.5.4 5.5.5 5.5.6 5.5.6.1 5.6 5.6.1 5.6.2 5.6.3 5.6.4 5.7 5.7.1 5.7.2 5.7.3 5.7.4 5.7.5 5.7.5.1 5.7.6 5.7.7 5.8 5.8.1 5.8.2 5.8.3 5.8.4 5.8.5 5.8.6 5.8.7 5.9 5.9.2 5.9.3 5.9.4 5.9.5 5.9.6 5.9.7 5.9.8 6.0 6.0.1 6.0.2 6.0.3 6.0.4 6.0.5 6.0.6 6.1 6.1.1 6.1.2 6.1.3 6.1.4 6.1.5 trunk 1.1 1.10 1.10.0.1 1.10.1 1.2 1.3 1.3.1 1.3.2 1.4 1.4.1 1.4.2 1.4.3 1.4.4 1.5 1.6 1.6.1 1.7 1.7.1 1.7.2 1.7.4 1.7.5 1.7.6 1.7.6.1 1.7.7 1.7.7.1 1.7.8 1.8 1.8.0.1 1.8.0.2 1.8.0.3 1.8.0.4 1.8.1 1.8.1.1 1.9 1.9.1 1.9.2 1.9.2.1 1.9.2.2 1.9.3 1.9.4 1.9.5 1.9.5.1 2.0 2.0-beta 2.0.1 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 2.1 2.1.1 2.1.2 2.2 2.2.1 2.3 2.3.1 2.4 2.4.1 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 3.0 3.0-beta 3.0.1 3.0.2 3.0.2.1 3.1 3.1.1 3.1.2 3.2 3.2.1 3.3 3.3.1 3.3.2 3.3.3 3.4 3.4.1 3.4.2 3.5 3.5.1 3.5.2 3.5.3 3.5.4 3.6 3.7 3.7.1 3.7.2 3.8 3.8.1 3.9 3.9-beta 3.9.1 3.9.2 3.9.3 4.0 4.0.1 4.0.2 4.0.3 4.1 4.1-beta 4.1.1 4.1.2 4.2 4.2-beta 4.2.1 4.2.2 4.3 4.3.1 4.4 4.4.1 4.4.2 4.5 4.5.1 4.6 4.6.1 4.7 4.8 4.8.1 4.9 4.9.1 4.9.2 5.0 5.0.1
contact-form-7 / modules / count.php
contact-form-7 / modules Last commit date
akismet 1 year ago constant-contact 1 year ago recaptcha 1 year ago sendinblue 1 year ago stripe 1 year ago acceptance.php 1 year ago checkbox.php 1 year ago count.php 1 year ago date.php 1 year ago disallowed-list.php 1 year ago doi-helper.php 4 years ago file.php 1 year ago flamingo.php 1 year ago hidden.php 7 years ago listo.php 2 years ago number.php 1 year ago quiz.php 1 year ago really-simple-captcha.php 1 year ago reflection.php 3 years ago response.php 6 years ago select.php 1 year ago submit.php 1 year ago text.php 1 year ago textarea.php 1 year ago
count.php
70 lines
1 <?php
2 /**
3 ** A base module for [count], Twitter-like character count
4 **/
5
6 /* form_tag handler */
7
8 add_action( 'wpcf7_init', 'wpcf7_add_form_tag_count', 10, 0 );
9
10 function wpcf7_add_form_tag_count() {
11 wpcf7_add_form_tag( 'count',
12 'wpcf7_count_form_tag_handler',
13 array(
14 'name-attr' => true,
15 'zero-controls-container' => true,
16 'not-for-mail' => true,
17 )
18 );
19 }
20
21 function wpcf7_count_form_tag_handler( $tag ) {
22 if ( empty( $tag->name ) ) {
23 return '';
24 }
25
26 $targets = wpcf7_scan_form_tags( array( 'name' => $tag->name ) );
27 $maxlength = $minlength = null;
28
29 while ( $targets ) {
30 $target = array_shift( $targets );
31
32 if ( 'count' !== $target->type ) {
33 $maxlength = $target->get_maxlength_option();
34 $minlength = $target->get_minlength_option();
35 break;
36 }
37 }
38
39 if ( $maxlength and $minlength
40 and $maxlength < $minlength ) {
41 $maxlength = $minlength = null;
42 }
43
44 if ( $tag->has_option( 'down' ) ) {
45 $value = (int) $maxlength;
46 $class = 'wpcf7-character-count down';
47 } else {
48 $value = '0';
49 $class = 'wpcf7-character-count up';
50 }
51
52 $atts = array();
53
54 $atts['id'] = $tag->get_id_option();
55 $atts['class'] = $tag->get_class_option( $class );
56 $atts['data-target-name'] = $tag->name;
57 $atts['data-starting-value'] = $value;
58 $atts['data-current-value'] = $value;
59 $atts['data-maximum-value'] = $maxlength;
60 $atts['data-minimum-value'] = $minlength;
61
62 $html = sprintf(
63 '<span %1$s>%2$s</span>',
64 wpcf7_format_atts( $atts ),
65 $value
66 );
67
68 return $html;
69 }
70