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

Статус в управлении объявлениями

СообщениеДобавлено: 24 янв 2017, 18:00
uokiselev
Добрый день. Подскажите пожалуйста, как в управлении объявлениями добавить новый статус: например назвать его архив.

Re: Статус в управлении объявлениями

СообщениеДобавлено: 24 янв 2017, 20:08
Xpycm
Здравствуйте.

В файле protected\modules\apartments\models\Apartment.php
после:
Код: Выделить всё
const STATUS_DRAFT 3


добавьте:
Код: Выделить всё
const STATUS_ARCHIVE 4


в методе getModerationStatusArray
после:
Код: Выделить всё
$status[self::STATUS_MODERATION] = CHtml::encode(tt('Awaiting moderation''common')); 


добавьте:
Код: Выделить всё
$status[self::STATUS_ARCHIVE] = tt('Архив''common'); 

Re: Статус в управлении объявлениями

СообщениеДобавлено: 25 янв 2017, 10:30
uokiselev
спасибо большое! всё получилось!
только с таким кодом не работает $status[self::STATUS_ARCHIVE] = tt('Архив', 'common');
а надо ещё добавить скобочки $status[self::STATUS_ARCHIVE] = (tt('Архив', 'common'));

Re: Статус в управлении объявлениями

СообщениеДобавлено: 15 фев 2017, 17:09
uokiselev
Xpycm писал(а):Здравствуйте.

В файле protected\modules\apartments\models\Apartment.php
после:
Код: Выделить всё
const STATUS_DRAFT = 3;


добавьте:
Код: Выделить всё
const STATUS_ARCHIVE = 4;


в методе getModerationStatusArray
после:
Код: Выделить всё
$status[self::STATUS_MODERATION] = CHtml::encode(tt('Awaiting moderation', 'common'));


добавьте:
Код: Выделить всё
$status[self::STATUS_ARCHIVE] = tt('Архив', 'common');


Ещё пару вопросиков. "Архив" получилось сделать, но объявления в нём не долго находятся. Через какое-то время возвращаются опять в "неактивные". Как сделать чтобы они всё время там находились?

Re: Статус в управлении объявлениями

СообщениеДобавлено: 16 фев 2017, 11:03
andipas
В файле protected/components/BeginRequest.php

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

        $sql 
'SELECT a.id, u.role '
            
' FROM {{apartment}} a '
            
' LEFT JOIN {{users}} u ON u.id = a.owner_id '
            
' WHERE '
            
' a.date_end_activity <= NOW() AND a.activity_always != 1 AND (a.active='.Apartment::STATUS_ACTIVE.' OR a.owner_active='.Apartment::STATUS_ACTIVE.') AND a.active <> '.Apartment::STATUS_DRAFT;
 


замените на
Код: Выделить всё

        $sql 
'SELECT a.id, u.role '
            
' FROM {{apartment}} a '
            
' LEFT JOIN {{users}} u ON u.id = a.owner_id '
            
' WHERE '
            
' a.date_end_activity <= NOW() AND a.activity_always != 1 AND (a.active='.Apartment::STATUS_ACTIVE.' OR a.owner_active='.Apartment::STATUS_ACTIVE.') AND a.active <> '.Apartment::STATUS_DRAFT.' AND a.active <> '.Apartment::STATUS_ARCHIVE;