OpenCart и обязательные поля

disker

Гуру форума
Регистрация
28 Авг 2007
Сообщения
626
Реакции
67
Как в OpenCarte назначить при регистрации покупателя необязательные поля обязательными? Например есть поле Адрес 2 и оно необязательное при регистрации, а я хочу сделать его обязательным для заполнения. На оффоруме жду ответа уже 2 дня и реакции пока 0 o_O
 
Для этого есть модули. Смотри на максзоне
 
Реакции 0, потому что там уже много раз обсуждалась эта тема.

Вам надо всего то пройти по пути: catalog\view\theme\default\template\account в файл - register.tpl
в нем вы увидите что у всех обязательных есть вот такой код: <span class="required">*</span> - оное и отвечает за обязательность.
Просканируйте код и добавте по аналогии к тем полям которые вам нужны сию приписку и будет Вам счастье)
 
Реакции 0, потому что там уже много раз обсуждалась эта тема.

Вам надо всего то пройти по пути: catalog\view\theme\default\template\account в файл - register.tpl
в нем вы увидите что у всех обязательных есть вот такой код: <span class="required">*</span> - оное и отвечает за обязательность.
Просканируйте код и добавте по аналогии к тем полям которые вам нужны сию приписку и будет Вам счастье)
Вообщето это не отвечает за обязательность, это только показывает пользователю что нужно заполнить :)
Проверка обязательности:
/catalog/controller/account/register.php
Функция validate() ;)
PHP:
private function validate() {
    	if ((strlen(utf8_decode($this->request->post['firstname'])) < 1) || (strlen(utf8_decode($this->request->post['firstname'])) > 32)) {
      		$this->error['firstname'] = $this->language->get('error_firstname');
    	}

    	if ((strlen(utf8_decode($this->request->post['lastname'])) < 1) || (strlen(utf8_decode($this->request->post['lastname'])) > 32)) {
      		$this->error['lastname'] = $this->language->get('error_lastname');
    	}

.....
первое прoверяет длину введенного имени, второе длину введенной фамилиии и т.д...
 
В общет это не отвечает за обязательность, это только показывает пользователю что нужно заполнить :)
Проверка обязательности:
/catalog/controller/account/register.php
Функция validate() ;)
PHP:
private function validate() {
    if ((strlen(utf8_decode($this->request->post['firstname'])) < 1) || (strlen(utf8_decode($this->request->post['firstname'])) > 32)) {
      $this->error['firstname'] = $this->language->get('error_firstname');
    }
 
    if ((strlen(utf8_decode($this->request->post['lastname'])) < 1) || (strlen(utf8_decode($this->request->post['lastname'])) > 32)) {
      $this->error['lastname'] = $this->language->get('error_lastname');
    }
 
.....
первое проверяет длину введенного имени, второе длину введенной фамилии и т.д...

Действительно, об этом я не подумал :ay:
 
На самом деле проще установить модуль, где эти поля можно выбирать из админки, а не копаться в коде. В соседнем топик такие модули выкладывались неоднократно.
 
Как в OpenCarte назначить при регистрации покупателя необязательные поля обязательными? Например есть поле Адрес 2 и оно необязательное при регистрации, а я хочу сделать его обязательным для заполнения. На оффоруме жду ответа уже 2 дня и реакции пока 0 o_O
Советую приглянуться к модулю Simple Для просмотра ссылки Войди или Зарегистрируйся. (ссылки для скачки есть в соседних темах) На сколько я понял там немного другая логика, но смысл в том что там есть возможность указать только те поля которые необходимы для заполнения, а остальные скрываются. Да и вообще это очень мощный модуль, а также в нем пригодятся и другие фишки
 
Подскажите пожалуйста
не получаеться отловить проверку на обязательность в удаленном поле city
в модуле Оформление заказа на одной странице
посмотрев файлы модуля этого поля невидно
в дефолтном модуле регистрации эти проверки посносил, регистрация работает,
а через модуль кидает ошибку
Код:
PHP Notice: Undefined index: city in public_html/vqmod/vqcache/vq2-catalog_controller_checkout_register.php on line 44

Разобрался
 
Модуль Simple - регистрация и заказ прекрасно справиться с задачей, даже может убрать не нужные поля
 
А у меня вот Simpla с Delivery Date PRO не дружит . Если Simpla включён модуль то ДАТА не работает....
Печалька (((
 
Назад
Сверху