Запретить юзеру изменять пароль

Прислано: KCEOH

вт, 27/03/2007 - 01:47

Собственно сабж...

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

Поиск дал http://www.drupal.ru/node/1776, и http://drupal.org/project/user_readonly

в 5.* модуль user_readonly работает весьма криво (точнее не работает нихрена - мало того, что ошибок на пару экранов вываливается, дак еще и запрет на поля не действует).

Есть ли какой-либо еще способ, кроме хаков user.module ?

Комментарии


Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Применить"
Опубликовано KCEOH в вт, 27/03/2007 - 09:18.

Мало ли кому-то нужно еще будет...
Открываем modules\user\user.module, комментируем нужные строчки

1) Убрать "Запросить новый пароль" из формы логина:


500: $items[] = l(t('Request new password'), 'user/password', array('title' => t('Request new password via e-mail.')));

2) Убрать формочку "Имя пользователя или адрес электронной почты:" на странице учетной записи пользователя, а заодно и возможность получения пароля (т.е. убирает не только форму, но и не обрабатывает данные - говорит, что не существует логин/email)

1028: function user_pass() {
... комментируем все содержимое
1043: }

3) Убрать форму изменения пароля со страницы редактирования профиля + обработку этой формы.
Найти

1029: function user_edit_form

В ней комментируем блок

  if (!$register) {
    $form['account']['pass'] = array('#type' => 'password_confirm',
      '#description' => t('To change the current user password, enter the new password in both fields.'),
      '#size' => 25,
    );
  }
  elseif (!variable_get('user_email_verification', TRUE) || $admin) {
    $form['account']['pass'] = array(
      '#type' => 'password_confirm',
      '#description' => t('Provide a password for the new account in both fields.'),
      '#required' => TRUE,
      '#size' => 25,
    );
  }

Можно еще на всякий случай закоментировать содержимое

1059: function user_pass_submit

и кусок

686: function user_menu


711: $items[] = array('path' => 'user/reset', 'title' => t('Reset password'),
712:   'callback' => 'drupal_get_form', 'callback arguments' => array('user_pass_reset'), 'access' => TRUE, 'type' => MENU_CALLBACK);


Опубликовано ultraboy@drupal.org в вт, 27/03/2007 - 10:11.

Может быть, этот модуль сможет помочь? http://drupal.org/project/user_readonly


Опубликовано KCEOH в вт, 27/03/2007 - 15:17.

Первое сообщение повнимательнее прочитать надо ;)


Опубликовано Kum@her в вт, 22/11/2011 - 11:40.

себе в заметку