MediaWiki:Common.js: Difference between revisions

no edit summary
No edit summary
No edit summary
Line 493: Line 493:


// Fix scripts literally disappearing when clicking "save changes" in VE
// Fix scripts literally disappearing when clicking "save changes" in VE
ve.init.mw.ArticleTarget.prototype.saveComplete = function (data) {
mw.hook('ve.activationComplete').add(function () {
    this.editSummaryValue = null;
    ve.init.mw.ArticleTarget.prototype.saveComplete = function (data) {
    this.initialEditSummary = null;
        this.editSummaryValue = null;
    this.saveDeferred.resolve();
        this.initialEditSummary = null;
    this.emit('save', data);
        this.saveDeferred.resolve();
    var target = this;
        this.emit('save', data);
    if (!this.pageExists || this.restoring) {
        var target = this;
        this.teardown().then(function () {
        if (!this.pageExists || this.restoring) {
            var newUrlParams = data.newrevid === undefined ? {} : {
            this.teardown().then(function () {
                venotify: target.restoring ? 'restored' : 'created'
                var newUrlParams = data.newrevid === undefined ? {} : {
            };
                    venotify: target.restoring ? 'restored' : 'created'
            if (data.isRedirect) {
                };
                newUrlParams.redirect = 'no';
                if (data.isRedirect) {
            }
                    newUrlParams.redirect = 'no';
            location.href = target.viewUri.extend(newUrlParams);
        });
    } else {
        if (mw.loader.getState('mediawiki.page.watch.ajax') === 'ready') {
            mw.loader.using('mediawiki.page.watch.ajax', function () {
                var watch = mw.libs['mediawiki.page.watch.ajax'];
                if (watch) {
                    watch.updatePageWatchStatus(data.watched, data.watchlistexpiry);
                 }
                 }
                location.href = target.viewUri.extend(newUrlParams);
             });
             });
         }
         } else {
        this.restoring = false;
            if (mw.loader.getState('mediawiki.page.watch.ajax') === 'ready') {
        this.requestedRevId = undefined;
                mw.loader.using('mediawiki.page.watch.ajax', function () {
        if (data.newrevid !== undefined) {
                    var watch = mw.libs['mediawiki.page.watch.ajax'];
                    if (watch) {
                        watch.updatePageWatchStatus(data.watched, data.watchlistexpiry);
                    }
                });
            }
            this.restoring = false;
            this.requestedRevId = undefined;
            if (data.newrevid !== undefined) {
                mw.config.set({
                    wgCurRevisionId: data.newrevid,
                    wgRevisionId: data.newrevid
                });
                this.revid = data.newrevid;
                this.currentRevisionId = data.newrevid;
            }
            mw.config.set(data.jsconfigvars);
            mw.loader.load(data.modules);
             mw.config.set({
             mw.config.set({
                 wgCurRevisionId: data.newrevid,
                 wgIsRedirect: !!data.isRedirect
                wgRevisionId: data.newrevid
             });
             });
             this.revid = data.newrevid;
             if (this.saveDialog) {
            this.currentRevisionId = data.newrevid;
                this.saveDialog.reset();
        }
            }
        mw.config.set(data.jsconfigvars);
            this.replacePageContent(data.content, data.categorieshtml, data.displayTitleHtml, data.lastModified, data.contentSub);
        mw.loader.load(data.modules);
             this.tryTeardown(true);
        mw.config.set({
            wgIsRedirect: !!data.isRedirect
        });
        if (this.saveDialog) {
             this.saveDialog.reset();
         }
         }
         this.replacePageContent(data.content, data.categorieshtml, data.displayTitleHtml, data.lastModified, data.contentSub);
         doRoundEdges();
         this.tryTeardown(true);
         performIE();
        enhancements();
       
     }
     }
    doRoundEdges();
});
    performIE();
    enhancements();
   
}