Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 21 additions & 0 deletions app/HMS/Entities/BlacklistUsername.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
<?php

namespace HMS\Entities;

class BlacklistUsername
{
/**
* @var string
*/
protected $username;

/**
* Gets the value of username.
*
* @return string
*/
public function getUsername()
{
return $this->username;
}
}
10 changes: 10 additions & 0 deletions app/HMS/Mappings/HMS.Entities.BlacklistUsername.dcm.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# HMS.Entities.BlacklistUsername.dcm.yml
HMS\Entities\BlacklistUsername:
type: entity
repositoryClass: HMS\Repositories\BlacklistUsernameRepository
table: blacklist_usernames
id:
username:
type: string
generator:
strategy: NONE
2 changes: 1 addition & 1 deletion app/Http/Controllers/Auth/RegisterController.php
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ protected function validator(array $data)
'invite' => 'required|exists:HMS\Entities\Invite,inviteToken',
'firstname' => 'required|max:255',
'lastname' => 'required|max:255',
'username' => 'required|max:255|unique:HMS\Entities\User',
'username' => 'required|max:255|unique:HMS\Entities\User|unique:HMS\Entities\BlacklistUsername',
'email' => 'required|email|max:255|unique:HMS\Entities\User',
'password' => 'required|min:' . User::MIN_PASSWORD_LENGTH . '|confirmed',
'address1' => 'required|max:100',
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
<?php

namespace Database\Migrations;

use Doctrine\DBAL\Schema\Schema as Schema;
use Doctrine\DBAL\Migrations\AbstractMigration;

class Version20170830200741_add_blacklist_usernames_table extends AbstractMigration
{
/**
* @param Schema $schema
*/
public function up(Schema $schema)
{
$this->abortIf($this->connection->getDatabasePlatform()->getName() != 'mysql', 'Migration can only be executed safely on \'mysql\'.');

$this->addSql('CREATE TABLE blacklist_usernames (username VARCHAR(255) NOT NULL, PRIMARY KEY(username)) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB');
}

/**
* @param Schema $schema
*/
public function down(Schema $schema)
{
$this->abortIf($this->connection->getDatabasePlatform()->getName() != 'mysql', 'Migration can only be executed safely on \'mysql\'.');

$this->addSql('DROP TABLE blacklist_usernames');
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
<?php

namespace Database\Migrations;

use Doctrine\DBAL\Schema\Schema as Schema;
use Doctrine\DBAL\Migrations\AbstractMigration;

class Version20170830200924_populate_blacklist extends AbstractMigration
{
/**
* @param Schema $schema
*/
public function up(Schema $schema)
{
$this->abortIf($this->connection->getDatabasePlatform()->getName() != 'mysql', 'Migration can only be executed safely on \'mysql\'.');

// Gnerated by The-Big-Username-Blacklist VERSION=v1.5.1 (at 2017-04-18 19:40:03.354247)
$this->addSql('INSERT INTO blacklist_usernames VALUES (\'400\'), (\'401\'), (\'403\'), (\'404\'), (\'405\'), (\'406\'), (\'407\'), (\'408\'), (\'409\'), (\'410\'), (\'411\'), (\'412\'), (\'413\'), (\'414\'), (\'415\'), (\'416\'), (\'417\'), (\'421\'), (\'422\'), (\'423\'), (\'424\'), (\'426\'), (\'428\'), (\'429\'), (\'431\'), (\'500\'), (\'501\'), (\'502\'), (\'503\'), (\'504\'), (\'505\'), (\'506\'), (\'507\'), (\'508\'), (\'509\'), (\'510\'), (\'511\'), (\'about\'), (\'about-us\'), (\'abuse\'), (\'access\'), (\'account\'), (\'accounts\'), (\'ad\'), (\'add\'), (\'admin\'), (\'administration\'), (\'administrator\'), (\'ads\'), (\'advertise\'), (\'advertising\'), (\'aes128-ctr\'), (\'aes128-gcm\'), (\'aes192-ctr\'), (\'aes256-ctr\'), (\'aes256-gcm\'), (\'affiliate\'), (\'affiliates\'), (\'ajax\'), (\'alert\'), (\'alerts\'), (\'alpha\'), (\'amp\'), (\'analytics\'), (\'api\'), (\'app\'), (\'apps\'), (\'asc\'), (\'assets\'), (\'atom\'), (\'auth\'), (\'authentication\'), (\'authorize\'), (\'autoconfig\'), (\'avatar\'), (\'backup\'), (\'banner\'), (\'banners\'), (\'beta\'), (\'billing\'), (\'billings\'), (\'blog\'), (\'blogs\'), (\'board\'), (\'bookmark\'), (\'bookmarks\'), (\'broadcasthost\'), (\'business\'), (\'buy\'), (\'cache\'), (\'calendar\'), (\'campaign\'), (\'captcha\'), (\'careers\'), (\'cart\'), (\'cas\'), (\'categories\'), (\'category\'), (\'cdn\'), (\'cgi\'), (\'cgi-bin\'), (\'chacha20-poly1305\'), (\'change\'), (\'channel\'), (\'channels\'), (\'chart\'), (\'chat\'), (\'checkout\'), (\'clear\'), (\'client\'), (\'close\'), (\'cms\'), (\'com\'), (\'comment\'), (\'comments\'), (\'community\'), (\'compare\'), (\'compose\'), (\'config\'), (\'connect\'), (\'contact\'), (\'contest\'), (\'cookies\'), (\'copy\'), (\'copyright\'), (\'count\'), (\'create\'), (\'css\'), (\'curve25519-sha256\'), (\'customer\'), (\'customers\'), (\'customize\'), (\'dashboard\'), (\'db\'), (\'deals\'), (\'debug\'), (\'delete\'), (\'desc\'), (\'dev\'), (\'developer\'), (\'developers\'), (\'diffie-hellman-group-exchange-sha256\'), (\'diffie-hellman-group14-sha1\'), (\'disconnect\'), (\'discuss\'), (\'dns\'), (\'dns0\'), (\'dns1\'), (\'dns2\'), (\'dns3\'), (\'dns4\'), (\'docs\'), (\'documentation\'), (\'domain\'), (\'download\'), (\'downloads\'), (\'downvote\'), (\'draft\'), (\'drop\'), (\'ecdh-sha2-nistp256\'), (\'ecdh-sha2-nistp384\'), (\'ecdh-sha2-nistp521\'), (\'edit\'), (\'editor\'), (\'email\'), (\'enterprise\'), (\'error\'), (\'errors\'), (\'event\'), (\'events\'), (\'example\'), (\'exception\'), (\'exit\'), (\'explore\'), (\'export\'), (\'extensions\'), (\'false\'), (\'family\'), (\'faq\'), (\'faqs\'), (\'features\'), (\'feed\'), (\'feedback\'), (\'feeds\'), (\'file\'), (\'files\'), (\'filter\'), (\'follow\'), (\'follower\'), (\'followers\'), (\'following\'), (\'fonts\'), (\'forgot\'), (\'forgot-password\'), (\'forgotpassword\'), (\'form\'), (\'forms\'), (\'forum\'), (\'forums\'), (\'friend\'), (\'friends\'), (\'ftp\'), (\'get\'), (\'git\'), (\'go\'), (\'group\'), (\'groups\'), (\'guest\'), (\'guidelines\'), (\'guides\'), (\'head\'), (\'header\'), (\'help\'), (\'hide\'), (\'hmac-sha\'), (\'hmac-sha1\'), (\'hmac-sha1-etm\'), (\'hmac-sha2-256\'), (\'hmac-sha2-256-etm\'), (\'hmac-sha2-512\'), (\'hmac-sha2-512-etm\'), (\'home\'), (\'host\'), (\'hosting\'), (\'hostmaster\'), (\'htpasswd\'), (\'http\'), (\'httpd\'), (\'https\'), (\'icons\'), (\'images\'), (\'imap\'), (\'img\'), (\'import\'), (\'info\'), (\'insert\'), (\'investors\'), (\'invitations\'), (\'invite\'), (\'invites\'), (\'invoice\'), (\'is\'), (\'isatap\'), (\'issues\'), (\'it\'), (\'jobs\'), (\'join\'), (\'js\'), (\'json\'), (\'learn\'), (\'legal\'), (\'licensing\'), (\'limit\'), (\'live\'), (\'load\'), (\'local\'), (\'localdomain\'), (\'localhost\'), (\'lock\'), (\'login\'), (\'logout\'), (\'lost-password\'), (\'mail\'), (\'mail0\'), (\'mail1\'), (\'mail2\'), (\'mail3\'), (\'mail4\'), (\'mail5\'), (\'mail6\'), (\'mail7\'), (\'mail8\'), (\'mail9\'), (\'mailer-daemon\'), (\'mailerdaemon\'), (\'map\'), (\'marketing\'), (\'marketplace\'), (\'master\'), (\'me\'), (\'media\'), (\'member\'), (\'members\'), (\'message\'), (\'messages\'), (\'metrics\'), (\'mis\'), (\'mobile\'), (\'moderator\'), (\'modify\'), (\'more\'), (\'mx\'), (\'my\'), (\'net\'), (\'network\'), (\'new\'), (\'news\'), (\'newsletter\'), (\'newsletters\'), (\'next\'), (\'nil\'), (\'no-reply\'), (\'nobody\'), (\'noc\'), (\'none\'), (\'noreply\'), (\'notification\'), (\'notifications\'), (\'ns\'), (\'ns0\'), (\'ns1\'), (\'ns2\'), (\'ns3\'), (\'ns4\'), (\'ns5\'), (\'ns6\'), (\'ns7\'), (\'ns8\'), (\'ns9\'), (\'null\'), (\'oauth\'), (\'oauth2\'), (\'offer\'), (\'offers\'), (\'online\'), (\'openid\'), (\'order\'), (\'orders\'), (\'overview\'), (\'owner\'), (\'page\'), (\'pages\'), (\'partners\'), (\'passwd\'), (\'password\'), (\'pay\'), (\'payment\'), (\'payments\'), (\'photo\'), (\'photos\'), (\'pixel\'), (\'plans\'), (\'plugins\'), (\'policies\'), (\'policy\'), (\'pop\'), (\'pop3\'), (\'popular\'), (\'portfolio\'), (\'post\'), (\'postfix\'), (\'postmaster\'), (\'poweruser\'), (\'preferences\'), (\'premium\'), (\'press\'), (\'previous\'), (\'pricing\'), (\'print\'), (\'privacy\'), (\'privacy-policy\'), (\'private\'), (\'prod\'), (\'product\'), (\'production\'), (\'profile\'), (\'profiles\'), (\'project\'), (\'projects\'), (\'public\'), (\'purchase\'), (\'put\'), (\'quota\'), (\'redirect\'), (\'reduce\'), (\'refund\'), (\'refunds\'), (\'register\'), (\'registration\'), (\'remove\'), (\'replies\'), (\'reply\'), (\'report\'), (\'request\'), (\'request-password\'), (\'reset\'), (\'reset-password\'), (\'response\'), (\'return\'), (\'returns\'), (\'review\'), (\'reviews\'), (\'root\'), (\'rootuser\'), (\'rsa-sha2-2\'), (\'rsa-sha2-512\'), (\'rss\'), (\'rules\'), (\'sales\'), (\'save\'), (\'script\'), (\'sdk\'), (\'search\'), (\'secure\'), (\'security\'), (\'select\'), (\'services\'), (\'session\'), (\'sessions\'), (\'settings\'), (\'setup\'), (\'share\'), (\'shift\'), (\'shop\'), (\'signin\'), (\'signup\'), (\'site\'), (\'sitemap\'), (\'sites\'), (\'smtp\'), (\'sort\'), (\'source\'), (\'sql\'), (\'ssh\'), (\'ssh-rsa\'), (\'ssl\'), (\'ssladmin\'), (\'ssladministrator\'), (\'sslwebmaster\'), (\'stage\'), (\'staging\'), (\'stat\'), (\'static\'), (\'statistics\'), (\'stats\'), (\'status\'), (\'store\'), (\'style\'), (\'styles\'), (\'stylesheet\'), (\'stylesheets\'), (\'subdomain\'), (\'subscribe\'), (\'sudo\'), (\'super\'), (\'superuser\'), (\'support\'), (\'survey\'), (\'sync\'), (\'sysadmin\'), (\'system\'), (\'tablet\'), (\'tag\'), (\'tags\'), (\'team\'), (\'telnet\'), (\'terms\'), (\'terms-of-use\'), (\'test\'), (\'testimonials\'), (\'theme\'), (\'themes\'), (\'today\'), (\'tools\'), (\'topic\'), (\'topics\'), (\'tour\'), (\'training\'), (\'translate\'), (\'translations\'), (\'trending\'), (\'trial\'), (\'true\'), (\'umac-128\'), (\'umac-128-etm\'), (\'umac-64\'), (\'umac-64-etm\'), (\'undefined\'), (\'unfollow\'), (\'unsubscribe\'), (\'update\'), (\'upgrade\'), (\'usenet\'), (\'user\'), (\'username\'), (\'users\'), (\'uucp\'), (\'var\'), (\'verify\'), (\'video\'), (\'view\'), (\'void\'), (\'vote\'), (\'webmail\'), (\'webmaster\'), (\'website\'), (\'widget\'), (\'widgets\'), (\'wiki\'), (\'wpad\'), (\'write\'), (\'www\'), (\'www-data\'), (\'www1\'), (\'www2\'), (\'www3\'), (\'www4\'), (\'you\'), (\'yourname\'), (\'yourusername\'), (\'zlib\')');
}

/**
* @param Schema $schema
*/
public function down(Schema $schema)
{
$this->abortIf($this->connection->getDatabasePlatform()->getName() != 'mysql', 'Migration can only be executed safely on \'mysql\'.');

$this->addSql('TRUNCATE TABLE blacklist_usernames');
}
}