axis / axiscommerce

Open Source Shopping Cart
axiscommerce.com
GNU General Public License v3.0
1 stars 1 forks source link

Форма обратной связи: как убрать выбор отдела? #186

Closed kehskas closed 12 years ago

kehskas commented 12 years ago

Нет необходимости сортировать обращения пользователей. Элемент формы с выбором отдела получателя - не нужен. Как его убрать и сделать так чтобы все письма приходили на один емейл?

kehskas commented 12 years ago

Уточню вопрос - в каком месте этот элемент вместе с подписью можно сделать hidden?

kehskas commented 12 years ago

Если в admin/contacts удалить все отделы, сообщения в админку доходят правда с какой-то билебирдой в поле Full name (Пользовательские поля: {"Full name":"\u041c\u0438\u044f"}), и пользователю во фронтэнде после отправки сообщается об ошибке.

Возможно ли добавить логику при которой при наличии одного отдела или их полном отсутствии, элемент формы выбора отделов не отображался а все сообщения маршрутизировались бы на один емейл по умолчанию?

kehskas commented 12 years ago

При попытке ответить из админки на сообщение отправленное способом из предыдущего комментария (удалены все отделы) получаем: Notice: Trying to get property of non-object in ****/app/code/Axis/Contacts/controllers/Admin/IndexController.php on line 107

kehskas commented 12 years ago

app/code/Axis/Contacts/Model/Form/Message.php изменения начиная со строки 73

    if (count($departments) > 1) {
        $this->addElement('select', 'department_id', array(
           'label' => 'Department'
        ));
        $this->getElement('department_id')->options = $departments;
    } elseif (count($departments) == 1) {
        $this->addElement('hidden', 'department_id', array(
           'value' => key($departments)
        ));
        $this->getElement('department_id')->options = $departments;
    } else {
        # что-то сделать если список отделов пуст
    }

Результат: если имеем всего один отдел, элемент формы select для выбора отделов не выводится, вместо него input type=hidden с нужным нам id единственного отдела. В случае если отделов больше одного, ничего не меняется.

Что подсовывать если отделов нет совсем - не придумал.