Переопределите CustomerFormatter.php для формы рождения - PullRequest
0 голосов
/ 10 июня 2018

Я бы хотел, чтобы поле дня рождения было обязательным, поэтому я перезаписываю CustomerFormatter, но оно не работает вообще.Вот как я это сделал:

<?php

class CustomerFormatter extends CustomerFormatterCore
{
    public function getFormat()
    {
        $customerForm = parent::getFormat();

        if ($customerForm->ask_for_birthdate) {
            $format['birthday'] = (new FormField)
                ->setName('birthday')
                ->setType('text')
                ->setLabel(
                    $customerForm->translator->trans(
                        'Birthdate', [], 'Shop.Forms.Labels'
                    )
                )
                ->addAvailableValue('placeholder', Tools::getDateFormat())
                ->addAvailableValue(
                    'comment',
                    $customerForm->translator->trans('(E.g.: %date_format%)', array('%date_format%' => Tools::formatDateStr('31 May 1970')), 'Shop.Forms.Help')
                )
                ->setRequired(true)
            ;
        }
    }
}

Я нахожусь под Prestashop 1.7.3.3

У вас есть идея проблемы?Спасибо за вашу помощь

1 Ответ

0 голосов
/ 24 апреля 2019

Возможно, поздно для вас, но это может помочь другим, к сожалению, это невозможно с 1,7.

"Да, переопределения работают как обычно для всех классов, у которых нет пространства имен (так что вы все равно можете переопределить Product, Addressи т. д.). "

http://build.prestashop.com/news/prestashop-1-7-faq/#can-developers-still-use-overrides-in-17

...