Require confirmation for all tiddler deletions

Previously we only asked for confirmation when deleting a draft tiddler
print-window-tiddler
Jermolene 2014-04-09 11:32:08 +01:00
rodzic 776bf29afc
commit f9a274df85
1 zmienionych plików z 21 dodań i 12 usunięć

Wyświetl plik

@ -198,20 +198,29 @@ NavigatorWidget.prototype.handleDeleteTiddlerEvent = function(event) {
// Get the tiddler we're deleting // Get the tiddler we're deleting
var title = event.param || event.tiddlerTitle, var title = event.param || event.tiddlerTitle,
tiddler = this.wiki.getTiddler(title), tiddler = this.wiki.getTiddler(title),
storyList = this.getStoryList(); storyList = this.getStoryList(),
originalTitle, confirmationTitle;
// Check if the tiddler we're deleting is in draft mode // Check if the tiddler we're deleting is in draft mode
if(tiddler.hasField("draft.title")) { if(tiddler.hasField("draft.title")) {
// Delete the original tiddler // If so, we'll prompt for confirmation referencing the original tiddler
var originalTitle = tiddler.fields["draft.of"]; originalTitle = tiddler.fields["draft.of"];
// Ask for confirmation if the tiddler has changed confirmationTitle = originalTitle;
if(!confirm($tw.language.getString( } else {
"ConfirmDeleteTiddler", // If not a draft, then prompt for confirmation referencing the specified tiddler
{variables: originalTitle = null;
{title: originalTitle} confirmationTitle = title;
} }
))) { // Seek confirmation
return false; if(!confirm($tw.language.getString(
} "ConfirmDeleteTiddler",
{variables:
{title: confirmationTitle}
}
))) {
return false;
}
// Delete the original tiddler
if(originalTitle) {
this.wiki.deleteTiddler(originalTitle); this.wiki.deleteTiddler(originalTitle);
this.removeTitleFromStory(storyList,originalTitle); this.removeTitleFromStory(storyList,originalTitle);
} }