lial писал(а):Обнаружил такое не очень хорошее поведение (проверил на вашей демке re-pro) - теперь под пользователем зайти нельзя, если не вернуть ему с админки email:
Пользователь когда залогинен и хочет сменить свою контактную информацию - можно от фонаря набрать любой валидный адрес мыла типа skdaskdjaslk@askljdalksdjas.asjkdasjd - и он поменяется. Соответственно в БД будет некорректный мыл и пользователь обратно не зайдет.
Как пофиксить чтобы пользователь не мог менять мыло после регистрации. Видеть соответсвенно видел, но менять не мог??
Причем запретить не на только средствами фронтенда, а чтобы на бекенде тоже не шло сохранения ?
Чтобы нельзя было менять мыло, нужно в модуле usercpanel изменить вывод формы. В версии до < 1.8 вывод формы в файле protected/modules/usercpanel/views/index.php
вместо:
- Код: Выделить всё
<div class="row">
<?php echo $form->labelEx($model,'email'); ?>
<?php echo $form->textField($model,'email',array('size'=>20,'maxlength'=>128, 'class' => 'width240')); ?>
<?php echo $form->error($model,'email'); ?>
</div>
можно сделать вывод, например так:
- Код: Выделить всё
<div class="row">
<?php echo $form->labelEx($model,'email'); ?>
<?php echo $model->email; ?>
<?php echo $form->error($model,'email'); ?>
</div>
в админке аналогично в файле protected/modules/users/views/backend/_form.php