до чего дошел прогресс...
JHtml::_('jquery.framework');
JHtml::_('behavior.core');
JHtml::_('behavior.multiselect');
JHtml::_('behavior.formvalidator');
JHtml::_('formbehavior.chosen', 'select');
JHtml::_('behavior.keepalive');
JHtml::_('script', 'system/modal-fields.js', array('version' => 'auto', 'relative' => true));
<div id="ModalEditArticle_jform_request_id" tabindex="-1" class="modal hide fade jviewport-width80" data-backdrop="static" data-keyboard="false">
<div class="modal-header">
<h3>Изменить материал</h3>
</div>
<div class="modal-body jviewport-height70"></div>
<div class="modal-footer">
<a role="button" class="btn" aria-hidden="true" onclick="window.processModalEdit(this, 'jform_request_id', 'edit', 'article', 'cancel', 'item-form'); return false;">Закрыть</a>
<a role="button" class="btn btn-primary" aria-hidden="true" onclick="window.processModalEdit(this, 'jform_request_id', 'edit', 'article', 'save', 'item-form'); return false;">Сохранить и закрыть</a>
<a role="button" class="btn btn-success" aria-hidden="true" onclick="window.processModalEdit(this, 'jform_request_id', 'edit', 'article', 'apply', 'item-form'); return false;">Сохранить</a></div>
</div>
<input type="hidden" id="jform_request_id_name" value="" />
<input type="hidden" id="jform_request_id_id" class="required modal-value" data-required="1" name="jform[request][id]" value="" /></div>
</div>
<script>
function jSelectArticle_jform_request_id(id, title, catid, object, url, language) {
window.processModalSelect('Article', 'jform_request_id', id, title, catid, object, url, language);
}
jQuery(document).ready(function($) {
$('#ModalEditArticle_jform_request_id').on('show.bs.modal', function() {
$('body').addClass('modal-open');
var modalBody = $(this).find('.modal-body');
modalBody.find('iframe').remove();
modalBody.prepend('<iframe class="iframe jviewport-height70" src="index.php?option=com_content&view=article&layout=modal&tmpl=component&<?php echo JSession::getFormToken(); ?>=1&task=article.edit&id=' + document.getElementById("jform_request_id_id").value + '" name="Изменить материал" height="400px" width="800px"></iframe>');
}).on('shown.bs.modal', function() {
var modalHeight = $('div.modal:visible').outerHeight(true),
modalHeaderHeight = $('div.modal-header:visible').outerHeight(true),
modalBodyHeightOuter = $('div.modal-body:visible').outerHeight(true),
modalBodyHeight = $('div.modal-body:visible').height(),
modalFooterHeight = $('div.modal-footer:visible').outerHeight(true),
padding = document.getElementById('ModalEditArticle_jform_request_id').offsetTop,
maxModalHeight = ($(window).height()-(padding*2)),
modalBodyPadding = (modalBodyHeightOuter-modalBodyHeight),
maxModalBodyHeight = maxModalHeight-(modalHeaderHeight+modalFooterHeight+modalBodyPadding);
var iframeHeight = $('.iframe').height();
if (iframeHeight > maxModalBodyHeight){
$('.modal-body').css({'max-height': maxModalBodyHeight, 'overflow-y': 'auto'});
$('.iframe').css('max-height', maxModalBodyHeight-modalBodyPadding);
}
}).on('hide.bs.modal', function () {
$('body').removeClass('modal-open');
$('.modal-body').css({'max-height': 'initial', 'overflow-y': 'initial'});
$('.modalTooltip').tooltip('destroy');
});
});
</script>
что ж как все просто-то...