From ff7d801f39a496de708dd6aaa5dbe852c58aadc9 Mon Sep 17 00:00:00 2001 From: Ted Trask Date: Tue, 28 Oct 2014 19:24:13 +0000 Subject: Add db controller/model to allow editing of any supported database --- Makefile | 3 +++ db-controller.lua | 11 +++++++++++ db-model.lua | 13 +++++++++++++ db.menu | 2 ++ db.roles | 1 + 5 files changed, 30 insertions(+) create mode 100644 db-controller.lua create mode 100644 db-model.lua create mode 100644 db.menu create mode 100644 db.roles diff --git a/Makefile b/Makefile index c9eca99..776a086 100644 --- a/Makefile +++ b/Makefile @@ -27,6 +27,9 @@ phony+=install install: install-recursive $(SUBDIRS) mkdir -p "$(install_dir)" cp -a $(APP_DIST) "$(install_dir)" + for i in $$(ls -1 $(DESTDIR)/$(acflibdir)/db-*.lsp); do\ + ln -sf $$i $(install_dir)/$$(echo "$$(basename $$i)" | sed "s/db/$(APP_NAME)/");\ + done include config.mk diff --git a/db-controller.lua b/db-controller.lua new file mode 100644 index 0000000..6aaa260 --- /dev/null +++ b/db-controller.lua @@ -0,0 +1,11 @@ +local mymodule = {} + +mymodule.default_action = "listdatabases" + +-- Use acf-db-lib to allow editing of the database +dbcontrollerfunctions = require("dbcontrollerfunctions") +for n,f in pairs(dbcontrollerfunctions) do + mymodule[n] = f +end + +return mymodule diff --git a/db-model.lua b/db-model.lua new file mode 100644 index 0000000..c9b99e3 --- /dev/null +++ b/db-model.lua @@ -0,0 +1,13 @@ +local mymodule = {} + +-- Load libraries +db = require("acf.db") +dbmodelfunctions = require("dbmodelfunctions") + +for n,f in pairs(dbmodelfunctions) do + mymodule[n] = function(...) + return f(db.create, ...) + end +end + +return mymodule diff --git a/db.menu b/db.menu new file mode 100644 index 0000000..d4e6f4b --- /dev/null +++ b/db.menu @@ -0,0 +1,2 @@ +#CAT GROUP/DESC TAB ACTION +Applications 25Databases Databases listdatabases diff --git a/db.roles b/db.roles new file mode 100644 index 0000000..c2f89dc --- /dev/null +++ b/db.roles @@ -0,0 +1 @@ +ADMIN=db:listdatabases,db:listtables,db:viewtable,db:deletetableentry,db:updatetableentry,db:createtableentry -- cgit v1.2.3