Невозможно вернуться к «Использовать по умолчанию» в полях даты - PullRequest
1 голос
/ 07 июля 2011

Я только что сообщил об ошибке в Magento (http://www.magentocommerce.com/bug-tracking/issue?issue=11842), и мне было интересно, если кто-то здесь когда-либо видел эту проблему и нашел решение.

Вот вещь:

Для любогополе типа даты на странице редактирования продукта в бэкэнде:

1 - переключиться на представление магазина

2 - снять отметку «Использовать по умолчанию» (для поля даты)

3-Выберите дату

4- Сохраните продукт и продолжите редактирование

5 - Еще раз отметьте «Использовать по умолчанию»

6 - Сохраните продукт и продолжите редактировать

«Используйтефлажок по умолчанию остается не отмеченным: (*

Значение поля пустое и редактируемое: (*

Я пробовал несколько поисков в Google и не нашел ответа, который работает.

Многиеспасибо, что поделился, у меня есть подсказка.

1 Ответ

1 голос
/ 07 июля 2011

Это было исправлено в CE 1.5 Вот как это исправить в предыдущих версиях.

Изменить приложение / код / ​​ядро ​​/ Маг / Eav / Модель / Сущность / Атрибут / Бэкэнд / Datetime.php

Заменить

public function beforeSave($object)
{
    $attributeName = $this->getAttribute()->getName();
    $_formated = $object->getData($attributeName . '_is_formated');
    if (!$_formated && $object->hasData($attributeName)) {
        try {
            $value = $this->formatDate($object->getData($attributeName));
        } catch (Exception $e) {
            throw new Exception("Invalid date.");
        }
        $object->setData($attributeName, $value);
        $object->setData($attributeName . '_is_formated', true);
    }
}

с

public function beforeSave($object)
{
    $attributeName = $this->getAttribute()->getName();
    $_formated = $object->getData($attributeName . '_is_formated');
    if (!$_formated && $object->hasData($attributeName)) {
        try {
            $value = $this->formatDate($object->getData($attributeName));
        } catch (Exception $e) {
            throw new Exception("Invalid date.");
        }

        if (is_null($value)) {
            $value = $object->getData($attributeName);
        }            

        $object->setData($attributeName, $value);
        $object->setData($attributeName . '_is_formated', true);
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...