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_1474014547186{padding-top: 90px !important;padding-bottom: 20px !important;}\u00a0\u00bb][vc_column width=\u00a0\u00bb1\/2″]\t
Virus Protect est permanent 24h24 et 7j\/7 : les virus sont d\u00e9truits d\u00e8s contact en moins de 15 minutes et nos solutions emp\u00eachent la formation du biofilm en neutralisant la multiplication des bact\u00e9ries avant de les tuer en moins de 5 minutes.<\/p>\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t
Fabrication sans substance nocive, test\u00e9 non irritant pour la peau humaine. R\u00e9duit la quantit\u00e9 de produits d\u00e9sinfectants utilis\u00e9s.<\/p>\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t[\/vc_column][vc_column width=\u00a0\u00bb1\/2″]\t
Conforme aux normes ISO 14476, ISO 22196, EN1276 et JIS Z 2801. Fonctionne sur tout type de pathog\u00e8nes bact\u00e9riens et des virus dont les coronavirus, influenza (H1N1) et les rotavirus. EFFICACE CONTRE LE SARS COV 2 (covid-19)<\/p>\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t
Poseurs qualifi\u00e9s respectant les normes d'hygi\u00e8ne intervenant dans toute la France et en Belgique. Nos produits peuvent aussi \u00eatre exp\u00e9di\u00e9s.<\/p>\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t[\/vc_column][\/vc_row][vc_row][vc_column width=\u00a0\u00bb1\/4″][\/vc_column][vc_column width=\u00a0\u00bb1\/2″][vc_video link=\u00a0\u00bbhttps:\/\/www.youtube.com\/watch?v=ZEYBK9EZjjs\u00a0\u00bb align=\u00a0\u00bbcenter\u00a0\u00bb][vc_column_text]<\/p>\n
D\u00e9couvrez en images les derni\u00e8res technologies de d\u00e9sinfection r\u00e9manente des surfaces, du film a tissu en passant par des liquides issus de la nanotechnologie.<\/p>\n
Virus Communication a d\u00e9velopp\u00e9 la branche Hygi\u00e8ne \u00ab\u00a0Virus Protect\u00a0\u00bb et installe et distribue ces produits de derni\u00e8re g\u00e9n\u00e9ration pour les entreprises et les particuliers. Nous commercialisons ces produits sous les marques Safe Touch +<\/strong>, Safe Cover +<\/strong> et Pure Zone<\/strong>. Notre dernier n\u00e9, PhotoACTIVE, est notre propre produit, d\u00e9velopp\u00e9 pour nos besoins sp\u00e9cifiques.\u00a0<\/strong><\/p>\n Virus Communication est sp\u00e9cialis\u00e9 dans l’installation de films techniques<\/strong> depuis 2015<\/strong>. Nos comp\u00e9tences d’expertise s’\u00e9tendent aux films d\u00e9polis, films solaires, films de s\u00e9curit\u00e9, films anti bu\u00e9e, et films biocides. Bas\u00e9s \u00e0 Saint Genis Laval (69230), notre rayon d’intervention est originellement Lyon et la r\u00e9gion lyonnaise<\/strong>, mais nous intervenons pour tous chantiers dans la France et Europe frontali\u00e8re<\/strong>. D\u00e9couvrez notre site d\u00e9di\u00e9 \u00e0 l’action du film anti-microbien et ses multiples applications<\/strong> pour tous les secteurs d’activit\u00e9 : de la grande distribution, au secteur m\u00e9dical, aux transports en commun, restaurants, banques, \u00e9coles, gares, a\u00e9roports, pharmacies etc…[\/vc_column_text][\/vc_column][vc_column width=\u00a0\u00bb1\/4″][\/vc_column][\/vc_row][vc_row css=\u00a0\u00bb.vc_custom_1474014717811{padding-top: 55px !important;padding-bottom: 55px !important;background-color: #f5f5f5 !important;}\u00a0\u00bb][vc_column]\t Bornes tactiles, barres de caddies, distributeurs, comptoirs, poign\u00e9es de porte...<\/p>\t\t<\/div>\n\t<\/div>\n\t\tD\u00e9couvrez les diff\u00e9rentes utilisations<\/strong> de nos films antimicrobiens<\/h2>