Skip to content
Snippets Groups Projects
  • Thane de Loth's avatar
    7042e6c8
    Adopt translation work from Thane de Loth · 7042e6c8
    Thane de Loth authored
    Multilanguage Support via gettext
    
    - added gettext encapsulations to all texts i thought necessary
    - added fallback function for the case that the gettext extension isn't loaded
    - added browser language detection
    - added gettext to the list of optional extensions in setup
    - rewritten some of the texts to use sprintf instead of appending strings
    - added german translation file
    - removed mark_overdue-confirm from cannedresponses.inc.php
    
    extend multi language support and a fex fixes
    
    - Better detection of translation files
    - Added functionality to redirect language codes (see redirecting
    language codes)
    - Ticket Status can be translated
    - The Datepicker can be translated
    - Extended functionality of 'testlang.php' to show what language code is
    used to translate
    
    Forgotten to apply a patch from RC5 to RC6
    
    - Forgotten to change $var to $vars in line 380 of class.mailfetch.php
    - Removed unneeded comment
    
    Added php_gettext as primary translation engine
    
    - Added php_gettext support (thanks to Danilo Segan and Steven
    Armstrong)
    - php_gettext is now the primary translation engine
    - Extended language detection functionality
    
    Add error/misconfiguration checks and fix undefined variables
    7042e6c8
    History
    Adopt translation work from Thane de Loth
    Thane de Loth authored
    Multilanguage Support via gettext
    
    - added gettext encapsulations to all texts i thought necessary
    - added fallback function for the case that the gettext extension isn't loaded
    - added browser language detection
    - added gettext to the list of optional extensions in setup
    - rewritten some of the texts to use sprintf instead of appending strings
    - added german translation file
    - removed mark_overdue-confirm from cannedresponses.inc.php
    
    extend multi language support and a fex fixes
    
    - Better detection of translation files
    - Added functionality to redirect language codes (see redirecting
    language codes)
    - Ticket Status can be translated
    - The Datepicker can be translated
    - Extended functionality of 'testlang.php' to show what language code is
    used to translate
    
    Forgotten to apply a patch from RC5 to RC6
    
    - Forgotten to change $var to $vars in line 380 of class.mailfetch.php
    - Removed unneeded comment
    
    Added php_gettext as primary translation engine
    
    - Added php_gettext support (thanks to Danilo Segan and Steven
    Armstrong)
    - php_gettext is now the primary translation engine
    - Extended language detection functionality
    
    Add error/misconfiguration checks and fix undefined variables
class.banlist.php 1.76 KiB
<?php
/*********************************************************************
    class.banlist.php

    Banned email addresses handle.

    Peter Rotich <peter@osticket.com>
    Copyright (c)  2006-2013 osTicket
    http://www.osticket.com

    Released under the GNU General Public License WITHOUT ANY WARRANTY.
    See LICENSE.TXT for details.

    vim: expandtab sw=4 ts=4 sts=4:
**********************************************************************/

require_once "class.filter.php";
class Banlist {
    
    function add($email,$submitter='') {
        return self::getSystemBanList()->addRule('email','equal',$email);
    }
    
    function remove($email) {
        return self::getSystemBanList()->removeRule('email','equal',$email);
    }
    
    function isbanned($email) {
        return TicketFilter::isBanned($email);
    }

    function includes($email) {
        return self::getSystemBanList()->containsRule('email','equal',$email);
    }

    function ensureSystemBanList() {

        if (!($id=Filter::getIdByName('SYSTEM BAN LIST')))
            $id=self::createSystemBanList();

        return $id;
    }

    function createSystemBanList() {
        # XXX: Filter::create should return the ID!!!
        $errors=array();
        return Filter::create(array(
            'execorder'     => 99,
            'name'          => 'SYSTEM BAN LIST',
            'isactive'      => 1,
            'match_all_rules' => false,
            'reject_ticket'  => true,
            'rules'         => array(),
            'notes'         => __('Internal list for email banning. Do not remove')
        ), $errors);
    }

    function getSystemBanList() {
        return new Filter(self::ensureSystemBanList());
    }

    function getFilter() {
        return self::getSystemBanList();
    }
}