@unclepaul/allcountjs
Version:
The open source framework for rapid business application development with Node.js
55 lines (53 loc) • 1.87 kB
JavaScript
var Q = require('q');
module.exports = function (crudService, googleExportService, actionContext) {
return {
navigateToEntityTypeResult: function (entityTypeId) {
return Q({
type: 'redirect',
url: '/entity/' + entityTypeId
});
},
exportAllRowsToGoogleSpreadsheet: function (googleWebAppUrl, fileName, templateId, folderId) {
return crudService.strategyForCrudId(actionContext.entityCrudId).findAll({}).then(function (rows) {
return googleExportService.exportToSpreadsheet(googleWebAppUrl, fileName, {rows: rows}, templateId, folderId);
})
},
exportToGoogleDoc: function (googleWebAppUrl, fileName, dataSource, templateId, folderId) {
return googleExportService.googleExport(googleWebAppUrl, fileName, dataSource, templateId, folderId);
},
openGoogleDocument: function (exportActionResult) {
return Q({
type: 'redirect',
url: exportActionResult
})
},
redirect: function (url) {
return Q({
type: 'redirect',
url: url
})
},
openNewWindow: function (url) {
return Q({
type: 'redirect',
url: url,
newWindow:true
})
},
refreshResult: function () {
return Q({
type: 'refresh'
})
},
modalResult: function (title, message) {
return Q({
type: 'modal',
title: title,
message: message
})
},
selectedEntityId: function () {
return actionContext.entityId;
}
}
};