File: //opt/cloudlinux/alt-php54/root/usr/share/pear/RVSeagullMod/lib/SGL/Fsbb.php
<?php
/* Reminder: always indent with 4 spaces (no tabs). */
// +---------------------------------------------------------------------------+
// | Copyright (c) 2008, Demian Turner |
// | All rights reserved. |
// | |
// | Redistribution and use in source and binary forms, with or without |
// | modification, are permitted provided that the following conditions |
// | are met: |
// | |
// | o Redistributions of source code must retain the above copyright |
// | notice, this list of conditions and the following disclaimer. |
// | o Redistributions in binary form must reproduce the above copyright |
// | notice, this list of conditions and the following disclaimer in the |
// | documentation and/or other materials provided with the distribution. |
// | o The names of the authors may not be used to endorse or promote |
// | products derived from this software without specific prior written |
// | permission. |
// | |
// | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
// | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
// | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
// | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
// | OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
// | SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
// | LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
// | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
// | THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
// | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
// | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
// | |
// +---------------------------------------------------------------------------+
// | Seagull 0.6 |
// +---------------------------------------------------------------------------+
// | Config.php |
// +---------------------------------------------------------------------------+
// | Author: Demian Turner <demian@phpkitchen.com> |
// +---------------------------------------------------------------------------+
// $Id: Controller.php,v 1.49 2005/06/23 19:15:25 demian Exp $
/**
* Config file parsing and handling, acts as a registry for config data.
*
* @package SGL
* @author Demian Turner <demian@phpkitchen.com>
* @version $Revision: 1.5 $
*/
if (!class_exists('formSpamBotBlocker')) {
require_once dirname(__FILE__) . '/fsbb/fsbb.php';
}
if (!class_exists('SGL_Config')) {
require_once dirname(__FILE__) . '/Config.php';
}
if (!class_exists('SGL_Request')) {
require_once dirname(__FILE__) . '/Request.php';
}
class SGL_Fsbb extends formSpamBotBlocker
{
/*
var $initKey = $this->initKey; // set some string here to make the encoded names and values hard to guess
var $minutesAfterMidnight=$this->minutesAfterMidnight; // minutes after midnight to allow a submission of a form generated at the previous day
var $minTime=$this->minTime; // time in seconds needed to have passed, before o form can be submitted, set also by setTimeWindow()
var $maxTime=$this->maxTime; // max time in seconds to submit a form, set also by setTimeWindow()
var $hasTrap=$this->hasTrap; // true: a visually hidden input tag will be generated, set also by setTrap()
var $trapName=$this->trapName; // name of the visually hidden input tag, set also by setTrap()
var $trapLabel=$this->trapLabel; // label info to warn human users, who do not use CSS, set also by setTrap()
var $hasSession=$this->hasSession;
*/
function SGL_Fsbb($autoLoad = true)
{
$this->maxTime = SGL_Config::get('spamBotBlocker.maxTime') ? SGL_Config::get('spamBotBlocker.maxTime') : 600;
$this->minTime = SGL_Config::get('spamBotBlocker.minTime') ? SGL_Config::get('spamBotBlocker.minTime') : 2;
}
public static function singleton($autoLoad = true)
{
static $instance;
if (!isset($instance)) {
$class = __CLASS__;
$instance = new $class($autoLoad);
}
return $instance;
}
function makeSpamBotBlockerTag()
{
return parent::makeTags();
}
function checkSpamBotBlockerTags()
{
$req = SGL_Request::singleton();
$aReq = $req->getAll();
return parent::checkTags($aReq);
}
function setTimeWindow($min=2,$max=600){
return parent::setTimeWindow($min,$max);
}
}
?>