X-Git-Url: https://git.mdrn.pl/redakcja.git/blobdiff_plain/05a64b9314fac5f613133332d7d0b5b568ab8afc..6c81c82481a5407bc6e4f3c5cdd16baedbc2a523:/src/redakcja/static/js/wiki/wikiapi.js diff --git a/src/redakcja/static/js/wiki/wikiapi.js b/src/redakcja/static/js/wiki/wikiapi.js index 2f1bceb5..c05c501e 100644 --- a/src/redakcja/static/js/wiki/wikiapi.js +++ b/src/redakcja/static/js/wiki/wikiapi.js @@ -69,6 +69,7 @@ this.galleryLink = $("*[data-key='gallery']", meta).text(); this.galleryStart = parseInt($("*[data-key='gallery-start']", meta).text()); + this.fullUri = $("*[data-key='full-uri']", meta).text(); var diff = $("*[data-key='diff']", meta).text(); if (diff) { @@ -85,6 +86,7 @@ this.galleryImages = []; this.text = null; this.has_local_changes = false; + this.active = true; this._lock = -1; this._context_lock = -1; this._lock_count = 0; @@ -123,33 +125,26 @@ } }); }; - /* - * Fetch history of this document. - * - * from - First revision to fetch (default = 0) upto - Last revision to - * fetch (default = tip) - * - */ - WikiDocument.prototype.fetchHistory = function(params) { - /* this doesn't modify anything, so no locks */ - params = $.extend({}, noops, params); - var self = this; - $.ajax({ - method: "GET", - url: reverse("ajax_document_history", self.id), - dataType: 'json', - data: { - "from": params['from'], - "upto": params['upto'] - }, - success: function(data) { - params['success'](self, data); - }, - error: function() { - params['failure'](self, "Nie udało się wczytać historii dokumentu."); - } - }); - }; + /* + * Fetch history of this document. + * + */ + WikiDocument.prototype.fetchHistory = function(params) { + /* this doesn't modify anything, so no locks */ + params = $.extend({}, noops, params); + var self = this; + $.ajax({ + method: "GET", + url: reverse("ajax_document_history", self.id) + "?before=" + params.before, + dataType: 'json', + success: function(data) { + params['success'](self, data); + }, + error: function() { + params['failure'](self, "Nie udało się wczytać historii dokumentu."); + } + }); + }; WikiDocument.prototype.fetchDiff = function(params) { /* this doesn't modify anything, so no locks */ var self = this; @@ -177,9 +172,14 @@ WikiDocument.prototype.checkRevision = function(params) { /* this doesn't modify anything, so no locks */ var self = this; + let active = self.active; + self.active = false; $.ajax({ method: "GET", url: reverse("ajax_document_rev", self.id), + data: { + 'a': active, + }, dataType: 'text', success: function(data) { if (data == '') { @@ -227,30 +227,18 @@ }); }; - /* - * Set document's text - */ - WikiDocument.prototype.setText = function(text) { - return this.setDocumentProperty('text', text); - }; + /* + * Set document's text + */ + WikiDocument.prototype.setText = function(text, setter) { + if (text == this.text) return; + + this.text = text; + this.has_local_changes = true; - /* - * Set document's gallery link - */ - WikiDocument.prototype.setGalleryLink = function(gallery) { - return this.setDocumentProperty('galleryLink', gallery); - }; - - /* - * Set document's property - */ - WikiDocument.prototype.setDocumentProperty = function(property, value) { - if(this[property] !== value) { - this[property] = value; - this.has_local_changes = true; - } - }; + }; + /* * Save text back to the server */