насчет платных услуг

Ваши предложения по улучшению, новым модулям и т.д.

Модераторы: Xpycm, Koduc

Правила форума
ВНИМАНИЕ! Форум не является средством гарантированной поддержки клиентов и пользователей. Поэтому на быстрый ответ тут рассчитывать не нужно, как и на ответ вообще. Сотрудники отвечают по мере своих возможностей.

На форуме действует ограничение в 3 сообщения / сутки.
Если Вы хотите сказать "спасибо", то воспользуйтесь функцией "Повысить репутацию" - зелёная иконка "плюс" под ником ответившего.

насчет платных услуг

Сообщение vanred79 » 28 июл 2016, 18:13

Нужно как то выделить объявление (покрасить) в личном кабинете пользователя, если оно поднято или добавлено в спец.предложения. Просто некоторые пользователи не могут понять к каким объявлениям они применили платные услуги, так как срок действия платной услуги появляется только при наведении мыши
Вся недвижимость Астаны у нас на сайте
vanred79
Местная знаменитость
Местная знаменитость
 
Сообщения: 660
Зарегистрирован: 02 фев 2013, 18:42
Откуда: Казахстан
Очки репутации: 2

Re: насчет платных услуг

Сообщение andipas » 29 июл 2016, 13:28

Для этого случая в yii для таблиц используется параметр rowCssClassExpression

Таблица в юзерке формируется в файле themes/atlas/views/modules/userads/views/index.php

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

$this
->widget('NoBootstrapGridView', array(
    
'id'=>'userads-grid',
        
'rowCssClassExpression' => '$data->is_special_offer ? "red" : ""'// добавить сюда
 


таким способом строки с объявлением которое (добавлено в спец.предложения) будут иметь css класс red, укажите стили для этого класса чтобы строка была нужного цвета

также можно сделать так

Код: Выделить всё
'rowCssClassExpression' => '$data->getCssRow()',  


теперь в модели Apartment нужно реализовать код функции getCssRow

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

    
public function getCssRow(){
        if(
$this->is_special_offer || $this->date_up_search != '0000-00-00 00:00:00'){
            return 
'red';
        }
        return 
'';
    }
 
Часто задаваемые вопросы. Для правки файлов notepad++, netbeans, phpStorm. Для правки CSS firebug.
Аватара пользователя
andipas
Разработчик
Разработчик
 
Сообщения: 695
Зарегистрирован: 28 дек 2011, 22:37
Очки репутации: 30

Re: насчет платных услуг

Сообщение vanred79 » 30 июл 2016, 16:05

andipas большое спасибо за код! Теперь моим пользователям более понятно, какие объявления у них подняты
Вся недвижимость Астаны у нас на сайте
vanred79
Местная знаменитость
Местная знаменитость
 
Сообщения: 660
Зарегистрирован: 02 фев 2013, 18:42
Откуда: Казахстан
Очки репутации: 2

Re: насчет платных услуг

Сообщение vanred79 » 10 авг 2016, 12:16

Добрый день andipas! Подскажите а возможно сделать, чтобы значение title было видно постоянно без наведения мыши?
Вся недвижимость Астаны у нас на сайте
vanred79
Местная знаменитость
Местная знаменитость
 
Сообщения: 660
Зарегистрирован: 02 фев 2013, 18:42
Откуда: Казахстан
Очки репутации: 2

Re: насчет платных услуг

Сообщение andipas » 10 авг 2016, 12:21

Значение title и так видно в списке объявлений пользователя, скорее всего у вас были изменения в коде. Сравните с обычной версией.
Часто задаваемые вопросы. Для правки файлов notepad++, netbeans, phpStorm. Для правки CSS firebug.
Аватара пользователя
andipas
Разработчик
Разработчик
 
Сообщения: 695
Зарегистрирован: 28 дек 2011, 22:37
Очки репутации: 30

Re: насчет платных услуг

Сообщение mindeath » 17 фев 2022, 14:19

andipas писал(а):Для этого случая в yii для таблиц используется параметр rowCssClassExpression

Таблица в юзерке формируется в файле themes/atlas/views/modules/userads/views/index.php

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

$this
->widget('NoBootstrapGridView', array(
    'id'=>'userads-grid',
        'rowCssClassExpression' => '$data->is_special_offer ? "red" : ""', // добавить сюда
 


таким способом строки с объявлением которое (добавлено в спец.предложения) будут иметь css класс red, укажите стили для этого класса чтобы строка была нужного цвета

также можно сделать так

Код: Выделить всё
'rowCssClassExpression' => '$data->getCssRow()'


теперь в модели Apartment нужно реализовать код функции getCssRow

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

    public function getCssRow
(){
        if($this->is_special_offer || $this->date_up_search != '0000-00-00 00:00:00'){
            return 'red';
        }
        return '';
    }
 


Не совсем понял, к примеру у меня тема Базис и код в нужном фрагменте имеет такой вид:

<?php
$this->widget('NoBootstrapListView', array(
'afterAjaxUpdate' => 'function(){ if(typeof initBootstrapConfirm === "function"){initBootstrapConfirm();} }',
'dataProvider' => $model->search(),
'itemView' => '//modules/userads/views/_view_listing',
'viewData' => array(),
'itemsTagName' => 'ol',
'itemsCssClass' => 'my-listing-blocks',
'id' => 'my-listing-blocks',
'sortableAttributes' => array(),
));

Что куда нужно вставить, чтобы премиальные объявления имели цвет #DAA520 ?
mindeath
Незнакомец
 
Сообщения: 22
Зарегистрирован: 13 ноя 2021, 05:32
Очки репутации: 0


Вернуться в Улучшения

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2

cron