You've already forked joplin
mirror of
https://github.com/laurent22/joplin.git
synced 2025-07-16 00:14:34 +02:00
Revert "All: Added support for hierarchical/nested tags (#2572)"
This reverts commit e11e57f1d8
.
This commit is contained in:
@ -1,33 +0,0 @@
|
||||
const Tag = require('lib/models/Tag');
|
||||
|
||||
const script = {};
|
||||
|
||||
script.exec = async function() {
|
||||
const tags = await Tag.all();
|
||||
|
||||
// In case tags with `/` exist, we want to transform them into nested tags
|
||||
for (let i = 0; i < tags.length; i++) {
|
||||
const tag = Object.assign({}, tags[i]);
|
||||
// Remove any starting sequence of '/'
|
||||
tag.title = tag.title.replace(/^\/*/, '');
|
||||
// Remove any ending sequence of '/'
|
||||
tag.title = tag.title.replace(/\/*$/, '');
|
||||
// Trim any sequence of '/'+ to a single '/'
|
||||
tag.title = tag.title.replace(/\/\/+/g, '/');
|
||||
|
||||
const tag_title = tag.title;
|
||||
let other = await Tag.loadByTitle(tag_title);
|
||||
let count = 1;
|
||||
// In case above trimming creates duplicate tags
|
||||
// then add a counter to the dupes
|
||||
while ((other && other.id != tag.id) && count < 1000) {
|
||||
tag.title = `${tag_title}-${count}`;
|
||||
other = await Tag.loadByTitle(tag.title);
|
||||
count++;
|
||||
}
|
||||
|
||||
await Tag.saveNested(tag, tag.title);
|
||||
}
|
||||
};
|
||||
|
||||
module.exports = script;
|
Reference in New Issue
Block a user