From c5573d1d267a8c67b77f6d6ae18f3f2bb1df6684 Mon Sep 17 00:00:00 2001 From: Wuzzy Date: Tue, 30 Aug 2016 21:35:10 +0200 Subject: API: get_category_definition, get_entry_definition --- API.md | 22 ++++++++++++++++++++++ init.lua | 16 ++++++++++++++++ 2 files changed, 38 insertions(+) diff --git a/API.md b/API.md index f05a0b5..f496434 100644 --- a/API.md +++ b/API.md @@ -148,6 +148,28 @@ of a category (Entry tab). #### Return value Always `nil`. +### `doc.get_category_definition(category_id)` +Returns the definition of the specified category. + +#### Parameters +* `category_id`: Category identifier of the category to the the definition + for + +#### Return value +The category's definition table as spefied in the `def` argument of +`doc.new_category`. The table fields are the same. + +### `doc.get_entry_definition(category_id, entry_id)` +Returns the definition of the specified entry. + +#### Parameters +* `category_id`: Category identifier of entry's category +* `entry_id`: Entry identifier of the entry to get the definition for + +#### Return value +The entry's definition table as spefied in the `def` argument of +`doc.new_entry`. The table fields are the same. + ### `doc.entry_exists(category_id, entry_id)` Checks if the specified entry exists and returns `true` or `false`. diff --git a/init.lua b/init.lua index 747871e..5eb9890 100644 --- a/init.lua +++ b/init.lua @@ -66,6 +66,22 @@ function doc.entry_viewed(playername, category_id, entry_id) end end +-- Returns category definition +function doc.get_category_definition(category_id) + if doc.data.categories[category_id] == nil then + return nil + end + return doc.data.categories[category_id].def +end + +-- Returns entry definition +function doc.get_entry_definition(category_id, entry_id) + if not doc.entry_exists(category_id, entry_id) then + return nil + end + return doc.data.categories[category_id].entries[entry_id] +end + -- Opens the main documentation formspec for the player function doc.show_doc(playername) if doc.get_category_count() <= 0 then -- cgit v1.2.3