Skip to content

Commit c66a4e9

Browse files
committed
Fixed selectBoxPosition error on window resize if no element is selected
1 parent 77aa8d5 commit c66a4e9

File tree

1 file changed

+19
-19
lines changed

1 file changed

+19
-19
lines changed

public/js/vvvebjs/builder.js

+19-19
Original file line numberDiff line numberDiff line change
@@ -1138,24 +1138,19 @@ Vvveb.Builder = {
11381138

11391139
selectBoxPosition = function(event) {
11401140
let pos;
1141-
let target;
1141+
let target = self.selectedEl;// ?? self.highlightEl;
11421142

11431143
highlightBox.style.display = "none";
1144+
1145+
if (target) {
1146+
pos = offset(target);
11441147

1145-
if (self.selectedEl) {
1146-
pos = offset(self.selectedEl);
1147-
target = self.selectedEl;
1148-
} else
1149-
if (self.highlightEl) {
1150-
pos = offset(self.highlightEl);
1151-
target = self.highlightEl;
1152-
}
1153-
1154-
SelectBox.style.top = (pos.top - (self.frameDoc.scrollTop ?? 0) - self.selectPadding) + "px";
1155-
SelectBox.style.left = (pos.left - (self.frameDoc.scrollLeft ?? 0) - self.selectPadding) + "px";
1148+
SelectBox.style.top = (pos.top - (self.frameDoc.scrollTop ?? 0) - self.selectPadding) + "px";
1149+
SelectBox.style.left = (pos.left - (self.frameDoc.scrollLeft ?? 0) - self.selectPadding) + "px";
11561150

1157-
SelectBox.style.width = ((target.offsetWidth ?? target.clientWidth) + self.selectPadding * 2) + "px";
1158-
SelectBox.style.height = ((target.offsetHeight ?? target.clientHeight) + self.selectPadding * 2) + "px";
1151+
SelectBox.style.width = ((target.offsetWidth ?? target.clientWidth) + self.selectPadding * 2) + "px";
1152+
SelectBox.style.height = ((target.offsetHeight ?? target.clientHeight) + self.selectPadding * 2) + "px";
1153+
}
11591154
}
11601155

11611156
window.FrameWindow.addEventListener("scroll", selectBoxPosition);
@@ -2234,13 +2229,13 @@ Vvveb.Builder = {
22342229
})
22352230
.catch((err) => {
22362231
if (error) error(err);
2237-
let message = error.statusText ?? "Error saving!";
2232+
let message = error?.statusText ?? "Error saving!";
22382233
displayToast("bg-danger", "Error", message);
22392234

2240-
err.text().then( errorMessage => {
2235+
if (err.hasOwnProperty('text')) err.text().then( errorMessage => {
22412236
let message = errorMessage.substr(0, 200);
22422237
displayToast("bg-danger", "Error", message);
2243-
})
2238+
});
22442239
});
22452240
},
22462241

@@ -2382,7 +2377,7 @@ Vvveb.CssEditor = {
23822377
}
23832378

23842379
function displayToast(bg, title, message, id = "top-toast") {
2385-
document.querySelector("#" + id + " .toast-body .message").innerHTML = message;
2380+
document.querySelector("#" + id + " .toast-body .message").innerHTML = message.replace(/(?:\r\n|\r|\n)/g, '<br>');
23862381
let header = document.querySelector("#" + id + " .toast-header");
23872382
header.classList.remove("bg-danger", "bg-success")
23882383
header.classList.add(bg);
@@ -2482,7 +2477,7 @@ Vvveb.Gui = {
24822477
}, (error) => {
24832478
document.querySelector(".loading", btn).classList.toggle("d-none");
24842479
document.querySelector(".button-text", btn).classList.toggle("d-none");
2485-
let message = error.statusText ?? "Error saving!";
2480+
let message = error?.statusText ?? "Error saving!";
24862481
displayToast("bg-danger", "Error", message);
24872482
});
24882483
},
@@ -2592,6 +2587,7 @@ Vvveb.Gui = {
25922587
e.preventDefault();
25932588

25942589
return Vvveb.Builder.saveAjax(data, this.action, function (savedData) {
2590+
if (savedData?.success) {
25952591
data.title = data.name;
25962592

25972593
if (typeof savedData === 'object' && savedData !== null) {
@@ -2605,6 +2601,10 @@ Vvveb.Gui = {
26052601
Vvveb.FileManager.loadPage(data.name);
26062602
Vvveb.FileManager.scrollToPage(page);
26072603
bsModal.hide();
2604+
} else {
2605+
let message = savedData?.message ?? "Error saving!";
2606+
displayToast("bg-danger", "Error", message);
2607+
}
26082608
});
26092609
};
26102610

0 commit comments

Comments
 (0)