Concept

Latest releases of BrandMaster has some logic to temporary ban Private IDs. Real-time logic placed at Script/Modules/Filter.lua

The idea is very simple: Memcached has functionality for timed storage. We need to put any value to cache with following syntax:

  1. Ban-<private ID>

BanPrivateID.php

<syntaxhighlight lang="php"> <?php

  1. unset($number);
  2. unset($interval);
  1. if (isset($_SERVER) &&
  2. array_key_exists("number", $_GET) &&
  3. array_key_exists("interval", $_GET))
  4. {
  5. $number = intval($_GET["number"]);
  6. $interval = intval($_GET["interval"]);
  7. }
  1. if ((php_sapi_name() == "cli") &&
  2. ($argc >= 3))
  3. {
  4. $number = intval($argv[1]);
  5. $interval = intval($argv[2]);
  6. }
  1. if (isset($number))
  2. {
  3. $cache = new Memcache();
  4. $cache->connect("localhost", 11211);
  5. $cache->set("Ban-$number", 1, 0, $interval);
  6. }

?> </syntaxhighlight>