mirror of
https://github.com/overte-org/overte.git
synced 2025-04-20 01:24:03 +02:00
Merge pull request #10472 from zfox23/snapshot_fixSnapshotDeletion
Snapshots: Fix case when user story would be incorrectly deleted
This commit is contained in:
commit
e0dd047263
2 changed files with 29 additions and 10 deletions
|
@ -359,7 +359,7 @@ function showUploadingMessage(selectedID, destination) {
|
|||
shareBarHelp.classList.add("uploading");
|
||||
shareBarHelp.setAttribute("data-destination", destination);
|
||||
}
|
||||
function hideUploadingMessageAndShare(selectedID, storyID) {
|
||||
function hideUploadingMessageAndMaybeShare(selectedID, storyID) {
|
||||
if (selectedID.id) {
|
||||
selectedID = selectedID.id; // sometimes (?), `containerID` is passed as an HTML object to these functions; we just want the ID
|
||||
}
|
||||
|
@ -382,21 +382,28 @@ function hideUploadingMessageAndShare(selectedID, storyID) {
|
|||
var facebookButton = document.getElementById(selectedID + "facebookButton");
|
||||
window.open(facebookButton.getAttribute("href"), "_blank");
|
||||
shareBarHelp.innerHTML = facebookShareText;
|
||||
// This emitWebEvent() call isn't necessary in the "hifi" and "blast" cases
|
||||
// because the "removeFromStoryIDsToMaybeDelete()" call happens
|
||||
// in snapshot.js when sharing with that method.
|
||||
EventBridge.emitWebEvent(JSON.stringify({
|
||||
type: "snapshot",
|
||||
action: "removeFromStoryIDsToMaybeDelete",
|
||||
story_id: storyID
|
||||
}));
|
||||
break;
|
||||
case 'twitter':
|
||||
var twitterButton = document.getElementById(selectedID + "twitterButton");
|
||||
window.open(twitterButton.getAttribute("href"), "_blank");
|
||||
shareBarHelp.innerHTML = twitterShareText;
|
||||
EventBridge.emitWebEvent(JSON.stringify({
|
||||
type: "snapshot",
|
||||
action: "removeFromStoryIDsToMaybeDelete",
|
||||
story_id: storyID
|
||||
}));
|
||||
break;
|
||||
}
|
||||
|
||||
shareBarHelp.setAttribute("data-destination", "");
|
||||
|
||||
EventBridge.emitWebEvent(JSON.stringify({
|
||||
type: "snapshot",
|
||||
action: "removeFromStoryIDsToMaybeDelete",
|
||||
story_id: storyID
|
||||
}));
|
||||
}
|
||||
}
|
||||
function updateShareInfo(containerID, storyID) {
|
||||
|
@ -417,7 +424,7 @@ function updateShareInfo(containerID, storyID) {
|
|||
twitterButton.setAttribute("target", "_blank");
|
||||
twitterButton.setAttribute("href", 'https://twitter.com/intent/tweet?text=I%20just%20took%20a%20snapshot!&url=' + shareURL + '&via=highfidelityinc&hashtags=VR,HiFi');
|
||||
|
||||
hideUploadingMessageAndShare(containerID, storyID);
|
||||
hideUploadingMessageAndMaybeShare(containerID, storyID);
|
||||
}
|
||||
function blastToConnections(selectedID, isGif) {
|
||||
if (selectedID.id) {
|
||||
|
@ -552,6 +559,12 @@ function shareButtonClicked(destination, selectedID) {
|
|||
|
||||
if (!storyID) {
|
||||
showUploadingMessage(selectedID, destination);
|
||||
} else {
|
||||
EventBridge.emitWebEvent(JSON.stringify({
|
||||
type: "snapshot",
|
||||
action: "removeFromStoryIDsToMaybeDelete",
|
||||
story_id: storyID
|
||||
}));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -51,6 +51,11 @@ function openLoginWindow() {
|
|||
}
|
||||
}
|
||||
|
||||
function removeFromStoryIDsToMaybeDelete(story_id) {
|
||||
storyIDsToMaybeDelete.splice(storyIDsToMaybeDelete.indexOf(story_id), 1);
|
||||
print('storyIDsToMaybeDelete[] now:', JSON.stringify(storyIDsToMaybeDelete));
|
||||
}
|
||||
|
||||
function onMessage(message) {
|
||||
// Receives message from the html dialog via the qwebchannel EventBridge. This is complicated by the following:
|
||||
// 1. Although we can send POJOs, we cannot receive a toplevel object. (Arrays of POJOs are fine, though.)
|
||||
|
@ -191,6 +196,7 @@ function onMessage(message) {
|
|||
return;
|
||||
} else {
|
||||
print("SUCCESS uploading announcement story! Story ID:", response.user_story.id);
|
||||
removeFromStoryIDsToMaybeDelete(message.story_id); // Don't delete original "for_url" story
|
||||
}
|
||||
});
|
||||
}
|
||||
|
@ -230,13 +236,13 @@ function onMessage(message) {
|
|||
return;
|
||||
} else {
|
||||
print("SUCCESS changing audience" + (message.isAnnouncement ? " and posting announcement!" : "!"));
|
||||
removeFromStoryIDsToMaybeDelete(message.story_id);
|
||||
}
|
||||
});
|
||||
}
|
||||
break;
|
||||
case 'removeFromStoryIDsToMaybeDelete':
|
||||
storyIDsToMaybeDelete.splice(storyIDsToMaybeDelete.indexOf(message.story_id), 1);
|
||||
print('storyIDsToMaybeDelete[] now:', JSON.stringify(storyIDsToMaybeDelete));
|
||||
removeFromStoryIDsToMaybeDelete(message.story_id);
|
||||
break;
|
||||
default:
|
||||
print('Unknown message action received by snapshot.js!');
|
||||
|
|
Loading…
Reference in a new issue