mirror of
https://github.com/grocy/grocy.git
synced 2025-04-29 01:32:38 +00:00
Again more iframe dialog handling optimizations (references #2421)
This commit is contained in:
parent
fc072b13f2
commit
33d5ec44d2
@ -542,9 +542,7 @@ if ($(".custom-file-label").length > 0)
|
||||
$("<style>").html('.custom-file-label::after { content: "' + __t("Select file") + '"; }').appendTo("head");
|
||||
}
|
||||
|
||||
ResizeResponsiveEmbeds = function(fillEntireViewport = false, iframesOnly = false)
|
||||
{
|
||||
if (!iframesOnly)
|
||||
ResizeResponsiveEmbeds = function(fillEntireViewport = false)
|
||||
{
|
||||
if (!fillEntireViewport)
|
||||
{
|
||||
@ -555,24 +553,10 @@ ResizeResponsiveEmbeds = function(fillEntireViewport = false, iframesOnly = fals
|
||||
var maxHeight = $("body").height();
|
||||
}
|
||||
$("embed.embed-responsive").attr("height", maxHeight.toString() + "px");
|
||||
}
|
||||
|
||||
$("iframe.embed-responsive").each(function()
|
||||
{
|
||||
var iframeHeight = $(this)[0].contentWindow.document.body.scrollHeight;
|
||||
|
||||
if (iframeHeight == 0)
|
||||
{
|
||||
// Iframe has most likely not finished loading yet => try again later
|
||||
setTimeout(function()
|
||||
{
|
||||
ResizeResponsiveEmbeds(fillEntireViewport, true);
|
||||
}, 150);
|
||||
}
|
||||
else
|
||||
{
|
||||
$(this).attr("height", iframeHeight.toString() + "px");
|
||||
}
|
||||
$(this).attr("height", $(this)[0].contentWindow.document.body.scrollHeight.toString() + "px");
|
||||
});
|
||||
}
|
||||
$(window).on('resize', function()
|
||||
@ -719,7 +703,7 @@ $(document).on("click", ".show-as-dialog-link", function(e)
|
||||
var link = $(e.currentTarget).attr("href");
|
||||
|
||||
bootbox.dialog({
|
||||
message: '<iframe height="650px" class="embed-responsive" src="' + link + '"></iframe>',
|
||||
message: '<iframe height="650px" class="embed-responsive" onload="ResizeResponsiveEmbeds();" src="' + link + '"></iframe>',
|
||||
size: 'large',
|
||||
backdrop: true,
|
||||
closeButton: false,
|
||||
@ -805,8 +789,3 @@ $(document).on("click", "#clear-filter-button", function(e)
|
||||
{
|
||||
$(".tooltip").tooltip("hide");
|
||||
});
|
||||
|
||||
$(document).on("shown.bs.modal", function(e)
|
||||
{
|
||||
ResizeResponsiveEmbeds();
|
||||
})
|
||||
|
@ -927,7 +927,7 @@ $(document).on("click", ".display-recipe-button", function(e)
|
||||
function(result)
|
||||
{
|
||||
bootbox.dialog({
|
||||
message: '<iframe height="650px" class="embed-responsive" src="' + U("/recipes?embedded&recipe=") + objectId + '#fullscreen"></iframe>',
|
||||
message: '<iframe height="650px" class="embed-responsive" onload="ResizeResponsiveEmbeds();" src="' + U("/recipes?embedded&recipe=") + objectId + '#fullscreen"></iframe>',
|
||||
size: 'extra-large',
|
||||
backdrop: true,
|
||||
closeButton: false,
|
||||
|
@ -198,7 +198,7 @@ $("#test-quantityunit-plural-forms-button").on("click", function(e)
|
||||
$("#save-quantityunit-button").click();
|
||||
|
||||
bootbox.alert({
|
||||
message: '<iframe height="400px" class="embed-responsive" src="' + U("/quantityunitpluraltesting?embedded&qu=") + Grocy.EditObjectId.toString() + '"></iframe>',
|
||||
message: '<iframe height="400px" class="embed-responsive" onload="ResizeResponsiveEmbeds();" src="' + U("/quantityunitpluraltesting?embedded&qu=") + Grocy.EditObjectId.toString() + '"></iframe>',
|
||||
closeButton: false,
|
||||
size: "large",
|
||||
callback: function(result)
|
||||
|
@ -220,7 +220,7 @@ $(document).on('click', '.recipe-pos-edit-button', function(e)
|
||||
var recipePosId = $(e.currentTarget).attr('data-recipe-pos-id');
|
||||
|
||||
bootbox.dialog({
|
||||
message: '<iframe height="650px" class="embed-responsive" src="' + U("/recipe/") + Grocy.EditObjectId.toString() + '/pos/' + recipePosId.toString() + '?embedded&product=' + productId.toString() + '"></iframe>',
|
||||
message: '<iframe height="650px" class="embed-responsive" onload="ResizeResponsiveEmbeds();" src="' + U("/recipe/") + Grocy.EditObjectId.toString() + '/pos/' + recipePosId.toString() + '?embedded&product=' + productId.toString() + '"></iframe>',
|
||||
size: 'large',
|
||||
backdrop: true,
|
||||
closeButton: false,
|
||||
@ -266,7 +266,7 @@ $("#recipe-pos-add-button").on("click", function(e)
|
||||
e.preventDefault();
|
||||
|
||||
bootbox.dialog({
|
||||
message: '<iframe height="650px" class="embed-responsive" src="' + U("/recipe/") + Grocy.EditObjectId + '/pos/new?embedded"></iframe>',
|
||||
message: '<iframe height="650px" class="embed-responsive" onload="ResizeResponsiveEmbeds();" src="' + U("/recipe/") + Grocy.EditObjectId + '/pos/new?embedded"></iframe>',
|
||||
size: 'large',
|
||||
backdrop: true,
|
||||
closeButton: false,
|
||||
|
@ -291,7 +291,7 @@ recipesTables.on('select', function(e, dt, type, indexes)
|
||||
else
|
||||
{
|
||||
bootbox.dialog({
|
||||
message: '<iframe height="650px" class="embed-responsive" src="' + U("/recipes?embedded&recipe=") + selectedRecipeId + '#fullscreen"></iframe>',
|
||||
message: '<iframe height="650px" class="embed-responsive" onload="ResizeResponsiveEmbeds();" src="' + U("/recipes?embedded&recipe=") + selectedRecipeId + '#fullscreen"></iframe>',
|
||||
size: 'extra-large',
|
||||
backdrop: true,
|
||||
closeButton: false,
|
||||
@ -323,7 +323,7 @@ $(".recipe-gallery-item").on("click", function(e)
|
||||
else
|
||||
{
|
||||
bootbox.dialog({
|
||||
message: '<iframe height="650px" class="embed-responsive" src="' + U("/recipes?embedded&recipe=") + selectedRecipeId + '#fullscreen"></iframe>',
|
||||
message: '<iframe height="650px" class="embed-responsive" onload="ResizeResponsiveEmbeds();" src="' + U("/recipes?embedded&recipe=") + selectedRecipeId + '#fullscreen"></iframe>',
|
||||
size: 'extra-large',
|
||||
backdrop: true,
|
||||
closeButton: false,
|
||||
|
@ -258,6 +258,7 @@ $(document).on('click', '.shopping-list-stock-add-workflow-list-item-button', fu
|
||||
}
|
||||
else
|
||||
{
|
||||
$("#shopping-list-stock-add-workflow-purchase-item-count").addClass("d-none");
|
||||
$("#shopping-list-stock-add-workflow-skip-button").addClass("d-none");
|
||||
}
|
||||
});
|
||||
@ -623,3 +624,8 @@ if ($(window).width() < 768 || !Grocy.FeatureFlags.GROCY_FEATURE_FLAG_STOCK)
|
||||
{
|
||||
$("#filter-container").removeClass("border-bottom");
|
||||
}
|
||||
|
||||
$("#shopping-list-stock-add-workflow-purchase-form-frame").on("load", function()
|
||||
{
|
||||
ResizeResponsiveEmbeds();
|
||||
});
|
||||
|
@ -321,8 +321,8 @@
|
||||
<div class="modal-content text-center">
|
||||
<div class="modal-body">
|
||||
<iframe id="shopping-list-stock-add-workflow-purchase-form-frame"
|
||||
class="embed-responsive"
|
||||
src=""></iframe>
|
||||
class="embed-responsive">
|
||||
</iframe>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<span id="shopping-list-stock-add-workflow-purchase-item-count"
|
||||
|
Loading…
x
Reference in New Issue
Block a user