From ecae4e6d0a3ecd57fffb356a2fb18d6830f66e10 Mon Sep 17 00:00:00 2001 From: erickson Date: Thu, 11 Dec 2008 15:32:58 +0000 Subject: [PATCH] added methods to allow for initializing a store and turning single objects into store data git-svn-id: svn://svn.open-ils.org/ILS/trunk@11505 dcc99617-32d9-48b4-a31d-7c20da2025e4 --- Open-ILS/web/js/dojo/fieldmapper/dojoData.js | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/Open-ILS/web/js/dojo/fieldmapper/dojoData.js b/Open-ILS/web/js/dojo/fieldmapper/dojoData.js index 3e5a1ad1af..1fa4dfb22e 100644 --- a/Open-ILS/web/js/dojo/fieldmapper/dojoData.js +++ b/Open-ILS/web/js/dojo/fieldmapper/dojoData.js @@ -36,17 +36,22 @@ if(!dojo._hasResource['fieldmapper.dojoData']){ return this; } - function _toStoreData (list, label, params) { - + function _initStoreData(label, params) { if (!params) params = {}; - if (!list) list = {}; - - // a sane default if (!params.identifier) params.identifier = this.Identifier; if (!label) label = params.label; if (!label) label = params.identifier; + return { label : label, identifier : params.identifier, items : [] }; + } - var data = { label : label, identifier : params.identifier, items : [] }; + function _itemToStoreData(fmObj, params) { + if (!params) params = {}; + return fmObj.toHash(true, params.virtualFields); + } + + function _toStoreData (list, label, params) { + if (!params) params = {}; + var data = this.initStoreData(label, params); for (var i in list) data.items.push( list[i].toHash(true, params.virtualFields) ); @@ -89,6 +94,8 @@ if(!dojo._hasResource['fieldmapper.dojoData']){ for (var i in fmclasses) fieldmapper[i].prototype.fromStoreItem = _fromStoreItem; for (var i in fmclasses) fieldmapper[i].toStoreData = _toStoreData; + for (var i in fmclasses) fieldmapper[i].itemToStoreData = _itemToStoreData; + for (var i in fmclasses) fieldmapper[i].initStoreData = _initStoreData; fieldmapper.aou.prototype._ignore_fields = ['children']; fieldmapper.aout.prototype._ignore_fields = ['children']; -- 2.11.0