Initial commit
This commit is contained in:
@@ -0,0 +1,26 @@
|
||||
var Notifier = require('builder/components/notifier/notifier');
|
||||
var errorParser = require('builder/helpers/error-parser');
|
||||
|
||||
module.exports = function (opts) {
|
||||
if (!opts.visDefinitionModel) throw new Error('visDefinitionModel is required');
|
||||
|
||||
var visDefinitionModel = opts.visDefinitionModel;
|
||||
var successCallback = opts.onSuccess;
|
||||
var errorCallback = opts.onError;
|
||||
var name = visDefinitionModel.get('name');
|
||||
|
||||
visDefinitionModel.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('editor.maps.delete.error', {name: name, error: errorParser(e)}),
|
||||
closable: true
|
||||
});
|
||||
}
|
||||
});
|
||||
};
|
||||
@@ -0,0 +1,45 @@
|
||||
var Notifier = require('builder/components/notifier/notifier');
|
||||
var errorParser = require('builder/helpers/error-parser');
|
||||
var utils = require('builder/helpers/utils');
|
||||
|
||||
var TITLE_SUFIX = require('builder/components/modals/visualization-title-suffix-metadata');
|
||||
|
||||
module.exports = function (opts) {
|
||||
if (!opts.visDefinitionModel) throw new Error('visDefinitionModel is required');
|
||||
if (!opts.newName) throw new Error('newName is required');
|
||||
|
||||
var visDefinitionModel = opts.visDefinitionModel;
|
||||
var successCallback = opts.onSuccess;
|
||||
var errorCallback = opts.onError;
|
||||
var newName = opts.newName;
|
||||
var oldName = visDefinitionModel.get('name');
|
||||
|
||||
var notification = Notifier.addNotification({
|
||||
status: 'loading',
|
||||
info: _t('editor.maps.rename.loading'),
|
||||
closable: false
|
||||
});
|
||||
|
||||
visDefinitionModel.save({
|
||||
name: newName
|
||||
}, {
|
||||
wait: true,
|
||||
success: function (mdl, e) {
|
||||
successCallback && successCallback(newName);
|
||||
document.title = newName + TITLE_SUFIX;
|
||||
notification.set({
|
||||
status: 'success',
|
||||
info: _t('editor.maps.rename.success', {name: utils.escapeHTML(newName)}),
|
||||
closable: true
|
||||
});
|
||||
},
|
||||
error: function (mdl, e) {
|
||||
errorCallback && errorCallback(oldName);
|
||||
notification.set({
|
||||
status: 'error',
|
||||
info: _t('editor.maps.rename.error', {name: utils.escapeHTML(oldName), error: errorParser(e)}),
|
||||
closable: true
|
||||
});
|
||||
}
|
||||
});
|
||||
};
|
||||
@@ -0,0 +1,31 @@
|
||||
var cdb = require('internal-carto.js');
|
||||
|
||||
var ongoingQuery = false;
|
||||
|
||||
var zoomToData = function (configModel, stateModel, query) {
|
||||
if (!configModel) throw new Error('configModel is required');
|
||||
if (!stateModel) throw new Error('stateModel is required');
|
||||
if (!query) throw new Error('query is required');
|
||||
|
||||
var queryLauncher = new cdb.SQL({
|
||||
user: configModel.get('user_name'),
|
||||
sql_api_template: configModel.get('sql_api_template'),
|
||||
api_key: configModel.get('api_key')
|
||||
});
|
||||
|
||||
if (!ongoingQuery) {
|
||||
ongoingQuery = true;
|
||||
|
||||
queryLauncher.getBounds(query)
|
||||
.done(function (bounds) {
|
||||
ongoingQuery = false;
|
||||
|
||||
stateModel.setBounds(bounds);
|
||||
})
|
||||
.error(function () {
|
||||
ongoingQuery = false;
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
module.exports = zoomToData;
|
||||
Reference in New Issue
Block a user