Хорошо, я обошёл проблему, изменив sfPropelPager.class.php и поместив его в новый файл класса, который я назвал atPropelPagerOffset.class.php
Он работает точно так же, за исключением того, что принимает дополнительный параметр, $offset
Итак, верхняя часть файла выглядит так:
protected
$criteria = null,
$peer_method_name = 'doSelect',
$peer_count_method_name = 'doCount',
$offset = 0;
public function __construct($class, $maxPerPage = 10, $offset = 0)
{
parent::__construct($class, $maxPerPage);
$this->setCriteria(new Criteria());
$this->tableName = constant($class.'Peer::TABLE_NAME');
$this->offset = $offset;
}
Затем я сделал это крошечное изменение в строке 50
.
$c->setOffset($offset+$this->offset);
Работает угощение!