From 08bcb43afbf7e2fc2b3b1b12a94943c38b64b9a2 Mon Sep 17 00:00:00 2001 From: kelson42 Date: Wed, 20 Apr 2011 06:16:41 +0000 Subject: [PATCH] + kiwix-manage new devs. --- src/common/kiwix/library.cpp | 5 +++++ src/common/kiwix/library.h | 1 + src/common/kiwix/manager.cpp | 19 +++++++++++++++++++ src/common/kiwix/manager.h | 2 ++ 4 files changed, 27 insertions(+) diff --git a/src/common/kiwix/library.cpp b/src/common/kiwix/library.cpp index de30f6366..323d152ba 100644 --- a/src/common/kiwix/library.cpp +++ b/src/common/kiwix/library.cpp @@ -47,4 +47,9 @@ namespace kiwix { return true; } + bool Library::removeBookByIndex(const unsigned int bookIndex) { + books.erase(books.begin()+bookIndex-1); + return true; + } + } diff --git a/src/common/kiwix/library.h b/src/common/kiwix/library.h index f738aab0c..ba4cd51c2 100644 --- a/src/common/kiwix/library.h +++ b/src/common/kiwix/library.h @@ -51,6 +51,7 @@ namespace kiwix { string current; bool addBook(const Book &book); + bool removeBookByIndex(const unsigned int bookIndex); vector books; }; diff --git a/src/common/kiwix/manager.cpp b/src/common/kiwix/manager.cpp index c4bd809c1..9570637ff 100644 --- a/src/common/kiwix/manager.cpp +++ b/src/common/kiwix/manager.cpp @@ -53,6 +53,25 @@ namespace kiwix { return result; } + bool Manager::writeFile(const string path) { + pugi::xml_document doc; + + /* Add the library node */ + pugi::xml_node libraryNode = doc.append_child("library"); + libraryNode.append_attribute("current") = library.current.c_str(); + + /* Add each book */ + + /* saving file */ + doc.save_file(path.c_str()); + + return true; + } + + bool Manager::removeBookByIndex(const unsigned int bookIndex) { + return this->library.removeBookByIndex(bookIndex); + } + kiwix::Library Manager::cloneLibrary() { return this->library; } diff --git a/src/common/kiwix/manager.h b/src/common/kiwix/manager.h index 1fc1b3b24..ebe5b8ec7 100644 --- a/src/common/kiwix/manager.h +++ b/src/common/kiwix/manager.h @@ -40,6 +40,8 @@ namespace kiwix { ~Manager(); bool readFile(const string path); + bool writeFile(const string path); + bool removeBookByIndex(const unsigned int bookIndex); kiwix::Library cloneLibrary(); protected: