Страница 1 из 1

Форма поиска дать другой класс

СообщениеДобавлено: 21 авг 2014, 13:19
kjra
Здравствуйте! Возник вопрос, возможно ли сделать для "Типа недвижимости" свой класс, при этом остальные параметры поиска должны иметь существующий.
пример как надо
Код: Выделить всё
<div id="search_form" class="inner_form">
<
div class="search_inner_new">...</div>
<
div class="search_inner_row">...</div>
<
div class="search_inner_row">...</div>
<
div class="search_inner_row">...</div>
<
div class="search_inner_row">...</div>
</
div

При этом в search_form.php цикл с перебором(возможно я ошибаюсь, с php никогда не имел дело):
Код: Выделить всё
foreach ($searchFields as $search) {
    if ($isInner) {
        $divClass = 'search_inner_row';
    } else {
        $divClass = 'header-form-line';
    }

    if ($search->status <= SearchFormModel::STATUS_NOT_REMOVE) {
       $this->renderPartial('//site/_search_field_' . $search->field, array(
            'divClass' => $divClass,
            'textClass' => 'formalabel',
            'controlClass' => 'formacontrol',
            'fieldClass' => 'width290 search-input-new',
            'minWidth' => '290',
            'isInner' => $isInner,
        ));
    } else {
        $this->renderPartial('//site/_search_new_field', array(
            'divClass' => $divClass,
            'textClass' => 'formalabel',
            'controlClass' => 'formacontrol',
            'fieldClass' => 'width290 search-input-new',
            'minWidth' => '290',
            'search' => $search,
            'isInner' => $isInner,
        ));
    } 

Как я понимаю необходимо перед
Код: Выделить всё
 if ($search->status <= SearchFormModel::STATUS_NOT_REMOVE) 
добавить обработчик* который найдет необходимое поле и присвоит определенный класс.
Что я пытался сделать и в результате чего получил много дублей "типа недвижимости" после каждого параметра, но со своим классом(это было логично из-за цикла):
Код: Выделить всё
foreach ($searchFields as $search) {
    if ($isInner) {
        $divClass = 'search_inner_row';
        $divClass_new = 'search_inner_new';
    } else {
        $divClass = 'header-form-line';
    }

    if ($search->status <= SearchFormModel::STATUS_NOT_REMOVE) {
    $this->renderPartial('//site/_search_field_obj_type', array(
            'divClass' => $divClass_new,
            'textClass' => 'formalabel',
            'controlClass' => 'formacontrol',
            'fieldClass' => 'width290 search-input-new',
            'minWidth' => '290',
            'search' => $search,
        ));
    
       $this
->renderPartial('//site/_search_field_' . $search->field, array(
            'divClass' => $divClass,
            'textClass' => 'formalabel',
            'controlClass' => 'formacontrol',
            'fieldClass' => 'width290 search-input-new',
            'minWidth' => '290',
            'isInner' => $isInner,
        ));
    } else {
        $this->renderPartial('//site/_search_new_field', array(
            'divClass' => $divClass,
            'textClass' => 'formalabel',
            'controlClass' => 'formacontrol',
            'fieldClass' => 'width290 search-input-new',
            'minWidth' => '290',
            'search' => $search,
            'isInner' => $isInner,
        ));
    } 

p.s. в php не силен, ориентируюсь по логике и школьным знаниям.
Возможно кто-то сможет помочь;) и направить меня на путь истенный.

Re: Форма поиска дать другой класс

СообщениеДобавлено: 21 авг 2014, 20:26
andipas
Вроде бы так:

Код: Выделить всё

    foreach 
($searchFields as $search) {
        if ($isInner) {
            $divClass = 'search_inner_row';
        } else {
            $divClass = 'header-form-line';
        }

        if ($search->status <= SearchFormModel::STATUS_NOT_REMOVE) {

           if(
$search->field == 'obj_type'){
                 
$divClass 'name_new_class';
           }
        
           $this
->renderPartial('//site/_search_field_' . $search->field, array(
                'divClass' => $divClass,
                'textClass' => 'formalabel',
                'controlClass' => 'formacontrol',
                'fieldClass' => 'width290 search-input-new',
                'minWidth' => '290',
                'isInner' => $isInner,
            ));
        } else {
            $this->renderPartial('//site/_search_new_field', array(
                'divClass' => $divClass,
                'textClass' => 'formalabel',
                'controlClass' => 'formacontrol',
                'fieldClass' => 'width290 search-input-new',
                'minWidth' => '290',
                'search' => $search,
                'isInner' => $isInner,
            ));
        } 

 

Re: Форма поиска дать другой класс

СообщениеДобавлено: 25 авг 2014, 11:04
kjra
Большое спасибо.
очень помогло! еще раз приношу извинения за мою неграмотность в кодинге у богов программирования)