2017-02-13 4 views
1

Grav версия is 1.1.5Как отключить проверку имени пользователя в Grav?

Я удалил каждую логику проверки и шаблон проверки в исходном коде, но он не работает, я все еще получаю ошибку при создании пользователя.

Имя сообщения об ошибке USERNAME_NOT_VALID, я ищу это во всем исходном коде и удаляю связанный код, но он по-прежнему отображается на экране, когда я получил ошибку. Я не понимаю, откуда это сообщение.

diff --git a/user/plugins/admin/pages/admin/register.md b/user/plugins/admin/pages/admin/register.md 
index ff0b13b..fc0cf6e 100644 
--- a/user/plugins/admin/pages/admin/register.md 
+++ b/user/plugins/admin/pages/admin/register.md 
@@ -9,7 +9,7 @@ form: 
     validate: 
     required: true 
     message: PLUGIN_LOGIN.USERNAME_NOT_VALID 
-  pattern: '^[a-z0-9_-]{3,16}$' 
+  pattern: '' 

    - name: email 
     type: email 
@@ -27,7 +27,7 @@ form: 
     validate: 
     required: true 
     message: PLUGIN_ADMIN.PASSWORD_VALIDATION_MESSAGE 
-  pattern: '(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,}' 
+  pattern: '' 

    - name: password2 
     type: password 
@@ -36,7 +36,7 @@ form: 
     validate: 
     required: true 
     message: PLUGIN_ADMIN.PASSWORD_VALIDATION_MESSAGE 
-  pattern: '(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,}' 
+  pattern: '' 

    - name: fullname 
     type: text 
diff --git a/user/plugins/login/pages/register.md b/user/plugins/login/pages/register.md 
index c4088e2..0391367 100644 
--- a/user/plugins/login/pages/register.md 
+++ b/user/plugins/login/pages/register.md 
@@ -12,7 +12,7 @@ form: 
     validate: 
     required: true 
     message: PLUGIN_LOGIN.USERNAME_NOT_VALID 
-  pattern: '^[a-z0-9_-]{3,16}$' 
+  pattern: '' 

    - 
     name: email 
@@ -31,7 +31,7 @@ form: 
     validate: 
     required: true 
     message: PLUGIN_LOGIN.PASSWORD_VALIDATION_MESSAGE 
-  pattern: '(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,}' 
+  pattern: '' 

    - 
     name: password2 
@@ -41,7 +41,7 @@ form: 
     validate: 
     required: true 
     message: PLUGIN_LOGIN.PASSWORD_VALIDATION_MESSAGE 
-  pattern: '(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,}' 
+  pattern: '' 

    buttons: 
     - 
diff --git a/user/plugins/login/pages/reset.md b/user/plugins/login/pages/reset.md 
index e5f82e4..8300d2a 100644 
--- a/user/plugins/login/pages/reset.md 
+++ b/user/plugins/login/pages/reset.md 
@@ -20,7 +20,7 @@ form: 
      validate: 
      required: true 
      message: PLUGIN_LOGIN.PASSWORD_VALIDATION_MESSAGE 
-   pattern: '(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,}' 
+   pattern: '' 

     - name: token 
      type: hidden 



diff --git a/user/plugins/login/cli/ChangePasswordCommand.php b/user/plugins/login/cli/ChangePasswordCommand.php 
index d15abb7..5bde6cc 100644 
--- a/user/plugins/login/cli/ChangePasswordCommand.php 
+++ b/user/plugins/login/cli/ChangePasswordCommand.php 
@@ -134,9 +134,6 @@ class ChangePasswordCommand extends ConsoleCommand 
    { 
     switch ($type) { 
      case 'user': 
-    if (!preg_match('/^[a-z0-9_-]{3,16}$/', $value)) { 
-     throw new \RuntimeException('Username should be between 3 and 16 characters, including lowercase letters, numbers, underscores, and hyphens. Uppercase letters, spaces, and special characters are not allowed'); 
-    } 
       if (!file_exists(self::getGrav()['locator']->findResource('account://' . $value . YAML_EXT))) { 
        throw new \RuntimeException('Username "' . $value . '" does not exist, please pick another username'); 
       } 
@@ -144,10 +141,6 @@ class ChangePasswordCommand extends ConsoleCommand 
       break; 

      case 'password1': 
-    if (!preg_match('/(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,}/', $value)) { 
-     throw new \RuntimeException('Password must contain at least one number and one uppercase and lowercase letter, and at least 8 or more characters'); 
-    } 
- 
       break; 

      case 'password2': 
diff --git a/user/plugins/login/cli/ChangeUserStateCommand.php b/user/plugins/login/cli/ChangeUserStateCommand.php 
index 40f9dc6..90adee6 100644 
--- a/user/plugins/login/cli/ChangeUserStateCommand.php 
+++ b/user/plugins/login/cli/ChangeUserStateCommand.php 
@@ -133,9 +133,6 @@ class ChangeUserStateCommand extends ConsoleCommand 
    { 
     switch ($type) { 
      case 'user': 
-    if (!preg_match('/^[a-z0-9_-]{3,16}$/', $value)) { 
-     throw new \RuntimeException('Username should be between 3 and 16 characters, including lowercase letters, numbers, underscores, and hyphens. Uppercase letters, spaces, and special characters are not allowed'); 
-    } 
       if (!file_exists(self::getGrav()['locator']->findResource('account://' . $value . YAML_EXT))) { 
        throw new \RuntimeException('Username "' . $value . '" does not exist, please pick another username'); 
       } 
diff --git a/user/plugins/login/cli/NewUserCommand.php b/user/plugins/login/cli/NewUserCommand.php 
index 17dbf48..728adda 100644 
--- a/user/plugins/login/cli/NewUserCommand.php 
+++ b/user/plugins/login/cli/NewUserCommand.php 
@@ -237,9 +237,6 @@ class NewUserCommand extends ConsoleCommand 
    { 
     switch ($type) { 
      case 'user': 
-    if (!preg_match('/^[a-z0-9_-]{3,16}$/', $value)) { 
-     throw new \RuntimeException('Username should be between 3 and 16 characters, including lowercase letters, numbers, underscores, and hyphens. Uppercase letters, spaces, and special characters are not allowed'); 
-    } 
       if (file_exists(Grav::instance()['locator']->findResource('account://' . $value . YAML_EXT))) { 
        throw new \RuntimeException('Username "' . $value . '" already exists, please pick another username'); 
       } 
@@ -247,10 +244,6 @@ class NewUserCommand extends ConsoleCommand 
       break; 

      case 'password1': 
-    if (!preg_match('/(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,}/', $value)) { 
-     throw new \RuntimeException('Password must contain at least one number and one uppercase and lowercase letter, and at least 8 or more characters'); 
-    } 
- 
       break; 

      case 'password2': 
+2

Я не знаю, что такое Grav, но если вы собираетесь изменить ''^[a-z0-9 _-] {3,16} $ ''to'' '', вы можете захотеть сделать это' '. *' ', поэтому существует хотя бы допустимый шаблон. – Scuzzy

ответ

1

Существует уже способ изменения, который непосредственно включен в Grav, не касаясь исходного кода.

Если вы идете в панели администратора, в разделе Конфигурация, есть пункт под названием «Advanced», где вы можете настроить соответственно «Имя пользователя Regex» и «Пароль Regex»

По умолчанию имя пользователя регулярное выражение ^[a-z0-9_-]{3,16}$ и может быть , как указано @Scuzzy в комментарии, изменилось на ^(.*)^, чтобы принять каждого символа.

BTW безопасность и удобочитаемость мудро, я рекомендую вам не использовать это регулярное выражение, если вы не хотите, чтобы на вашем веб-сайте находились не имена, например^= - è.

Я рекомендую вам не касаться исходного кода Grav напрямую, так как каждое изменение может быть отменено каждый раз, когда вы обновляете Grav. Если вы действительно хотите что-то изменить в источнике, подумайте о создании его в качестве плагина (даже для личного использования), чтобы сохранить возможность обновления.

+0

В чем разница между '^ (. *) ^' И '. *'? Смелые работы. –