mirror of
https://github.com/grocy/grocy.git
synced 2025-04-29 09:39:57 +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");
|
$("<style>").html('.custom-file-label::after { content: "' + __t("Select file") + '"; }').appendTo("head");
|
||||||
}
|
}
|
||||||
|
|
||||||
ResizeResponsiveEmbeds = function(fillEntireViewport = false, iframesOnly = false)
|
ResizeResponsiveEmbeds = function(fillEntireViewport = false)
|
||||||
{
|
|
||||||
if (!iframesOnly)
|
|
||||||
{
|
{
|
||||||
if (!fillEntireViewport)
|
if (!fillEntireViewport)
|
||||||
{
|
{
|
||||||
@ -555,24 +553,10 @@ ResizeResponsiveEmbeds = function(fillEntireViewport = false, iframesOnly = fals
|
|||||||
var maxHeight = $("body").height();
|
var maxHeight = $("body").height();
|
||||||
}
|
}
|
||||||
$("embed.embed-responsive").attr("height", maxHeight.toString() + "px");
|
$("embed.embed-responsive").attr("height", maxHeight.toString() + "px");
|
||||||
}
|
|
||||||
|
|
||||||
$("iframe.embed-responsive").each(function()
|
$("iframe.embed-responsive").each(function()
|
||||||
{
|
{
|
||||||
var iframeHeight = $(this)[0].contentWindow.document.body.scrollHeight;
|
$(this).attr("height", $(this)[0].contentWindow.document.body.scrollHeight.toString() + "px");
|
||||||
|
|
||||||
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");
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
$(window).on('resize', function()
|
$(window).on('resize', function()
|
||||||
@ -719,7 +703,7 @@ $(document).on("click", ".show-as-dialog-link", function(e)
|
|||||||
var link = $(e.currentTarget).attr("href");
|
var link = $(e.currentTarget).attr("href");
|
||||||
|
|
||||||
bootbox.dialog({
|
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',
|
size: 'large',
|
||||||
backdrop: true,
|
backdrop: true,
|
||||||
closeButton: false,
|
closeButton: false,
|
||||||
@ -805,8 +789,3 @@ $(document).on("click", "#clear-filter-button", function(e)
|
|||||||
{
|
{
|
||||||
$(".tooltip").tooltip("hide");
|
$(".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)
|
function(result)
|
||||||
{
|
{
|
||||||
bootbox.dialog({
|
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',
|
size: 'extra-large',
|
||||||
backdrop: true,
|
backdrop: true,
|
||||||
closeButton: false,
|
closeButton: false,
|
||||||
|
@ -198,7 +198,7 @@ $("#test-quantityunit-plural-forms-button").on("click", function(e)
|
|||||||
$("#save-quantityunit-button").click();
|
$("#save-quantityunit-button").click();
|
||||||
|
|
||||||
bootbox.alert({
|
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,
|
closeButton: false,
|
||||||
size: "large",
|
size: "large",
|
||||||
callback: function(result)
|
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');
|
var recipePosId = $(e.currentTarget).attr('data-recipe-pos-id');
|
||||||
|
|
||||||
bootbox.dialog({
|
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',
|
size: 'large',
|
||||||
backdrop: true,
|
backdrop: true,
|
||||||
closeButton: false,
|
closeButton: false,
|
||||||
@ -266,7 +266,7 @@ $("#recipe-pos-add-button").on("click", function(e)
|
|||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
|
|
||||||
bootbox.dialog({
|
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',
|
size: 'large',
|
||||||
backdrop: true,
|
backdrop: true,
|
||||||
closeButton: false,
|
closeButton: false,
|
||||||
|
@ -291,7 +291,7 @@ recipesTables.on('select', function(e, dt, type, indexes)
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
bootbox.dialog({
|
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',
|
size: 'extra-large',
|
||||||
backdrop: true,
|
backdrop: true,
|
||||||
closeButton: false,
|
closeButton: false,
|
||||||
@ -323,7 +323,7 @@ $(".recipe-gallery-item").on("click", function(e)
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
bootbox.dialog({
|
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',
|
size: 'extra-large',
|
||||||
backdrop: true,
|
backdrop: true,
|
||||||
closeButton: false,
|
closeButton: false,
|
||||||
|
@ -258,6 +258,7 @@ $(document).on('click', '.shopping-list-stock-add-workflow-list-item-button', fu
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
$("#shopping-list-stock-add-workflow-purchase-item-count").addClass("d-none");
|
||||||
$("#shopping-list-stock-add-workflow-skip-button").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");
|
$("#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-content text-center">
|
||||||
<div class="modal-body">
|
<div class="modal-body">
|
||||||
<iframe id="shopping-list-stock-add-workflow-purchase-form-frame"
|
<iframe id="shopping-list-stock-add-workflow-purchase-form-frame"
|
||||||
class="embed-responsive"
|
class="embed-responsive">
|
||||||
src=""></iframe>
|
</iframe>
|
||||||
</div>
|
</div>
|
||||||
<div class="modal-footer">
|
<div class="modal-footer">
|
||||||
<span id="shopping-list-stock-add-workflow-purchase-item-count"
|
<span id="shopping-list-stock-add-workflow-purchase-item-count"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user