82 Commits

Author SHA1 Message Date
Rufus Pollock
1fee4c2821 [#165,model/dataset][m]: new method normalizeRecordsAndFields to ensure we get valid records and fields from fetch (e.g. no duplicate field ids!). 2012-06-24 12:42:22 +01:00
Rufus Pollock
bb02f75539 [doc/model][m]: move all main model item docs in jekyll doc library-model.markdown and start tidying up.
* Started this in branch even though general as a pre-cursor to documentation of new backend setup.
2012-06-23 23:27:11 +01:00
Rufus Pollock
31980857a9 [#162,be/elasticsearch][s]: convert elasticsearch to the new setup (remove all Backbone from the Backend!).
* Also convert to new QueryResult format in which no _source, _type etc - cf #159
2012-06-23 22:31:23 +01:00
Rufus Pollock
dd45991321 [#162,refactor][s]: backend fetch method dataset argument is simple JS object not backbone Dataset.
* Helps make Backends simpler and more independent of Model
2012-06-23 22:29:12 +01:00
Rufus Pollock
3f37da089a [#162,refactor][s]: remove recline.Memory.createDataset now that it is obsoleted by recent improvements. 2012-06-23 20:38:47 +01:00
Rufus Pollock
6e5c15a816 [#162,backend,model][l]: major commit addressing several parts of the backend / model refactor in #162.
* Now have Dataset setup and manage "memory store"

  * New fetch API as per issue #162 spec
  * dataproxy utilizes useMemoryStore attribute and just implements fetch
  * Switch gdocs to use Memory.Store properly via new useMemoryStore + fetch methodology
  * Memory backend: query function now follows promise API, remove fetch,upsert,delete and add save function to Store object

* Also refactor to remove _source in QueryResult "hits" attribute on all backends but ElasticSearch - cf #159 (note this means ES currently broken)
2012-06-23 20:23:24 +01:00
Rufus Pollock
1ed3b9f423 [be/dataproxy][m]: switch dataproxy to use Memory data store (fixes #164) and switch to new backend / model setup (#162). 2012-06-23 18:00:30 +01:00
Rufus Pollock
7141b7aafd [#162,model,be/memory][m]: refactor started with the new API on Dataset, Record and Memory backend.
* Tests are passing except for a dataproxy one.
2012-06-23 13:28:32 +01:00
Rufus Pollock
b64daea1a7 [#111,elasticsearch,geofilter][xs]: work out that what ES docs describe as distance_unit field is actually called unit. 2012-06-16 18:27:59 +01:00
Rufus Pollock
81167e39fe [#154,filtereditor][s]: refactor how we lay out the filters in order to group inputs for a given filter together more.
* Model.Query: use distance_unit for geo_distance filter.
2012-06-16 16:46:34 +01:00
Rufus Pollock
f14dcdcaaf [#154,model/query][m]: refactor to new filter structure (see ticket) updating FilterEditor widget and backends.
* ElasticSearch changes represents a significant refactor and now support filters and query via constant_score (did not support this before!)
2012-06-16 13:04:03 +01:00
Rufus Pollock
8fe04ddd4f [#111,filter/geo][m]: geo filter support - filter editor working though not sure actual query is working (!).
* Extensive refactoring of Model.Query and View.FilterEditor to do this cleanly (geo_distance and term treated similarly now)
2012-06-15 10:51:13 +01:00
Rufus Pollock
26350fec06 [#147,widget/filtereditor][m]: add filter support in filter widget plus move to sidebar and tidy up.
* model.js: xsmall tweak to set value of term filter to empty string rather than null.
2012-06-06 23:59:09 +01:00
Rufus Pollock
58cac002dc [#145,widget/fields,model][m]: working fields widget with field summary data generated by Dataset.getFieldsSummary function.
* Layout is still not right -- need to put widget in sidebar (though looks a lot better)
* Datset.getFieldsSummary to compute facets for fields
* Remove facet usage in the demo
2012-06-04 23:57:24 +01:00
Rufus Pollock
00052bba0f [view/slickgrid][s]: slickgrid supports renderers/formatters correctly and does not escape html. 2012-06-02 22:42:34 +01:00
Rufus Pollock
c1c1881660 [#129,refactor][l]: ([s] in effort) rename Document to Record - fixes #129. 2012-05-31 21:08:00 +01:00
Rufus Pollock
2a7807638b [#77,model][s]: add summary function to product infobox style summary for a doc (all keys and values atm). 2012-05-30 23:37:32 +01:00
Rufus Pollock
13d1a9e0bd [#128,state][s]: move to simpler state serialization for backend/dataset in which we just store url attribute of dataset (if present). 2012-05-26 22:51:50 +01:00
Rufus Pollock
72ed877ae2 [#128,misc][s]: final wiring up to have everything working again -- fixes #128. 2012-05-26 18:26:47 +01:00
Rufus Pollock
23b32dff1c [#128,backend/memory,misc][l]: commence major backend refactor by converting recline.Backend.Memory to module and splitting existing code into BackboneSyncer and DataWrapper.
* Lots of other changes to having passing tests (note some actual functionality is likely a little broken esp around state serialization and the app)
2012-05-26 14:26:01 +01:00
Rufus Pollock
9518d2483d [backend,refactor][xs]: move Backbone.sync override into recline.Model from recline.Backend.base. 2012-05-25 09:01:03 +01:00
Rufus Pollock
b4255ef18f [model][s]: default string renderer will linkify http://... links. 2012-05-24 00:30:35 +01:00
Rufus Pollock
67ff757722 [#68,field][s]: link and markdown format for strings with default formatter. 2012-04-21 23:54:49 +01:00
Rufus Pollock
a42840cdf3 [#88,model/state][xs]: can just specify a url instead of full dataset object when restoring from state (easier and good for backwards compatability). 2012-04-16 15:16:28 +01:00
Rufus Pollock
bcffe67336 [#88,refactor][s]: create recline.Model.Dataset.restore function and move dataset restore stuff there from recline.View.DataExplorer.restore. 2012-04-15 23:08:42 +01:00
Rufus Pollock
7743534eac [#88,backend][s]: add __type__ attribute to all backends to identify them and provide a more robust and generic way to load backends from a string identifier such as that __type__ field.
* Also remove recline.Model.backends registry as can be replaced with this more generic solution.
* This refactoring is necessitated by our need to serialize backend info for save/reload of a dataset and explorer state in #88.
2012-04-15 22:19:43 +01:00
Rufus Pollock
670eb1e1de [#88,view/grid,refactor][s]: switch DataGrid to use new state setup (and introduce new Model ObjectState for this purpose).
* Switched hiddenFields to be part of state object (only state on DataGrid at the moment).
2012-04-14 12:58:39 +01:00
Rufus Pollock
11f4fb1151 [#78,tidying][s]: fixes for as many jshint issues as possible in src/*.js. 2012-04-10 20:21:18 +01:00
Rufus Pollock
498e9712c6 [#68,model/Field][s]: introduce default renderers for object and float:percentage. 2012-04-10 16:36:55 +01:00
Rufus Pollock
dea4b3ece1 [#83,facets][s]: add date histogram facet support.
* Incomplete in various ways (e.g. cannot apply filter correctly using it) but can add and view.
2012-04-10 16:25:08 +01:00
Rufus Pollock
0f4a0a6189 [#68,fields][m]: add format attribute plus support for renderer and deriver functions. 2012-04-10 01:24:34 +01:00
Rufus Pollock
517c95f78a [#66,filters][m]: full editing of text filters plus add text filter via column menu in grid view - fixes #66. 2012-04-09 11:15:50 +01:00
Rufus Pollock
008c124096 [#66,filters,view][m]: new FilterEditor view which shows current filters and allowed them to be removed. 2012-04-08 10:47:25 +01:00
Rufus Pollock
2cd9192480 [#52,docs/model][m]: document all model elements in detail.
* List more items in main index doc page
* Major extension of source docs including
  * Query object with its spec
  * Facet
  * etc
2012-04-07 13:49:13 +01:00
Rufus Pollock
1eb7df9a7c [#66,model][s]: addTermFacet on Query object.
* Also fix a major bug (that was causing weird test failures) re setting defaults (you cannot set defaults with objects).
2012-04-02 21:04:52 +01:00
Rufus Pollock
56285f0a07 [#62,model][xs]: trigger re-query (and facet computation) whenever facets change.
* This is far from perfect (we recompute query results as well as facets) but optimizing can come later.
2012-04-01 16:45:31 +01:00
Rufus Pollock
ae8a3ddab0 [model][xs]: remove HACK code that is no longer needed.
* Code is obsolete because issue it addressed arose from binding to all event on queryState and we no longer do that.
2012-04-01 16:37:43 +01:00
Rufus Pollock
7a95302760 [#62,facets,backend/memory][m]: add faceting support to memory backend. 2012-04-01 16:31:36 +01:00
Rufus Pollock
80165659b1 [#62,faceting][s]: basic faceting fully functional on ES. 2012-04-01 14:20:12 +01:00
Rufus Pollock
6ba8c82408 [#62,facets][s]: partially working faceting with elasticsearch. 2012-04-01 13:51:15 +01:00
Rufus Pollock
157d77ebb1 [#57,backend,model][m]: switch to having backend query methods return a QueryResult object - fixes #57. 2012-04-01 11:45:42 +01:00
Rufus Pollock
3412962a35 [#62,faceting][s]: introduce Facet and FacetList models and use them.
* Conceptual breakthrough on how Faceting and Filtering interact (have updated issue #62 as a result).
2012-03-31 18:06:41 +01:00
Rufus Pollock
905659d86f [#62,view/query][m]: start of faceting support with QueryFacetEditor.
* QueryFacetEditor in DataExplorer which displays facets but nothing yet happens.
* NB: very much less than half way through (things look worse rather than better atm).
2012-03-31 15:08:27 +01:00
Rufus Pollock
93d4b84080 [doc][s]: minor correction to model docs. 2012-03-15 00:47:32 +00:00
Rufus Pollock
733a9d3275 [#34,view][s]: query state in url (store into and read from).
* Also change so that query values are not automatically JSON.stringify-ied (bad idea since it leads to repeated jsonification of same value ...)
2012-03-14 19:45:28 +00:00
Rufus Pollock
bd6123403e [#34,query][s]: rename offset to from on query object.
* More natural in fact and we may as well go whole hog with ES structure.
2012-02-27 20:54:02 +00:00
Rufus Pollock
aaa01b2191 [refactor,model,view][s]: add explicit query start, done and fail events for dataset and use them in DataExplorer to generate notifications. 2012-02-24 09:11:17 +00:00
Rufus Pollock
4074f380d8 [#25,view,refactor][s]: get views working with new field setup (fixes #25).
* One nastiness along the way (30m delay!) that is worth noting: flot graph was a problem because it turned out that a) (re-)render triggered by dataset attributes change and fields only got set *after* core dataset attributes and so info was rendering.
* model.test.js: basic test for Dataset.toTemplateJSON
2012-02-18 09:07:35 +00:00
Rufus Pollock
a75e04701f [#25,model][xs]: turns out the hack to allow simple arguments to Field ctor does *not* work. 2012-02-18 08:11:38 +00:00
Rufus Pollock
2da6c1a297 [#25,model][xs]: remove artificial field attribute (follow up to penultimate commit cf42e43ff0f32ba24e940455b060ae278025942b). 2012-02-18 07:48:14 +00:00