mirror of
https://github.com/Oreolek/ifhub.club.git
synced 2024-05-17 00:08:17 +03:00
из модуля Viewer удалена логика по определению разных видов блоков. Теперь группировать блоки можно из экшенов
This commit is contained in:
parent
2367a27ff6
commit
755cb02eba
|
@ -93,7 +93,7 @@ class ActionBlog extends Action {
|
|||
/**
|
||||
* Определяем какие блоки нужно выводить справа
|
||||
*/
|
||||
$this->Viewer_AddBlocksRight(array('comments','tags','blogs'));
|
||||
$this->Viewer_AddBlocks('right',array('comments','tags','blogs'));
|
||||
/**
|
||||
* Подсчитываем новые топики
|
||||
*/
|
||||
|
|
|
@ -56,7 +56,7 @@ class ActionIndex extends Action {
|
|||
*
|
||||
*/
|
||||
public function Init() {
|
||||
$this->Viewer_AddBlocksRight(array('comments','tags','blogs'));
|
||||
$this->Viewer_AddBlocks('right',array('comments','tags','blogs'));
|
||||
/**
|
||||
* Подсчитываем новые топики
|
||||
*/
|
||||
|
|
|
@ -130,7 +130,7 @@ class ActionLink extends Action {
|
|||
/**
|
||||
* Добавляем блок вывода информации о блоге
|
||||
*/
|
||||
$this->Viewer_AddBlocksRight(array('block.blogInfo.tpl'));
|
||||
$this->Viewer_AddBlocks('right',array('block.blogInfo.tpl'));
|
||||
/**
|
||||
* Получаем данные для отображения формы
|
||||
* Если админ то делаем доступными все блоги
|
||||
|
@ -202,7 +202,7 @@ class ActionLink extends Action {
|
|||
/**
|
||||
* Добавляем блок вывода информации о блоге
|
||||
*/
|
||||
$this->Viewer_AddBlocksRight(array('block.blogInfo.tpl'));
|
||||
$this->Viewer_AddBlocks('right',array('block.blogInfo.tpl'));
|
||||
/**
|
||||
* Получаем данные для отображения формы
|
||||
*/
|
||||
|
|
|
@ -42,7 +42,7 @@ class ActionLog extends Action {
|
|||
/**
|
||||
* Добавляем блоки для отображения
|
||||
*/
|
||||
$this->Viewer_AddBlocksRight(array('comments','tags'));
|
||||
$this->Viewer_AddBlocks('right',array('comments','tags'));
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -56,7 +56,7 @@ class ActionNew extends Action {
|
|||
*
|
||||
*/
|
||||
public function Init() {
|
||||
$this->Viewer_AddBlocksRight(array('comments','tags','blogs'));
|
||||
$this->Viewer_AddBlocks('right',array('comments','tags','blogs'));
|
||||
/**
|
||||
* Подсчитываем новые топики
|
||||
*/
|
||||
|
|
|
@ -98,7 +98,7 @@ class ActionQuestion extends Action {
|
|||
/**
|
||||
* Добавляем блок вывода информации о блоге
|
||||
*/
|
||||
$this->Viewer_AddBlocksRight(array('block.blogInfo.tpl'));
|
||||
$this->Viewer_AddBlocks('right',array('block.blogInfo.tpl'));
|
||||
/**
|
||||
* Получаем данные для отображения формы
|
||||
*/
|
||||
|
@ -168,7 +168,7 @@ class ActionQuestion extends Action {
|
|||
/**
|
||||
* Добавляем блок вывода информации о блоге
|
||||
*/
|
||||
$this->Viewer_AddBlocksRight(array('block.blogInfo.tpl'));
|
||||
$this->Viewer_AddBlocks('right',array('block.blogInfo.tpl'));
|
||||
/**
|
||||
* Получаем данные для отображения формы
|
||||
*/
|
||||
|
|
|
@ -28,7 +28,7 @@ class ActionTag extends Action {
|
|||
/**
|
||||
* Определяем какие блоки выводить
|
||||
*/
|
||||
$this->Viewer_AddBlocksRight(array('tags','comments'));
|
||||
$this->Viewer_AddBlocks('right',array('tags','comments'));
|
||||
}
|
||||
|
||||
protected function RegisterEvent() {
|
||||
|
|
|
@ -100,7 +100,7 @@ class ActionTopic extends Action {
|
|||
/**
|
||||
* Добавляем блок вывода информации о блоге
|
||||
*/
|
||||
$this->Viewer_AddBlocksRight(array('block.blogInfo.tpl'));
|
||||
$this->Viewer_AddBlocks('right',array('block.blogInfo.tpl'));
|
||||
/**
|
||||
* Получаем данные для отображения формы
|
||||
* Если админ то делаем доступными все блоги
|
||||
|
@ -165,7 +165,7 @@ class ActionTopic extends Action {
|
|||
/**
|
||||
* Добавляем блок вывода информации о блоге
|
||||
*/
|
||||
$this->Viewer_AddBlocksRight(array('block.blogInfo.tpl'));
|
||||
$this->Viewer_AddBlocks('right',array('block.blogInfo.tpl'));
|
||||
/**
|
||||
* Получаем данные для отображения формы
|
||||
*/
|
||||
|
|
|
@ -27,14 +27,13 @@ class Viewer extends Module {
|
|||
*
|
||||
* @var Smarty
|
||||
*/
|
||||
protected $oSmarty;
|
||||
protected $oSmarty;
|
||||
/**
|
||||
* Коллекция(массив) блоков.
|
||||
* Обозначение $aBlockRight вместо $aBlock исключительно с целью дальнейшего расширения :)
|
||||
* Коллекция(массив) блоков
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
protected $aBlockRight=array();
|
||||
protected $aBlocks=array();
|
||||
/**
|
||||
* Заголовок HTML страницы
|
||||
*
|
||||
|
@ -91,12 +90,12 @@ class Viewer extends Module {
|
|||
$this->Assign("DIR_STATIC_ROOT",DIR_STATIC_ROOT);
|
||||
$this->Assign("SITE_NAME",SITE_NAME);
|
||||
$this->Assign("DIR_UPLOADS_IMAGES",DIR_UPLOADS_IMAGES);
|
||||
|
||||
|
||||
$this->Assign("USER_USE_INVITE",USER_USE_INVITE);
|
||||
/**
|
||||
* Загружаем список блоков
|
||||
*/
|
||||
$this->Assign("aBlockRight",$this->aBlockRight);
|
||||
$this->Assign("aBlocks",$this->aBlocks);
|
||||
/**
|
||||
* Загружаем HTML заголовки
|
||||
*/
|
||||
|
@ -156,7 +155,7 @@ class Viewer extends Module {
|
|||
* @param string $sName
|
||||
* @param arra $aParams - параметры блока, которые будут переданы обработчику блока
|
||||
*/
|
||||
public function AddBlockRight($sName,$aParams=array()) {
|
||||
public function AddBlock($sGroup,$sName,$aParams=array()) {
|
||||
/**
|
||||
* Если смогли определить тип блока то добавляем его
|
||||
*/
|
||||
|
@ -164,7 +163,7 @@ class Viewer extends Module {
|
|||
if ($sType=='undefined') {
|
||||
return false;
|
||||
}
|
||||
$this->aBlockRight[]=array(
|
||||
$this->aBlocks[$sGroup][]=array(
|
||||
'type' => $sType,
|
||||
'name' => $sName,
|
||||
'params' => $aParams,
|
||||
|
@ -177,22 +176,32 @@ class Viewer extends Module {
|
|||
*
|
||||
* @param array $aBlocks
|
||||
*/
|
||||
public function AddBlocksRight($aBlocks) {
|
||||
public function AddBlocks($sGroup,$aBlocks) {
|
||||
/**
|
||||
* Удаляем ранее добавленые блоки
|
||||
*/
|
||||
$this->ClearBlocksRight();
|
||||
$this->ClearBlocks($sGroup);
|
||||
foreach ($aBlocks as $sBlock) {
|
||||
$this->AddBlockRight($sBlock);
|
||||
$this->AddBlock($sGroup,$sBlock);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Удаляет блоки
|
||||
* Удаляет блоки группы
|
||||
*
|
||||
*/
|
||||
public function ClearBlocksRight() {
|
||||
$this->aBlockRight=array();
|
||||
public function ClearBlocks($sGroup) {
|
||||
$this->aBlocks[$sGroup]=array();
|
||||
}
|
||||
/**
|
||||
* Удаляет блоки всех групп
|
||||
*
|
||||
* @param unknown_type $sGroup
|
||||
*/
|
||||
public function ClearBlocksAll() {
|
||||
foreach ($this->aBlocks as $sGroup => $aBlock) {
|
||||
$this->aBlocks[$sGroup]=array();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -164,8 +164,8 @@ var msgNoticeBox=new Roar({
|
|||
<DIV id=content>
|
||||
<DIV id=right>
|
||||
|
||||
|
||||
{foreach from=$aBlockRight item=aBlock}
|
||||
{if isset($aBlocks.right)}
|
||||
{foreach from=$aBlocks.right item=aBlock}
|
||||
{if $aBlock.type=='block'}
|
||||
{insert name="block" block=`$aBlock.name` params=`$aBlock.params`}
|
||||
{/if}
|
||||
|
@ -173,7 +173,7 @@ var msgNoticeBox=new Roar({
|
|||
{include file=`$aBlock.name` params=`$aBlock.params`}
|
||||
{/if}
|
||||
{/foreach}
|
||||
|
||||
{/if}
|
||||
|
||||
|
||||
</DIV>
|
||||
|
|
Loading…
Reference in a new issue