Skip to content

Commit

Permalink
Add a getDataCSV function.
Browse files Browse the repository at this point in the history
  • Loading branch information
hexagonal-sun committed Jul 6, 2015
1 parent 8481319 commit ff2ee36
Showing 1 changed file with 26 additions and 0 deletions.
26 changes: 26 additions & 0 deletions lib/reactive_table.js
Original file line number Diff line number Diff line change
Expand Up @@ -289,6 +289,32 @@ var setup = function () {
}
}

context.getTableDataCSV = function (tableContext, allData) {
var visibleFields = _.map(
_.filter(tableContext.visibleFields.get(), function(field) {
return field.isVisible.curValue;
}) , function (fieldId) {
return _.findWhere(tableContext.fields, {fieldId: fieldId.fieldId});
});

var csv = "";

csv += _.map(visibleFields, function(field) {
return field.label;
}).join(",") + "\n";

tableContext.getData(allData).forEach(function (object) {
csv += _.map(visibleFields, function (field) {
var fn = field.fn || function (value) { return value; };
var key = field.key || field;
var value = get(object, key);
return fn(value, object);
}).join(",") + "\n";
});

return csv;
}

var filters = this.data.filters || this.data.settings.filters || [];
if (_.isEmpty(filters)) {
context.showFilter = getDefaultTrueSetting('showFilter', this.data);
Expand Down

0 comments on commit ff2ee36

Please sign in to comment.