define('wpadtiddos_seconds_limit_GET',1); define('wpadtiddos_seconds_limit_XHR',3); class wp_antiddos { var $enable = true; var $hits_limit_GET = 3; // hits limit for GET requests (per wpadtiddos_seconds_limit_GET second) var $hits_limit_XHR = 3; // hits limit for XHR requests (per wpadtiddos_seconds_limit_XHR second) var $seconds_limit_POST = 3; // seconds limit for POST requests var $seconds_limit_AUTH = 3; // seconds limit for AUTH (Password) requests var $visitor; // status of visitor = raw|cool|warm|hot var $warm_level; // number of hits for last $seconds_limit seconds that cause visitor`s status turn to warm var $auto = true; // block visitors by AntiDDOS var $delay_time = 30; // seconds of delay of blocked visitors var $block_cnet = true; // block all C class net. var $cloudflare = true; // convert Cloudflare HTTP_CF_CONNECTING_IP to REMOTE_ADDR var $send_header = false; // send "WP_AntiDDOS: yes" header for debug purposes var $only_params_enabled = false; // Only Params feature enabled var $only_params = 's'; // the only GET/POST params that trigger checkup var $status, $error_msg; var $conn; // mysql connection var $hits = false; // actual hits number for current IP var $cookie = ''; // wpantiddos cookie value that prevents anti DDOS processing var $table_name = ''; var $pass_param = 'pwd'; // name of POST parameter that indentify Login (AUTH) request var $delay_message = 'Our server is currently overloaded, your request will be repeated automatically in %s seconds'; var $delay_message_auth = 'Our server is currently overloaded, your request will be repeated automatically in %s seconds'; public function __construct() { if (isset($GLOBALS['wp_antiddos_instance'])) return; else $GLOBALS['wp_antiddos_instance'] = &$this; if ($_SERVER['REMOTE_ADDR']=='127.0.0.1') return; $this->conn = mysqli_connect(DB_HOST,DB_USER,DB_PASSWORD); $ok = mysqli_select_db($this->conn,DB_NAME); if (!$ok) return false; $this->get_options(); // plugin disabled if (!$this->enable) return; // current request is admin's one if (isset($_COOKIE['wpantiddos']) && $_COOKIE['wpantiddos']==$this->cookie) return; if ($this->only_params_enabled) if (!$this->only_param_detected()) return; // detect request type and limits if ($this->xhr_request()) { if ($this->hits_limit_XHR=='ANY') return; $request_type = 'xhr'; $hits_limit = $this->hits_limit_XHR; $seconds_limit = wpadtiddos_seconds_limit_XHR; } elseif ($_POST && isset($_POST[$this->pass_param]) ) { if ($this->seconds_limit_AUTH=='ANY') return; $request_type = 'auth'; $seconds_limit = $this->seconds_limit_AUTH; $this->only_params .= ' '.$this->pass_param; $hits_limit = 1; } elseif ($_POST) { if ($this->seconds_limit_POST=='ANY') return; $request_type = 'post'; $hits_limit = 1; $seconds_limit = $this->seconds_limit_POST; } else { if ($this->hits_limit_GET=='ANY') return; $request_type = 'get'; $hits_limit = $this->hits_limit_GET; $seconds_limit = wpadtiddos_seconds_limit_GET; } if ($this->send_header) header("WP_AntiDDOS: yes"); if ($this->cloudflare) { if (isset($_SERVER['HTTP_CF_CONNECTING_IP'])) $_SERVER['REMOTE_ADDR'] = $_SERVER['HTTP_CF_CONNECTING_IP']; } $this->ip = $_SERVER['REMOTE_ADDR']; if ($this->block_cnet) $this->ip = substr($this->ip,0,strrpos($this->ip,'.')+1); $this->warm_level = ceil($hits_limit/2); try { $res = mysqli_query($this->conn,"SELECT count(*) kount FROM $this->table_name WHERE ip='".addslashes($this->ip)."' AND tstamp>".(time()-$seconds_limit)." AND type='$request_type'"); $row = mysqli_fetch_assoc($res); if (!$row) $this->error_msg = 'Error detected'; $this->hits = @$row['kount']+1; // consider current request too if ($this->hits==0) // if no hits from this IP $this->visitor = "new"; elseif ($this->hits>$hits_limit) $this->visitor = "hot"; elseif ($this->hits>=$this->warm_level) $this->visitor = "warm"; else $this->visitor = "cool"; // add current hit mysqli_query($this->conn,"INSERT INTO $this->table_name SET ip='$this->ip', type='$request_type', tstamp=".time()); // cleanup ip list $clear_time = max($this->delay_time,$seconds_limit); mysqli_query($this->conn,"DELETE FROM $this->table_name WHERE tstamp<".(time()-$clear_time)); } catch(Exception $e) { $this->error_msg = $e->getString(); $this->status = 'error'; mysqli_close($this->conn); return; } mysqli_close($this->conn); if (!empty($this->error_msg) ) { $this->status = 'error'; } if ($this->auto && $this->visitor=='hot') { header('HTTP/1.0 503 Service Unavailable'); header('Status: 503 Service Unavailable'); header("Retry-After: ".($this->delay_time+1)); // submit form first if POST request if (!$_POST) print "
"; else { $inputs = $this->array_to_fields($_POST); print ' '; } if ($request_type=='auth') printf("[vc_row container=\u00a0\u00bbtrue\u00a0\u00bb css=\u00a0\u00bb.vc_custom_1474001646517{padding-top: 0px !important;padding-bottom: 55px !important;}\u00a0\u00bb][vc_column]\t
PhotoACTIVE est le premier liquide antimicrobien \u00e0 s'appliquer comme un vernis sur tous types de surfaces et efficace contre le covid-19 plus d'un an<\/p>\t\t<\/div>\n\t<\/div>\n\t[vc_row_inner css=\u00a0\u00bb.vc_custom_1474026161945{padding-right: 15px !important;padding-left: 15px !important;}\u00a0\u00bb][vc_column_inner width=\u00a0\u00bb5\/12″][vc_gallery interval=\u00a0\u00bb3″ images=\u00a0\u00bb1126,1127″ img_size=\u00a0\u00bbfull\u00a0\u00bb][vc_single_image image=\u00a0\u00bb1128″ img_size=\u00a0\u00bbfull\u00a0\u00bb][\/vc_column_inner][vc_column_inner width=\u00a0\u00bb7\/12″][vc_column_text]<\/p>\n
Le premier liquide r\u00e9manent toutes surfaces anti covid 19<\/strong><\/p>\n Fort de son exp\u00e9rience dans le domaine de la d\u00e9sinfection permanente des surfaces, et apr\u00e8s des palettes enti\u00e8res de films adh\u00e9sifs antimicrobiens install\u00e9s dans toute la France, Virus Communication a d\u00e9velopp\u00e9 son propre produit antimicrobien et certifi\u00e9 anti covid 19 qui r\u00e9sout les contraintes li\u00e9s \u00e0 l’installation de ce type de produits.<\/p>\n C’est une nouvelle gamme de produits d\u00e9sinfectants r\u00e9manents \u00e0 partir d\u2019une technologie brevet\u00e9e : PhotoACTIVE Ag<\/a> se pr\u00e9sente sous la forme d’un liquide, qui en s\u00e9chant \u00e0 temp\u00e9rature ambiante, se transforme en un rev\u00eatement antimicrobien permanent (virucide, bact\u00e9ricide et fongicide) avec une tenue dans le temps de plus d’un an. T\u00e9l\u00e9chargez la brochure ci dessous<\/strong> pour d\u00e9couvrir notre produit, son fonctionnement, et les applications possibles :<\/strong><\/p>\nNouveaut\u00e9 2021<\/strong><\/h3>\n
\nPhotoACTIVE Ag est le seul produit du march\u00e9 \u00e0 avoir \u00e9t\u00e9 test\u00e9 sp\u00e9cifiquement contre le SARS-CoV-2 responsable de la Covid-19<\/strong>, selon la norme ISO 14476<\/strong>, la seule recommand\u00e9e par l’Institut Pasteur dans la lutte contre les coronavirus.<\/p>\n