PluginProbe ʕ •ᴥ•ʔ
SiteGuard WP Plugin / 1.2.3
SiteGuard WP Plugin v1.2.3
1.8.7 1.8.6 1.8.6-beta1 1.8.6-beta2 1.8.4 1.8.5 1.8.3 1.8.2 1.8.1 trunk 1.0.0 1.0.1 1.0.2 1.0.3 1.0.4 1.0.5 1.0.6 1.1.0 1.1.1 1.1.2 1.2.0 1.2.1 1.2.2 1.2.3 1.4.3 1.5.0 1.5.1 1.5.2 1.6.0 1.6.1 1.7.0 1.7.1 1.7.10 1.7.11 1.7.12 1.7.2 1.7.3 1.7.4 1.7.5 1.7.6 1.7.7 1.7.8 1.7.9 1.8.0 1.8.0-beta1 1.8.0-beta2 1.8.0-beta3 1.8.0-beta4
siteguard / admin / siteguard-menu-captcha.php
siteguard / admin Last commit date
siteguard-login-history-table.php 11 years ago siteguard-menu-admin-filter.php 11 years ago siteguard-menu-captcha.php 11 years ago siteguard-menu-dashboard.php 11 years ago siteguard-menu-disable-pingback.php 11 years ago siteguard-menu-fail-once.php 11 years ago siteguard-menu-init.php 11 years ago siteguard-menu-login-alert.php 11 years ago siteguard-menu-login-lock.php 11 years ago siteguard-menu-rename-login.php 11 years ago siteguard-menu-same-error.php 11 years ago siteguard-menu-updates-notify.php 11 years ago siteguard-menu-waf-tuning-support.php 11 years ago siteguard-waf-exclude-rule-table.php 11 years ago
siteguard-menu-captcha.php
174 lines
1 <?php
2
3 class SiteGuard_Menu_CAPTCHA extends SiteGuard_Base {
4 function __construct( ) {
5 $this->render_page( );
6 }
7 function is_captcha_switch_value( $value ) {
8 if ( '0' == $value || '1' == $value || '2' == $value ) {
9 return true;
10 }
11 return false;
12 }
13 function render_page( ) {
14 global $config, $captcha;
15
16 $opt_name_enable = 'captcha_enable';
17 $opt_name_login = 'captcha_login';
18 $opt_name_comment = 'captcha_comment';
19 $opt_name_lostpassword = 'captcha_lostpasswd';
20 $opt_name_registuser = 'captcha_registuser';
21
22 $opt_val_enable = $config->get( $opt_name_enable );
23 $opt_val_login = $config->get( $opt_name_login );
24 $opt_val_comment = $config->get( $opt_name_comment );
25 $opt_val_lostpassword = $config->get( $opt_name_lostpassword );
26 $opt_val_registuser = $config->get( $opt_name_registuser );
27 if ( isset( $_POST['update'] ) && check_admin_referer( 'siteguard-menu-captcha-submit' ) ) {
28 $error = false;
29 $errors = check_multisite( );
30 if ( is_wp_error( $errors ) ) {
31 echo '<div class="error settings-error"><p><strong>';
32 esc_html_e( $errors->get_error_message( ), 'siteguard' );
33 echo '</strong></p></div>';
34 $error = true;
35 }
36 if ( false == $error && '1' == $_POST[ $opt_name_enable ] ) {
37 $ret = $captcha->check_requirements( );
38 if ( is_wp_error( $ret ) ) {
39 echo '<div class="error settings-error"><p><strong>' . $ret->get_error_message( ) . '</strong></p></div>';
40 $error = true;
41 $config->set( $opt_name_enable, '0' );
42 $config->update( );
43 }
44 }
45 if ( ( false == $error )
46 && ( ( false == $this->is_switch_value( $_POST[ $opt_name_enable ] ) )
47 || ( false == $this->is_captcha_switch_value( $_POST[ $opt_name_login ] ) )
48 || ( false == $this->is_captcha_switch_value( $_POST[ $opt_name_comment ] ) )
49 || ( false == $this->is_captcha_switch_value( $_POST[ $opt_name_lostpassword ] ) )
50 || ( false == $this->is_captcha_switch_value( $_POST[ $opt_name_registuser ] ) ) ) ) {
51 echo '<div class="error settings-error"><p><strong>';
52 esc_html_e( 'ERROR: Invalid input value.', 'siteguard' );
53 echo '</strong></p></div>';
54 $error = true;
55 }
56 if ( false == $error ) {
57 $opt_val_enable = $_POST[ $opt_name_enable ];
58 $opt_val_login = $_POST[ $opt_name_login ];
59 $opt_val_comment = $_POST[ $opt_name_comment ];
60 $opt_val_lostpassword = $_POST[ $opt_name_lostpassword ];
61 $opt_val_registuser = $_POST[ $opt_name_registuser ];
62 $config->set( $opt_name_enable, $opt_val_enable );
63 $config->set( $opt_name_login, $opt_val_login );
64 $config->set( $opt_name_comment, $opt_val_comment );
65 $config->set( $opt_name_lostpassword, $opt_val_lostpassword );
66 $config->set( $opt_name_registuser, $opt_val_registuser );
67 $config->update( );
68 ?>
69 <div class="updated"><p><strong><?php esc_html_e( 'Options saved.', 'siteguard' ); ?></strong></p></div>
70 <?php
71 }
72 }
73
74 echo '<div class="wrap">';
75 echo '<img src="' . SITEGUARD_URL_PATH . 'images/sg_wp_plugin_logo_40.png" alt="SiteGuard Logo" />';
76 echo '<h2>' . esc_html__( 'CAPTCHA', 'siteguard' ) . '</h2>';
77 echo '<div class="siteguard-description">'
78 . esc_html__( 'You can find docs about this function on ', 'siteguard' )
79 . '<a href="' . esc_html__( 'http://www.jp-secure.com/cont/products/siteguard_wp_plugin/captcha_en.html', 'siteguard' )
80 . '" target="_blank">'
81 . esc_html__( 'here', 'siteguard' )
82 . '</a>'
83 . esc_html__( '.', 'siteguard' )
84 . '</div>';
85 ?>
86 <form name="form1" method="post" action="">
87 <table class="form-table">
88 <tr>
89 <th scope="row" colspan="2">
90 <ul class="siteguard-radios">
91 <li>
92 <input type="radio" name="<?php echo $opt_name_enable ?>" id="<?php echo $opt_name_enable.'_on' ?>" value="1" <?php echo ( '1' == $opt_val_enable ? 'checked' : '') ?> >
93 <label for="<?php echo $opt_name_enable.'_on' ?>"><?php esc_html_e( 'ON', 'siteguard' ) ?></label>
94 </li><li>
95 <input type="radio" name="<?php echo $opt_name_enable ?>" id="<?php echo $opt_name_enable.'_off' ?>" value="0" <?php echo ( '0' == $opt_val_enable ? 'checked' : '') ?> >
96 <label for="<?php echo $opt_name_enable.'_off' ?>"><?php esc_html_e( 'OFF', 'siteguard' ) ?></label>
97 </li>
98 </ul>
99 <?php
100 $error = $captcha->check_requirements( );
101 if ( is_wp_error( $error ) ) {
102 echo '<p class="description">';
103 echo $error->get_error_message( );
104 echo '</p>';
105 }
106 ?>
107 </th>
108 </tr><tr>
109 <th scope="row"><?php esc_html_e( 'Login page', 'siteguard' ); ?></th>
110 <td>
111 <input type="radio" name="<?php echo $opt_name_login ?>" id="<?php echo $opt_name_login.'_jp' ?>" value="1" <?php echo ( '1' == $opt_val_login ? 'checked' : '') ?> >
112 <label for="<?php echo $opt_name_login.'_jp' ?>"><?php esc_html_e( 'Hiragana (Japanese)', 'siteguard' ) ?></label>
113 <br />
114 <input type="radio" name="<?php echo $opt_name_login ?>" id="<?php echo $opt_name_login.'_en' ?>" value="2" <?php echo ( '2' == $opt_val_login ? 'checked' : '') ?> >
115 <label for="<?php echo $opt_name_login.'_en' ?>"><?php esc_html_e( 'Alphanumeric', 'siteguard' ) ?></label>
116 <br />
117 <input type="radio" name="<?php echo $opt_name_login ?>" id="<?php echo $opt_name_login.'_off' ?>" value="0" <?php echo ( '0' == $opt_val_login ? 'checked' : '') ?> >
118 <label for="<?php echo $opt_name_login.'_off' ?>"><?php esc_html_e( 'Disable', 'siteguard' ) ?></label>
119 </td>
120 </tr><tr>
121 <th scope="row"><?php esc_html_e( 'Comment page', 'siteguard' ); ?></th>
122 <td>
123 <input type="radio" name="<?php echo $opt_name_comment ?>" id="<?php echo $opt_name_comment.'_jp' ?>" value="1" <?php echo ( '1' == $opt_val_comment ? 'checked' : '') ?> >
124 <label for="<?php echo $opt_name_comment.'_jp' ?>"><?php esc_html_e( 'Hiragana (Japanese)', 'siteguard' ) ?></label>
125 <br />
126 <input type="radio" name="<?php echo $opt_name_comment ?>" id="<?php echo $opt_name_comment.'_en' ?>" value="2" <?php echo ( '2' == $opt_val_comment ? 'checked' : '') ?> >
127 <label for="<?php echo $opt_name_comment.'_en' ?>"><?php esc_html_e( 'Alphanumeric', 'siteguard' ) ?></label>
128 <br />
129 <input type="radio" name="<?php echo $opt_name_comment ?>" id="<?php echo $opt_name_comment.'_off' ?>" value="0" <?php echo ( '0' == $opt_val_comment ? 'checked' : '') ?> >
130 <label for="<?php echo $opt_name_comment.'_off' ?>"><?php esc_html_e( 'Disable', 'siteguard' ) ?></label>
131 </td>
132 </tr><tr>
133 <th scope="row"><?php esc_html_e( 'Lost password page', 'siteguard' ); ?></th>
134 <td>
135 <input type="radio" name="<?php echo $opt_name_lostpassword ?>" id="<?php echo $opt_name_lostpassword.'_jp' ?>" value="1" <?php echo ( '1' == $opt_val_lostpassword ? 'checked' : '') ?> >
136 <label for="<?php echo $opt_name_lostpassword.'_jp' ?>"><?php esc_html_e( 'Hiragana (Japanese)', 'siteguard' ) ?></label>
137 <br />
138 <input type="radio" name="<?php echo $opt_name_lostpassword ?>" id="<?php echo $opt_name_lostpassword.'_en' ?>" value="2" <?php echo ( '2' == $opt_val_lostpassword ? 'checked' : '') ?> >
139 <label for="<?php echo $opt_name_lostpassword.'_en' ?>"><?php esc_html_e( 'Alphanumeric', 'siteguard' ) ?></label>
140 <br />
141 <input type="radio" name="<?php echo $opt_name_lostpassword ?>" id="<?php echo $opt_name_lostpassword.'_off' ?>" value="0" <?php echo ( '0' == $opt_val_lostpassword ? 'checked' : '') ?> >
142 <label for="<?php echo $opt_name_lostpassword.'_off' ?>"><?php esc_html_e( 'Disable', 'siteguard' ) ?></label>
143 </td>
144 </tr><tr>
145 <th scope="row"><?php esc_html_e( 'Registration user page', 'siteguard' ); ?></th>
146 <td>
147 <input type="radio" name="<?php echo $opt_name_registuser ?>" id="<?php echo $opt_name_registuser.'_jp' ?>" value="1" <?php echo ( '1' == $opt_val_registuser ? 'checked' : '') ?> >
148 <label for="<?php echo $opt_name_registuser.'_jp' ?>"><?php esc_html_e( 'Hiragana (Japanese)', 'siteguard' ) ?></label>
149 <br />
150 <input type="radio" name="<?php echo $opt_name_registuser ?>" id="<?php echo $opt_name_registuser.'_en' ?>" value="2" <?php echo ( '2' == $opt_val_registuser ? 'checked' : '') ?> >
151 <label for="<?php echo $opt_name_registuser.'_en' ?>"><?php esc_html_e( 'Alphanumeric', 'siteguard' ) ?></label>
152 <br />
153 <input type="radio" name="<?php echo $opt_name_registuser ?>" id="<?php echo $opt_name_registuser.'_off' ?>" value="0" <?php echo ( '0' == $opt_val_registuser ? 'checked' : '') ?> >
154 <label for="<?php echo $opt_name_registuser.'_off' ?>"><?php esc_html_e( 'Disable', 'siteguard' ) ?></label>
155 </td>
156 </tr>
157 </table>
158 <div class="siteguard-description">
159 <?php esc_html_e( 'It is the function to decrease the vulnerability against an illegal login attempt attack such as a brute force attack or a password list attack, or to receive less comment spam. For the character of CAPTCHA, hiragana and alphanumeric characters can be selected.', 'siteguard' ) ?>
160 </div>
161 <input type="hidden" name="update" value="Y">
162 <hr />
163
164 <?php
165 wp_nonce_field( 'siteguard-menu-captcha-submit' );
166 submit_button();
167 ?>
168 </form>
169 </div>
170 <?php
171 }
172 }
173 ?>
174