summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTed Trask <ttrask01@yahoo.com>2014-10-28 19:24:13 +0000
committerTed Trask <ttrask01@yahoo.com>2014-10-28 19:24:13 +0000
commitff7d801f39a496de708dd6aaa5dbe852c58aadc9 (patch)
treeb6c0398a92ff0f49bdd0ade5a336d61e5737c467
parent282d068aced3f88956af4182a353f8ea150caa2b (diff)
downloadacf-db-ff7d801f39a496de708dd6aaa5dbe852c58aadc9.tar.bz2
acf-db-ff7d801f39a496de708dd6aaa5dbe852c58aadc9.tar.xz
Add db controller/model to allow editing of any supported database
-rw-r--r--Makefile3
-rw-r--r--db-controller.lua11
-rw-r--r--db-model.lua13
-rw-r--r--db.menu2
-rw-r--r--db.roles1
5 files changed, 30 insertions, 0 deletions
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