Initial commit
This commit is contained in:
+28
@@ -0,0 +1,28 @@
|
||||
var Notifier = require('builder/components/notifier/notifier');
|
||||
var errorParser = require('builder/helpers/error-parser');
|
||||
|
||||
module.exports = function (opts) {
|
||||
if (!opts.visModel) { throw new Error('visModel is required'); }
|
||||
|
||||
var visModel = opts.visModel;
|
||||
var successCallback = opts.onSuccess;
|
||||
var errorCallback = opts.onError;
|
||||
|
||||
visModel.destroy({
|
||||
wait: true,
|
||||
success: function (mdl, attrs) {
|
||||
successCallback && successCallback(mdl, attrs);
|
||||
},
|
||||
error: function (mdl, e) {
|
||||
errorCallback && errorCallback(mdl, e);
|
||||
Notifier.addNotification({
|
||||
status: 'error',
|
||||
info: _t('dataset.delete.error', {
|
||||
tableName: visModel.get('name'),
|
||||
error: errorParser(e)
|
||||
}),
|
||||
closable: true
|
||||
});
|
||||
}
|
||||
});
|
||||
};
|
||||
+35
@@ -0,0 +1,35 @@
|
||||
var ImportModel = require('builder/data/background-importer/import-model');
|
||||
|
||||
module.exports = function (opts) {
|
||||
if (!opts.tableModel) throw new Error('tableModel is required');
|
||||
if (!opts.query) throw new Error('query is required');
|
||||
if (!opts.configModel) throw new Error('configModel is required');
|
||||
|
||||
var tableModel = opts.tableModel;
|
||||
var configModel = opts.configModel;
|
||||
var query = opts.query;
|
||||
var successCallback = opts.onSuccess;
|
||||
var errorCallback = opts.onError;
|
||||
var attrs = {
|
||||
table_name: tableModel.getUnqualifiedName() + '_copy',
|
||||
sql: query
|
||||
};
|
||||
|
||||
var importModel = new ImportModel({}, {
|
||||
configModel: configModel
|
||||
});
|
||||
importModel.save(attrs, {
|
||||
error: errorCallback && errorCallback,
|
||||
success: function (model, changes) {
|
||||
model.bind('change:state', function () {
|
||||
var state = this.get('state');
|
||||
var success = this.get('success');
|
||||
if (state === 'failure') {
|
||||
errorCallback && errorCallback(model);
|
||||
} else if (state === 'complete' && success) {
|
||||
successCallback && successCallback(model);
|
||||
}
|
||||
}, model);
|
||||
}
|
||||
});
|
||||
};
|
||||
+40
@@ -0,0 +1,40 @@
|
||||
var Notifier = require('builder/components/notifier/notifier');
|
||||
var errorParser = require('builder/helpers/error-parser');
|
||||
|
||||
module.exports = function (opts) {
|
||||
if (!opts.visModel) { throw new Error('visModel is required'); }
|
||||
if (!opts.newName) { throw new Error('newName is required'); }
|
||||
|
||||
var visModel = opts.visModel;
|
||||
var newName = opts.newName;
|
||||
var successCallback = opts.onSuccess;
|
||||
var errorCallback = opts.onError;
|
||||
var notification = Notifier.addNotification({
|
||||
status: 'loading',
|
||||
info: _t('dataset.rename.loading', { tableName: visModel.get('name') }),
|
||||
closable: false
|
||||
});
|
||||
|
||||
visModel.save({ name: newName }, {
|
||||
wait: true,
|
||||
success: function (mdl, attrs) {
|
||||
successCallback && successCallback(mdl, attrs);
|
||||
notification.set({
|
||||
status: 'success',
|
||||
info: _t('dataset.rename.success', { tableName: visModel.get('name') }),
|
||||
closable: true
|
||||
});
|
||||
},
|
||||
error: function (mdl, e) {
|
||||
errorCallback && errorCallback(mdl, e);
|
||||
notification.set({
|
||||
status: 'error',
|
||||
info: _t('dataset.rename.error', {
|
||||
tableName: visModel.get('name'),
|
||||
error: errorParser(e)
|
||||
}),
|
||||
closable: true
|
||||
});
|
||||
}
|
||||
});
|
||||
};
|
||||
Reference in New Issue
Block a user