Есть вид, который условно называется «Хитрая рамка с финдиперсовым оформлением» (designframe). Другие виды должны помещать свой контент в такую рамку.
Как лучше всего это делать? Причем так, чтобы не ломалась подсветка HTML-кода, то есть так, чтобы не помещать HTML-код вида в переменную.
О чем я говорю. Вот простой вид login.php, отвечающий за логин. Он состоит из формы с текстовыми полями и кнопками:
<form name="login_form" action="/user/login/enter" method="post">
<p>Логин</p>
<p><input type="text" size="15" name="login"></p>
<p>Пароль</p>
<p><input type="name" size="15" name="password"></p>
<p><input type="submit" name="button_enter" value="Вход" class="btn">
</form>
Нужно, чтобы он сам себя отображал в скруглённой рамке. Можно сделать код вида таким:
<?php $text='
<form name="login_form" action="/user/login/enter" method="post">
<p>Логин</p>
<p><input type="text" size="15" name="login"></p>
<p>Пароль</p>
<p><input type="name" size="15" name="password"></p>
<p><input type="submit" name="button_enter" value="Вход" class="btn">
</form>
';
echo View::factory('designframe')->set('text', $text)->render();
?>
Но тогда весь HTML-код перестает подсвечиваться. Да и еще приходится следить чтобы случайно апостроф в HTML-коде не затесался. В общем некрасиво и неудобно.
Вопрос. Как максимально просто организовать вложение вида в вид, не плодя дополнительных файлов, и при этом нормально раотать с HTML-кодом, не заключая его в кавычки/апострофы/хередок для вставки в переменную?