From 43705b7f6ac2e7f6cd2a6363b5542566495db523 Mon Sep 17 00:00:00 2001 From: erickson Date: Fri, 13 Feb 2009 22:21:34 +0000 Subject: [PATCH] UI for manging idl_field_doc entries git-svn-id: svn://svn.open-ils.org/ILS/trunk@12180 dcc99617-32d9-48b4-a31d-7c20da2025e4 --- .../default/conify/global/config/idl_field_doc.js | 49 ++++++++++++++++++++++ .../default/conify/global/config/idl_field_doc.tt2 | 29 +++++++++++++ 2 files changed, 78 insertions(+) create mode 100644 Open-ILS/web/js/ui/default/conify/global/config/idl_field_doc.js create mode 100644 Open-ILS/web/templates/default/conify/global/config/idl_field_doc.tt2 diff --git a/Open-ILS/web/js/ui/default/conify/global/config/idl_field_doc.js b/Open-ILS/web/js/ui/default/conify/global/config/idl_field_doc.js new file mode 100644 index 0000000000..0a83cb2b8b --- /dev/null +++ b/Open-ILS/web/js/ui/default/conify/global/config/idl_field_doc.js @@ -0,0 +1,49 @@ +dojo.require('dijit.form.FilteringSelect'); +dojo.require('dojo.data.ItemFileReadStore'); +dojo.require('fieldmapper.IDL'); +dojo.require('openils.PermaCrud'); +dojo.require('openils.widget.AutoGrid'); + +function updateFieldSelector() { + var cls = this.attr('value'); + if(!cls) return; + var flist = fieldmapper.IDL.fmclasses[cls]; + var fields = []; + for(var f in flist.fields) { + var field = flist.fields[f]; + if(field.virtual) continue; + fields.push({name:field.label, value:field.name}); + } + fdocGrid.overrideEditWidgets.field.store = new dojo.data.ItemFileReadStore( + {data:{identifier:'value', label:'name', items:fields}}); +} + +function load() { + var slist = fieldmapper.IDL.fmclasses; + var dlist = []; + + fdocGrid.overrideEditWidgets.field = editFieldSelector; + fdocGrid.overrideEditWidgets.classname = editClassSelector; + dojo.connect(fdocGrid.overrideEditWidgets.classname, 'onChange', updateFieldSelector); + + for(var f in slist) { + if(slist[f].label != slist[f].name) // only show tables that have an actual label + dlist.push({value:slist[f].name, name:slist[f].label}); + } + dlist = dlist.sort(function(a, b){return (a.name < b.name) ? -1 : 1;}); + + fmClassSelector.store = + fdocGrid.overrideEditWidgets.classname.store = + new dojo.data.ItemFileReadStore({data:{identifier:'value', label:'name', items:dlist}}); + + fmClassSelector.startup(); + dojo.connect(fmClassSelector, 'onChange', + function() { + fdocGrid.loadAll({order_by:{fdoc : 'field'}}, {classname: this.attr('value')}); + } + ); +} + + +openils.Util.addOnLoad(load); + diff --git a/Open-ILS/web/templates/default/conify/global/config/idl_field_doc.tt2 b/Open-ILS/web/templates/default/conify/global/config/idl_field_doc.tt2 new file mode 100644 index 0000000000..4ffbf037bc --- /dev/null +++ b/Open-ILS/web/templates/default/conify/global/config/idl_field_doc.tt2 @@ -0,0 +1,29 @@ +[% WRAPPER default/base.tt2 %] + + + + + + +

Field Documentation

+ + +
+
+ + + + +
+
+ +[% END %] -- 2.11.0