コード例 #1
0
ファイル: Ajax.php プロジェクト: adrianjonmiller/vadsupplies
 /**
  * Uses wp_ajax_(action).
  *
  * AJAX function to block a user's IP address.
  *
  * @since 2.0.0
  *
  * @link http://codex.wordpress.org/Plugin_API/Action_Reference/wp_ajax_(action)
  */
 public function wp_ajax_block_ip()
 {
     check_ajax_referer('zero-spam', 'security');
     if (!$_POST['zerospam-type'] == 'temporary') {
         $start_date = false;
         $end_date = false;
     } else {
         $start_date = date('Y-m-d G:i:s', strtotime($_POST['zerospam-startdate-year'] . '-' . $_POST['zerospam-startdate-month'] . '-' . $_POST['zerospam-startdate-day']));
         $end_date = date('Y-m-d G:i:s', strtotime($_POST['zerospam-enddate-year'] . '-' . $_POST['zerospam-enddate-month'] . '-' . $_POST['zerospam-enddate-day']));
     }
     $reason = isset($_POST['zerospam-reason']) ? $_POST['zerospam-reason'] : NULL;
     // Add/update the blocked IP.
     zerospam_block_ip(array('ip' => $_POST['zerospam-ip'], 'type' => $_POST['zerospam-type'], 'start_date' => $start_date, 'end_date' => $end_date, 'reason' => $reason));
     die;
 }
コード例 #2
0
function zerospam_log_spam($key, $url = false)
{
    global $wpdb;
    $settings = zerospam_settings();
    $ip = zerospam_get_ip();
    $url = $url ? $url : zerospam_get_url();
    $table_name = $wpdb->prefix . 'zerospam_log';
    switch ($key) {
        case 'registration':
            $key = 1;
            break;
        case 'comment':
            $key = 2;
            break;
        case 'cf7':
            $key = 3;
            break;
        case 'gf':
            $key = 4;
            break;
        case 'buddypress-registration':
            $key = 5;
            break;
    }
    $wpdb->insert($table_name, array('type' => $key, 'ip' => $ip, 'page' => $url), array('%s', '%s', '%s'));
    if (!empty($settings['auto_block']) && $settings['auto_block']) {
        zerospam_block_ip(array('ip' => $ip, 'type' => 'permanent', 'reason' => __('Auto block triggered on ', 'zerospam') . date('r') . '.'));
    }
}