2017 © Pedro Peláez
 

symfony-bundle profanity-bundle

Checker for bad words.

image

vangrg/profanity-bundle

Checker for bad words.

  • Thursday, August 31, 2017
  • by Ivan griga
  • Repository
  • 1 Watchers
  • 1 Stars
  • 43 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 1 Forks
  • 1 Open issues
  • 9 Versions
  • 2 % Grown

The README.md

Profanity Filter Bundle

A symfony bundle to test if a string has a profanity in it., (*1)

Straight matching Checks string for profanity as it is against list of bad words. E.g. badword, (*2)

Substitution Checks string for profanity with characters substituted for each letter. E.g. bâdΨ0rd, (*3)

Obscured Checks string for profanity obscured with punctuation between. E.g. b|a|d|w|o|r|d, (*4)

Combinations Also works with combinations of the above. E.g. b|â|d|Ψ|0|rr|d, (*5)

Installation

  • Install this package via composer. php composer.phar require vangrg/profanity-bundle
  • Add to your AppKernel.php: new Vangrg\ProfanityBundle\VangrgProfanityBundle(),
  • If you want to use a database to store your profanities: php bin/console doctrine:schema:update --force
  • For populate default profanities data: php bin/console vangrg:profanities:populate

Usage

Default usage

<?php
$check = $this->get('vangrg_profanity.checker');
$hasProfanity = $check->hasProfanity($badWords);
$cleanWords = $check->obfuscateIfProfane($badWords);

/* customized word list from array */
$badWords = array('bad', 'words');
/* or load from db */
$badWords = $this->getDoctrine()->getManagerForClass(Profanity::class)
      ->getRepository(Profanity::class)
      ->getProfanitiesArray();

$this->get('vangrg_profanity.storage')->setProfanities($badWords);

Override profanities configuration

# add to config.yml
vangrg_profanity:
    storage: your service # By default use 'vangrg_profanity.storage.default', custom storage service must implement "Vangrg\ProfanityBundle\Storage\ProfanitiesStorageInterface"
    allow_bound_by_words: true # Also match profanities inside words e.g. a.r.s.esomething, somethingarse, but be careful also words like glasses
    profanities_source:
        file_name: # your custom filename with profanities
        format: # profanities source format (default yaml), can be yaml, json or xml

Annotation usage

<?php

namespace AppBundle\Entity;

use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\Validator\Constraints as Assert;
use Vangrg\ProfanityBundle\Validator\Constraints as ProfanityAssert;

/**
 * Post
 *
 * @ORM\Table(name="post")
 * @ORM\Entity(repositoryClass="AppBundle\Repository\PostRepository")
 */
class Post
{
    /**
     * @var int
     *
     * @ORM\Column(name="id", type="integer")
     * @ORM\Id
     * @ORM\GeneratedValue(strategy="AUTO")
     */
    private $id;

    /**
     * @var string
     * 
     * @Assert\Length(min=8, max=64)
     * @ProfanityAssert\ProfanityCheck
     * @ORM\Column(name="title", type="string", length=64)
     */
    private $title;
}

Remark

Bundle is built on the basis of the library https://github.com/mofodojodino/ProfanityFilter with an improvement in the logic of the filter, (*6)

The Versions

31/08 2017

dev-master

9999999-dev

Checker for bad words.

  Sources   Download

MIT

The Requires

 

by Avatar Ivan griga

filter profanity bundle symfony words bad censor

31/08 2017

v1.0.0

1.0.0.0

Checker for bad words.

  Sources   Download

MIT

The Requires

 

by Avatar Ivan griga

filter profanity bundle symfony words bad censor

31/08 2017

dev-develop

dev-develop

Checker for bad words.

  Sources   Download

MIT

The Requires

 

by Avatar Ivan griga

filter profanity bundle symfony words bad censor

30/08 2017

v0.0.5

0.0.5.0

Checker for bad words.

  Sources   Download

MIT

The Requires

 

by Avatar Ivan griga

filter profanity bundle symfony words bad censor

29/08 2017

v0.0.4

0.0.4.0

Checker for bad words.

  Sources   Download

MIT

The Requires

 

by Avatar Ivan griga

filter profanity bundle symfony words bad censor

28/07 2017

v0.0.3

0.0.3.0

Checker for bad words.

  Sources   Download

MIT

The Requires

 

by Avatar Ivan griga

filter profanity bundle symfony words bad censor

19/06 2017

v0.0.2

0.0.2.0

Checker for bad words.

  Sources   Download

MIT

The Requires

 

by Avatar Ivan griga

profanity bundle symfony words bad censor

16/06 2017

v0.0.1

0.0.1.0

Checker for bad words.

  Sources   Download

MIT

The Requires

 

by Avatar Ivan griga

profanity bad words

16/06 2017

0.0.1

0.0.1.0

Checker for bad words.

  Sources   Download

MIT

The Requires

 

by Avatar Ivan griga

profanity bad words