1 | <?php |
||
12 | class Subdomain implements Rule |
||
13 | { |
||
14 | /** |
||
15 | * List of reserved subdomains |
||
16 | * |
||
17 | * @var array |
||
18 | */ |
||
19 | protected static $reserved = [ |
||
20 | 'a', 'about', 'aboutu', 'abuse', 'acme', 'ad', 'admanager', 'admin', 'admindashboard', 'administrator', 'ads', |
||
21 | 'adsense', 'adult', 'adword', 'adwords', 'affiliate', 'affiliatepage', 'affiliates', 'afp', 'alpha', 'anal', |
||
22 | 'analytic', 'android', 'answer', 'anu', 'anus', 'ap', 'api', 'api1', 'api2', 'api3', |
||
23 | 'app', 'appengine', 'application', 'appnew', 'arse', 'as', 'asdf', 'ass', 'asset', 'assets', |
||
24 | 'assets1', 'assets2', 'assets3', 'assets4', 'assets5', 'asshole', 'atf', 'backup', 'ball', 'balls', |
||
25 | 'ballsack', 'bank', 'base', 'bastard', 'beginner', 'beta', 'biatch', 'billing', 'binarie', 'binary', |
||
26 | 'bitch', 'biz', 'blackberry', 'blog', 'blogsearch', 'bloody', 'blowjob', 'blowjobs', 'bollock', 'boner', |
||
27 | 'boob', 'boobs', 'book', 'bugger', 'bum', 'butt', 'buttplug', 'buy', 'buzz', 'c', |
||
28 | 'cache', 'calendar', 'cart', 'catalog', 'ceo', 'chart', 'chat', 'checkout', 'ci', 'cia', |
||
29 | 'client', 'clients', 'clitori', 'clitoris', 'cname', 'cnarne', 'cock', 'code', 'community', 'confirm', |
||
30 | 'confirmation', 'contact', 'contact-u', 'contactu', 'content', 'controlpanel', 'coon', 'core', 'corp', 'countrie', |
||
31 | 'country', 'cp', 'cpanel', 'crap', 'cs', 'css', 'css1', 'css2', 'css3', 'cunt', |
||
32 | 'cv', 'damn', 'dashboard', 'data', 'demo', 'deploy', 'deployment', 'desktop', 'dev', 'devel', |
||
33 | 'developement', 'developer', 'developers', 'development', 'dick', 'dike', 'dildo', 'dir', 'directory', 'discussion', |
||
34 | 'dl', 'doc', 'docs', 'document', 'donate', 'download', 'dyke', 'e', 'earth', 'email', |
||
35 | 'enable', 'encrypted', 'engine', 'error', 'errorlog', 'fag', 'faggot', 'fbi', 'feature', 'feck', |
||
36 | 'feed', 'feedburner', 'feedproxy', 'feeds', 'felching', 'fellate', 'fellatio', 'file', 'files', 'finance', |
||
37 | 'flange', 'folder', 'forgotpassword', 'forum', 'friend', 'ftp', 'fuck', 'fudgepacker', 'fun', 'fusion', |
||
38 | 'gadget', 'gear', 'geographic', 'gettingstarted', 'git', 'gitlab', 'gmail', 'go', 'goddamn', 'goto', |
||
39 | 'gov', 'graph', 'graphs', 'group', 'hell', 'help', 'home', 'homo', 'html', 'htrnl', |
||
40 | 'http', 'https', 'i', 'image', 'images', 'imap', 'img', 'img1', 'img2', 'img3', |
||
41 | 'investor', 'invoice', 'invoices', 'io', 'ios', 'ipad', 'iphone', 'irnage', 'irng', 'item', |
||
42 | 'j', 'jenkin', 'jerk', 'jira', 'jizz', 'job', 'join', 'js', 'js1', 'js2', |
||
43 | 'kb', 'knobend', 'knowledgebase', 'lab', 'labia', 'legal', 'lesbo', 'list', 'lmao', 'lmfao', |
||
44 | 'local', 'locale', 'location', 'log', 'login', 'logout', 'logs', 'm', 'mail', 'manage', |
||
45 | 'manager', 'map', 'marketing', 'me', 'media', 'message', 'misc', 'mm', 'mms', 'mobile', |
||
46 | 'model', 'money', 'movie', 'muff', 'mx', 'my', 'mystore', 'n', 'net', 'network', |
||
47 | 'networks', 'new', 'news', 'newsite', 'nigga', 'nigger', 'npm', 'ns', 'ns1', 'ns2', |
||
48 | 'ns3', 'ns4', 'ns5', 'omg', 'online', 'order', 'org', 'other', 'p0rn', 'pack', |
||
49 | 'packagist', 'page', 'pages', 'partner', 'partnerpage', 'partners', 'password', 'payment', 'payments', 'peni', |
||
50 | 'penis', 'people', 'person', 'pi', 'pis', 'piss', 'place', 'podcast', 'policy', 'poop', |
||
51 | 'pop', 'pop3', 'popular', 'porn', 'pr0n', 'press', 'pricing', 'prick', 'print', 'privacy', |
||
52 | 'private', 'prod', 'product', 'production', 'profile', 'promo', 'promotion', 'proxie', 'proxies', 'proxy', |
||
53 | 'pube', 'public', 'purchase', 'pussy', 'queer', 'querie', 'queries', 'query', 'r', 'radio', |
||
54 | 'random', 'reader', 'recover', 'redirect', 'register', 'registration', 'release', 'report', 'research', 'resolve', |
||
55 | 'resolver', 'rnail', 'rnicrosoft', 'root', 'rs', 'rss', 'sale', 'sandbox', 'scholar', 'scrotum', |
||
56 | 'search', 'secure', 'seminar', 'server', 'servers', 'service', 'sex', 'sftp', 'sh1t', 'shit', |
||
57 | 'shop', 'shopping', 'shortcut', 'signin', 'signup', 'site', 'sitemap', 'sitenew', 'sitenews', 'sites', |
||
58 | 'sketchup', 'sky', 'slash', 'slashinvoice', 'slut', 'sm', 'smegma', 'sms', 'smtp', 'soap', |
||
59 | 'software', 'sorry', 'spreadsheet', 'spunk', 'srntp', 'ssh', 'ssl', 'stage', 'staging', 'stat', |
||
60 | 'static', 'statistic', 'statistics', 'stats', 'statu', 'status', 'store', 'suggest', 'suggestquerie', 'suggestquery', |
||
61 | 'support', 'survey', 'surveys', 'surveytool', 'svn', 'sync', 'sysadmin', 'talk', 'talkgadget', 'test', |
||
62 | 'tester', 'testing', 'text', 'tit', 'tits', 'tool', 'toolbar', 'tosser', 'trac', 'translate', |
||
63 | 'translation', 'translator', 'trend', 'turd', 'twat', 'txt', 'ul', 'upload', 'uploads', 'vagina', |
||
64 | 'validation', 'validations', 'vid', 'video', 'video-stat', 'videos', 'voice', 'w', 'wank', 'wave', |
||
65 | 'webdisk', 'webmail', 'webmaster', 'webrnail', 'whm', 'whoi', 'whois', 'whore', 'wifi', 'wiki', |
||
66 | 'wtf', 'ww', 'www', 'www1', 'www2', 'wwww', 'xhtml', 'xhtrnl', 'xml', 'xxx' |
||
67 | ]; |
||
68 | |||
69 | /** |
||
70 | * Determine if the validation rule passes. |
||
71 | * |
||
72 | * @param string $attribute |
||
73 | * @param mixed $value |
||
74 | * |
||
75 | * @return bool |
||
76 | */ |
||
77 | 3 | public function passes($attribute, $value) |
|
89 | |||
90 | /** |
||
91 | * Get the validation error message. |
||
92 | * |
||
93 | * @return string |
||
94 | */ |
||
95 | 3 | public function message() |
|
99 | } |
||
100 |