fixes
[redakcja.git] / src / redakcja / static / js / wiki / wikiapi.js
index 2f1bceb..c05c501 100644 (file)
@@ -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;
                        }
                });
        };
-       /*
-        * 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;
     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 == '') {
                });
        };
 
-       /*
-        * 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
         */