exportData: function() {
var exportObject = help.exportData();
var $this = this;
var testQuery = feed.testQuery(exportObject.type, exportObject.query);
testQuery.on('data', function(res) {
if (!res.hasOwnProperty('error'))
$this.exportQuery(exportObject);
else {
toastr.error(res.error, 'ES Error : ' + res.status, {
timeOut: 5000
})
$('#exportBtn').removeClass('loading').removeAttr('disabled');
}
}).on('error', function(err) {
toastr.error(err, 'ES Error', {
timeOut: 5000
})
$('#exportBtn').removeClass('loading').removeAttr('disabled');
});
},
exportQuery: function(exportObject) {
var url = 'https://accapi.appbase.io/app/' + APPID + '/export';
$.ajax({
type: "POST",
url: url,
data: JSON.stringify(exportObject),
contentType: "application/text",
datatype: 'json',
xhrFields: {
withCredentials: true
},
success: function(data) {
$('#exportBtn').removeClass('loading').removeAttr('disabled');
$('#close-export-modal').click();
$('.close').click();
toastr.success('Data is exported, please check your email : ' + PROFILE.email + '.');
}
});
},
applyFilter: function(typeName, columnName, method, value, analyzed) {
filterVal = $.isArray(value) ? value : value.split(',');
var $this = this;
var filterObj = this.state.filterInfo;
filterObj['type'] = typeName;
filterObj['columnName'] = columnName;
filterObj['method'] = method;
filterObj['value'] = filterVal;
filterObj['active'] = true;
filterObj['analyzed'] = analyzed;
this.setState({
filterInfo: filterObj
});
if (typeName != '' && typeName != null) {
feed.filterQuery(method, columnName, filterVal, subsetESTypes, analyzed, function(update, fromStream, total) {
if (!fromStream) {
sdata = [];
$this.resetData(total);
}
setTimeout(function() {
if (update != null)
$this.updateDataOnView(update);
}, 500);
}.bind(this), function(total, fromStream, method) {
this.streamCallback(total, fromStream, method);
}.bind(this));
} else {
this.onEmptySelection();
}
},
removeFilter: function() {
var $this = this;
var obj = {
active: false,
applyFilter: this.applyFilter
};
this.setState({
filterInfo: obj
});
sdata = [];
$this.resetData();
setTimeout(function() {
$this.getStreamingData(subsetESTypes);
}, 500);
},
removeSort: function() {
var docs = this.state.documents;
var sortedArray = help.sortIt(docs, '_type', false);
this.setState({
documents: sortedArray
});
this.setState({
sortInfo: {
active: false
}
});
},
columnToggle: function() {
var $this = this;
var obj = {
toggleIt: function(elementId, checked) {
if (!checked) {