|
@@ -215,7 +215,7 @@ class PageService {
|
|
|
});
|
|
});
|
|
|
|
|
|
|
|
// revert
|
|
// revert
|
|
|
- this.pageEvent.on('revert', async(page, descendantPages, user) => {
|
|
|
|
|
|
|
+ this.pageEvent.on('revert', async(page, user, descendantPages?) => {
|
|
|
const isRecursively = descendantPages != null;
|
|
const isRecursively = descendantPages != null;
|
|
|
const action = isRecursively ? SUPPORTED_ACTION_TYPE.ACTION_PAGE_RECURSIVELY_REVERT : SUPPORTED_ACTION_TYPE.ACTION_PAGE_REVERT;
|
|
const action = isRecursively ? SUPPORTED_ACTION_TYPE.ACTION_PAGE_RECURSIVELY_REVERT : SUPPORTED_ACTION_TYPE.ACTION_PAGE_REVERT;
|
|
|
try {
|
|
try {
|
|
@@ -850,8 +850,6 @@ class PageService {
|
|
|
batch, user, options, pathRegExp, newPagePathPrefix, shouldUseV4Process,
|
|
batch, user, options, pathRegExp, newPagePathPrefix, shouldUseV4Process,
|
|
|
);
|
|
);
|
|
|
descendantPages = descendantPages.concat(batch);
|
|
descendantPages = descendantPages.concat(batch);
|
|
|
- // pageEvent.emit('rename', targetPage, user, batch);
|
|
|
|
|
- // console.log('What is the type of batch\n', batch);
|
|
|
|
|
logger.debug(`Renaming pages progressing: (count=${count})`);
|
|
logger.debug(`Renaming pages progressing: (count=${count})`);
|
|
|
}
|
|
}
|
|
|
catch (err) {
|
|
catch (err) {
|
|
@@ -1517,7 +1515,7 @@ class PageService {
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- this.pageEvent.emit('delete', page, null, user);
|
|
|
|
|
|
|
+ this.pageEvent.emit('delete', page, user);
|
|
|
this.pageEvent.emit('create', deletedPage, user);
|
|
this.pageEvent.emit('create', deletedPage, user);
|
|
|
|
|
|
|
|
return deletedPage;
|
|
return deletedPage;
|
|
@@ -1607,7 +1605,7 @@ class PageService {
|
|
|
const deleteDescendants = this.deleteDescendants.bind(this);
|
|
const deleteDescendants = this.deleteDescendants.bind(this);
|
|
|
let count = 0;
|
|
let count = 0;
|
|
|
let nDeletedNonEmptyPages = 0; // used for updating descendantCount
|
|
let nDeletedNonEmptyPages = 0; // used for updating descendantCount
|
|
|
- const pageEvent = this.pageEvent;
|
|
|
|
|
|
|
+ let descendantPages: PageDocument[] = [];
|
|
|
|
|
|
|
|
const writeStream = new Writable({
|
|
const writeStream = new Writable({
|
|
|
objectMode: true,
|
|
objectMode: true,
|
|
@@ -1617,7 +1615,7 @@ class PageService {
|
|
|
try {
|
|
try {
|
|
|
count += batch.length;
|
|
count += batch.length;
|
|
|
await deleteDescendants(batch, user);
|
|
await deleteDescendants(batch, user);
|
|
|
- pageEvent.emit('delete', targetPage, user, batch);
|
|
|
|
|
|
|
+ descendantPages = descendantPages.concat(batch);
|
|
|
logger.debug(`Deleting pages progressing: (count=${count})`);
|
|
logger.debug(`Deleting pages progressing: (count=${count})`);
|
|
|
}
|
|
}
|
|
|
catch (err) {
|
|
catch (err) {
|
|
@@ -1639,6 +1637,8 @@ class PageService {
|
|
|
|
|
|
|
|
await streamToPromise(writeStream);
|
|
await streamToPromise(writeStream);
|
|
|
|
|
|
|
|
|
|
+ this.pageEvent.emit('delete', targetPage, user, descendantPages);
|
|
|
|
|
+
|
|
|
return nDeletedNonEmptyPages;
|
|
return nDeletedNonEmptyPages;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -1781,7 +1781,7 @@ class PageService {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
if (!page.isEmpty && !preventEmitting) {
|
|
if (!page.isEmpty && !preventEmitting) {
|
|
|
- this.pageEvent.emit('deleteCompletely', page, null, user);
|
|
|
|
|
|
|
+ this.pageEvent.emit('deleteCompletely', page, user);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
return;
|
|
return;
|
|
@@ -1944,7 +1944,7 @@ class PageService {
|
|
|
|
|
|
|
|
if (!isRecursively) {
|
|
if (!isRecursively) {
|
|
|
await this.updateDescendantCountOfAncestors(parent._id, 1, true);
|
|
await this.updateDescendantCountOfAncestors(parent._id, 1, true);
|
|
|
- this.pageEvent.emit('revert', page, null, user);
|
|
|
|
|
|
|
+ this.pageEvent.emit('revert', page, user);
|
|
|
}
|
|
}
|
|
|
else {
|
|
else {
|
|
|
let pageOp;
|
|
let pageOp;
|
|
@@ -2042,7 +2042,7 @@ class PageService {
|
|
|
}, { new: true });
|
|
}, { new: true });
|
|
|
await PageTagRelation.updateMany({ relatedPage: page._id }, { $set: { isPageTrashed: false } });
|
|
await PageTagRelation.updateMany({ relatedPage: page._id }, { $set: { isPageTrashed: false } });
|
|
|
|
|
|
|
|
- this.pageEvent.emit('revert', page, null, user);
|
|
|
|
|
|
|
+ this.pageEvent.emit('revert', page, user);
|
|
|
|
|
|
|
|
return updatedPage;
|
|
return updatedPage;
|
|
|
}
|
|
}
|
|
@@ -2059,14 +2059,14 @@ class PageService {
|
|
|
|
|
|
|
|
const revertDeletedDescendants = this.revertDeletedDescendants.bind(this);
|
|
const revertDeletedDescendants = this.revertDeletedDescendants.bind(this);
|
|
|
let count = 0;
|
|
let count = 0;
|
|
|
- const pageEvent = this.pageEvent;
|
|
|
|
|
|
|
+ let descendantPages: PageDocument[] = [];
|
|
|
const writeStream = new Writable({
|
|
const writeStream = new Writable({
|
|
|
objectMode: true,
|
|
objectMode: true,
|
|
|
async write(batch, encoding, callback) {
|
|
async write(batch, encoding, callback) {
|
|
|
try {
|
|
try {
|
|
|
count += batch.length;
|
|
count += batch.length;
|
|
|
await revertDeletedDescendants(batch, user);
|
|
await revertDeletedDescendants(batch, user);
|
|
|
- pageEvent.emit('revert', targetPage, batch, user);
|
|
|
|
|
|
|
+ descendantPages = descendantPages.concat(batch);
|
|
|
logger.debug(`Reverting pages progressing: (count=${count})`);
|
|
logger.debug(`Reverting pages progressing: (count=${count})`);
|
|
|
}
|
|
}
|
|
|
catch (err) {
|
|
catch (err) {
|
|
@@ -2087,6 +2087,7 @@ class PageService {
|
|
|
.pipe(writeStream);
|
|
.pipe(writeStream);
|
|
|
|
|
|
|
|
await streamToPromise(writeStream);
|
|
await streamToPromise(writeStream);
|
|
|
|
|
+ this.pageEvent.emit('revert', targetPage, user, descendantPages);
|
|
|
|
|
|
|
|
return count;
|
|
return count;
|
|
|
}
|
|
}
|