Всем добрый день!
Использую Jquery Layout.
views/layouts/main.php
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="language" content="ru" />
<link rel="stylesheet" type="text/css" href="<?php echo Yii::app()->theme->baseUrl; ?>/css/default.css" />
<link rel="stylesheet" type="text/css" href="<?php echo Yii::app()->theme->baseUrl; ?>/css/bootstrap/hack.css" />
<?php Yii::app()->clientScript->registerScriptFile('/js/jquery.layout.js'); ?>
<?php Yii::app()->getClientScript()->registerScriptFile(
Yii::app()->clientScript->getCoreScriptUrl() . '/jui/js/jquery-ui.min.js'); ?>
<?php Yii::app()->clientScript->registerCssFile(
Yii::app()->clientScript->getCoreScriptUrl() . '/jui/css/base/jquery-ui.css'); ?>
<title><?php echo CHtml::encode($this->pageTitle); ?></title>
</head>
<body>
<div id="container">
<div class="ui-layout-north" onmouseover="myLayout.allowOverflow(this)" onmouseout="myLayout.resetOverflow(this)">
<?php $this->renderPartial('//layouts/navBar'); ?>
<?php if (isset($this->breadcrumbs)): ?>
<div id="breadcrumbs">
<?php $this->widget('bootstrap.widgets.BootCrumb', array('links' => $this->breadcrumbs,)); ?>
</div>
<?php endif ?>
</div>
<?php echo $content; ?>
</div>
</body>
views\layouts\column2.php
<?php $this->beginContent('//layouts/main'); ?>
<div id="content" class="ui-layout-center">
<?php echo $content; ?>
</div>
<div class="ui-layout-east">
<?php $this->widget('bootstrap.widgets.BootMenu', array(
'type'=>'list',
'items'=>$this->menu,
)); ?>
</div>
<?php Yii::app()->clientScript->registerScript(
'myLayout', "myLayout = $('#container').layout({
zIndex: 0,
east__applyDefaultStyles: true, east__resizable: true, east__closable: true, east__size: 250,
north__resizable: false, north__closable: false, north__spacing_open: -18
});
myLayout.panes.center.css('overflow','auto');
myLayout.panes.east.css('overflow-y','none');
myLayout.panes.east.css('border-top','none');
myLayout.panes.east.css('border-bottom','none');"
); ?>
<?php $this->endContent(); ?>
И использую диалог (из виджета bootstrap)
Когда дилог находится в представлении, внтури layout_center, то он и выводится только в этом layout.
Мне необходимо, чтоб диалог отображался поверх всех layout, т.е., мне необходимо чтобы на странице он был добавлен после ui-layout-east.
Приведу пример.
В JSF есть такие теги
<ui:insert name="dialog"/>
и
<ui:define name="dialog">
Диалог
</ui:define>
ui:insert - определяется в шаблоне.
ui:define - в представлении.
При обработке представления, из него берутся указанные теги и подставляются в шаблон в соответствующее место.
Вот хотелось бы узнать, есть ли реализации чего-то подобного в Yii?
Т.е., чтобы я в макете main (или в column2) указал, что внизу должен быть диалог. И при рендеринге, если он указан в представлении, диалог был туда подставлен.
Если есть какие-то другие варианты решения данной задачи, хотелось бы их выслушать, если вас не затруднит поделиться.