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

Похожие объявления

СообщениеДобавлено: 02 дек 2013, 18:05
Денис
В каком файле формируется данный список и возможно ли изменить К примеру чтобы прокручивались спецпредложения?

Re: Похожие объявления

СообщениеДобавлено: 02 дек 2013, 19:06
Xpycm
Файл protected\modules\similarads\components\SimilarAdsWidget.php, метод viewSimilarAds()

Если хотите только спец. предложения, то удаляете:
Код: Выделить всё
if (issetModule('location') && param('useLocation'1)) {
    if (
$data->loc_city) {
        
$criteria->addCondition('loc_city = :loc_city');
        
$criteria->params[':loc_city'] = $data->loc_city;
    }
}
else {
    if (
$data->city_id) {
        
$criteria->addCondition('city_id = :city_id');
        
$criteria->params[':city_id'] = $data->city_id;
    }
}

if (
$data->obj_type_id) {
    
$criteria->addCondition('obj_type_id = :obj_type_id');
    
$criteria->params[':obj_type_id'] = $data->obj_type_id;
}
if (
$data->type) {
    
$criteria->addCondition('type = :type');
    
$criteria->params[':type'] = $data->type;
}
if (
$data->price_type) {
    
$criteria->addCondition('price_type = :price_type');
    
$criteria->params[':price_type'] = $data->price_type;


и вместо всего этого вставляете:
Код: Выделить всё
$criteria->addCondition('is_special_offer = 1'); 


За вывод непосредственно превьюшек объявлений отвечает файл protected\modules\similarads\views\widgetSimilarAds_list.php

Re: Похожие объявления

СообщениеДобавлено: 03 дек 2013, 03:34
Денис
Спасибо...у меня там вот так....правельно сделал?
Код: Выделить всё
class SimilarAdsWidget extends CWidget {

    public function 
getViewPath($checkTheme=false){
        return 
Yii::getPathOfAlias('application.modules.similarads.views');
    }

    public function 
viewSimilarAds($data null) {
        
$similarAds = new SimilarAds;

        
$criteria = new CDbCriteria;
        
$criteria->addCondition('active = '.Apartment::STATUS_ACTIVE);
        
/*if (param('useUserads'))
            $criteria->addCondition('owner_active = '.Apartment::STATUS_ACTIVE);

        if ($data->id) {
            $criteria->addCondition('t.id != :id');
            $criteria->params[':id'] = $data->id;
        }
        if ($data->city_id) {
            $criteria->addCondition('city_id = :city_id');
            $criteria->params[':city_id'] = $data->city_id;
        }
        if ($data->obj_type_id) {
            $criteria->addCondition('obj_type_id = :obj_type_id');
            $criteria->params[':obj_type_id'] = $data->obj_type_id;
        }
        if ($data->type) {
            $criteria->addCondition('type = :type');
            $criteria->params[':type'] = $data->type;
        }
        if ($data->price_type) {
            $criteria->addCondition('price_type = :price_type');
            $criteria->params[':price_type'] = $data->price_type;
        }Денис удалил*/
        
        
$criteria->addCondition('is_special_offer = 1'); 
        
$criteria->limit param('countListitng'.User::getModeListShow(), 10);
        
$criteria->order 't.id ASC';

        
$ads $similarAds->getSimilarAds($criteria);

        if(
$ads){
            
$similarAds->publishAssets();
        }

        
$this->render('widgetSimilarAds_list', array(
            
'ads' => $ads,
        ));
    }

Re: Похожие объявления

СообщениеДобавлено: 03 дек 2013, 06:07
Xpycm
Нет.
Уберите из закомментированного:
Код: Выделить всё
if (param('useUserads'))
    
$criteria->addCondition('owner_active = '.Apartment::STATUS_ACTIVE);

if (
$data->id) {
    
$criteria->addCondition('t.id != :id');
    
$criteria->params[':id'] = $data->id;

Re: Похожие объявления

СообщениеДобавлено: 03 дек 2013, 13:17
Денис
спасибо

Re: Похожие объявления

СообщениеДобавлено: 30 июл 2015, 08:23
vanred79
А возможно чтобы не удаляя Похожие объявления сделать? Т.е. сначала показывается спец. предложения, а ниже похожие объявления?

Re: Похожие объявления

СообщениеДобавлено: 30 июл 2015, 10:28
andipas
vanred79 писал(а):А возможно чтобы не удаляя Похожие объявления сделать? Т.е. сначала показывается спец. предложения, а ниже похожие объявления?


Можно, но это будет платная доработка.

Re: Похожие объявления

СообщениеДобавлено: 25 сен 2015, 20:09
vanred79
Добрый день Хруст! А возможно сделать так: если есть подходящие спец.предложения (по городу, типу), то показывать их, если нет, то показывать обычные объявления? Т.е. чтобы спец.предложения показывались только по городу и типу недвижимости. Например, есть 3 спец. предложения в городе х одного типа (квартиры продажа), нужно будет, чтобы в объявлениях города х с типом квартиры продажа в Похожих отобразилось 3 спец.предложения и 2 обычных.

Re: Похожие объявления

СообщениеДобавлено: 29 сен 2015, 16:26
Koduc
vanred79, эт тоже платная доработка будет. Надо писать разные условия и делать подсчет по ним..