BookStackApp / BookStack

A platform to create documentation/wiki content built with PHP & Laravel
https://www.bookstackapp.com/
MIT License
14.67k stars 1.85k forks source link

Converting Shelves to Books (and therefore books to chapters, chapters to pages, and pages to sections) #3815

Closed manicmarvin closed 8 months ago

manicmarvin commented 1 year ago

Describe the feature you'd like

I see that #1087 was solved with #3499 which is amazing, thank you so much.

Could you please help with making the exact reverse of the action also possible? A bookstack someone in my team has set up uses the wrong information hierarchy, and this has resulted in tiny books, with tiny chapters. Which makes everything very unreadable -- dozens of clicks and pageloads to find any information.

Can we have the ability to turn a shelf into a single book -- each book therefore would become a chapter, the chapters pages and any pages themselves within chapters would turn into sections within the chapter-now-page, while independent pages, would just stay pages within the book-now-chapter.

I desperately need to make this happen for a very large bookstack.

Describe the benefits this would bring to existing BookStack users

This would help others like me with poorly structured bookstacks, and also those who have used the conversions in #3499 and now need to reverse them for whatever reason.

Can the goal of this request already be achieved via other means?

Not that I can think of, other than either manually or with some intense hacking of the SQL DB

Have you searched for an existing open/closed issue?

How long have you been using BookStack?

1 to 5 years

Additional context

No response

ssddanbrown commented 1 year ago

Thanks for the request @manicmarvin but, since this is the first request of moving in this direction, I'm not sure it would be worth implementation, especially as this direction is more complex since it involves merging of page content.

Can the goal of this request already be achieved via other means? Not that I can think of, other than either manually or with some intense hacking of the SQL DB

This kind of thing could be scripted via our REST API if you're handy with consuming APIs. We have some sample scripts and libraries that may help form a basis.

ssddanbrown commented 8 months ago

Since I don't see this as worth implementation as per my message above, and due to little additional demand, I'm going to go ahead and close this off as out of scope.