HI!Я использую Symfony 1.4.11.В моем проекте объявления всех пользователей доступны на сайте только тогда, когда у его владельца будет премиум-аккаунт. Проблема в том, что все объявления доступны по прямым ссылкам ... Поэтому я использую решение этой проблемы с 6-го дня Jobbet.Маршрутизация:
ads_show_user:
url: /:sf_culture/ads/:slug
class: sfDoctrineRoute
options: { model: Ads, type: object, method_for_query: retrievePayAd }
param: { module: ads, action: show }
requirements:
sf_method: [get]
sf_culture: (?:de|en|ru)
Модель:
public function retrievePayAd(Doctrine_Query $q)
{
$q ->leftJoin('a.Owner o')
->leftJoin('o.Profile p')
->andWhere('p.payed_until > NOW()')
->andWhere('a.active = ?',1)
->andWhere('a.expires_at > NOW()');
return $q->fetchOne();
}
И все отлично работает, но следующая проблема, что если владелец объявления не платит премию, он не может видеть расширенную версию своегообъявление тоже, как и все пользователи ... Можно ли перенаправить пользователя не на страницу 404, а на другую страницу, где я могу сказать пользователю, почему он не видит расширенную версию своего объявления?Или есть другой способ, которым владелец объявления может видеть расширенную версию?Спасибо!