<?php
/**
* СодеÑÐ¶Ð¸Ñ ÐºÐ»Ð°ÑÑ Feed
*
* @package energine
* @subpackage share
* @author dr.Pavka
* @copyright ColoCall 2007
* @version $Id: Feed.class.php,v 1.1 2008/04/03 09:56:15 pavka Exp $
*/
/**
* ÐбÑÑÑакÑнÑй клаÑÑ Ð¿Ñедок Ð´Ð»Ñ ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÐµÐ½Ñов оÑновÑваÑÑиÑ
ÑÑ Ð½Ð° ÑÑÑÑкÑÑÑе ÑайÑа
*
* @package energine
* @subpackage share
* @abstract
*/
abstract class Feed extends DBDataSet {
/**
* ÐонÑÑÑÑкÑÐ¾Ñ ÐºÐ»Ð°ÑÑа
*
* @param string $name
* @param string $module
* @param Document $document
* @param array $params
* @access public
*/
public function __construct($name, $module, Document $document, array $params = null) {
parent::__construct($name, $module, $document, $params);
$this->setProperty('title', $this->translate('TXT_'.strtoupper($this->getName())));
$this->setProperty('exttype', 'feed');
$this->setParam('onlyCurrentLang', true);
}
/**
* ФилÑÑÑÑем по Ñазделам
*
* @return void
* @access protected
*/
protected function main() {
$id = $this->document->getID();
if ($this->getParam('showAll')) {
$descendants = array_keys(
Sitemap::getInstance()->getTree()->getNodeById($id)->getDescendants()->asList(false)
);
$id = array_merge(array($id), $descendants);
}
$this->setFilter(array('smap_id'=>$id));
parent::main();
}
/**
* Ðелаем ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÐµÐ½Ñ Ð°ÐºÑивнÑм
*
* @return type
* @access protected
*/
protected function defineParams() {
return array_merge(
parent::defineParams(),
array(
'active' => true,
'showAll' =>false
)
);
}
}