X-Git-Url: https://git.mdrn.pl/redakcja.git/blobdiff_plain/8f0e18f498d6c07937c92d186bfa6b654a1afa14..a7ef44e7769429470cbf5c8708be37f6ca098ab3:/redakcja/static/js/wiki/view_history.js diff --git a/redakcja/static/js/wiki/view_history.js b/redakcja/static/js/wiki/view_history.js index 348f0c78..85adca0a 100644 --- a/redakcja/static/js/wiki/view_history.js +++ b/redakcja/static/js/wiki/view_history.js @@ -5,16 +5,34 @@ options.callback = function() { var self = this; + if (CurrentDocument.diff) { + rev_from = CurrentDocument.diff[0]; + rev_to = CurrentDocument.diff[1]; + this.doc.fetchDiff({ + from: rev_from, + to: rev_to, + success: function(doc, data){ + var result = $.wiki.newTab(doc, ''+rev_from +' -> ' + rev_to, 'DiffPerspective'); + + $(result.view).html(data); + $.wiki.switchToTab(result.tab); + } + }); + } // first time page is rendered $('#make-diff-button').click(function() { self.makeDiff(); }); - $('#tag-changeset-button').click(function() { - self.showTagForm(); + $('#pubmark-changeset-button').click(function() { + self.showPubmarkForm(); }); + $('#doc-revert-button').click(function() { + self.revertDialog(); + }); + $('#open-preview-button').click(function(event) { var selected = $('#changes-list .entry.selected'); @@ -31,11 +49,23 @@ $('#changes-list .entry').live('click', function(){ var $this = $(this); - if ($this.hasClass('selected')) - return $this.removeClass('selected'); - if ($("#changes-list .entry.selected").length < 2) - return $this.addClass('selected'); + var selected_count = $("#changes-list .entry.selected").length; + + if ($this.hasClass('selected')) { + $this.removeClass('selected'); + selected_count -= 1; + } + else { + if (selected_count < 2) { + $this.addClass('selected'); + selected_count += 1; + }; + }; + + $('#history-view-editor .toolbar button').attr('disabled', 'disabled'). + filter('*[data-enabled-when~=' + selected_count + '], *[data-enabled-when~=*]'). + attr('disabled', null); }); $('#changes-list span.tag').live('click', function(event){ @@ -93,9 +123,9 @@ stub: $stub, data: this, filters: { - tag: function(value) { - return tags.filter("*[value='"+value+"']").text(); - } +// tag: function(value) { +// return tags.filter("*[value='"+value+"']").text(); +// } // description: function(value) { // return value.replace('\n', '); // } @@ -112,7 +142,7 @@ }); }; - HistoryPerspective.prototype.showTagForm = function(){ + HistoryPerspective.prototype.showPubmarkForm = function(){ var selected = $('#changes-list .entry.selected'); if (selected.length != 1) { @@ -121,7 +151,7 @@ } var version = parseInt($("*[data-stub-value='version']", selected[0]).text()); - $.wiki.showDialog('#add_tag_dialog', {'revision': version}); + $.wiki.showDialog('#pubmark_dialog', {'revision': version}); }; HistoryPerspective.prototype.makeDiff = function() { @@ -156,6 +186,19 @@ }); }; + HistoryPerspective.prototype.revertDialog = function(){ + var self = this; + var selected = $('#changes-list .entry.selected'); + + if (selected.length != 1) { + window.alert("Musisz zaznaczyć dokładnie jedną wersję."); + return; + } + + var version = parseInt($("*[data-stub-value='version']", selected[0]).text()); + $.wiki.showDialog('#revert_dialog', {revision: version}); + }; + $.wiki.HistoryPerspective = HistoryPerspective; })(jQuery);