keeweb/app/scripts/views/settings/settings-file-view.js

42 lines
1.2 KiB
JavaScript
Raw Normal View History

2015-10-17 23:49:24 +02:00
'use strict';
2015-10-18 16:02:00 +02:00
var Backbone = require('backbone'),
FeatureDetector = require('../../util/feature-detector'),
Alerts = require('../../util/alerts'),
FileSaver = require('filesaver');
2015-10-17 23:49:24 +02:00
var SettingsAboutView = Backbone.View.extend({
template: require('templates/settings/settings-file.html'),
2015-10-18 16:02:00 +02:00
events: {
'click .settings__file-button-save-file': 'saveToFile',
'click .settings__file-button-export-xml': 'exportAsXml',
'click .settings__file-button-save-dropbox': 'saveToDropbox'
},
2015-10-17 23:49:24 +02:00
render: function() {
2015-10-18 16:02:00 +02:00
this.renderTemplate({
file: this.model,
cmd: FeatureDetector.actionShortcutSymbol(true)
});
},
saveToFile: function() {
var data = this.model.getData();
var blob = new Blob([data], {type: 'application/octet-stream'});
FileSaver.saveAs(blob, this.model.get('name') + '.kdbx');
},
exportAsXml: function() {
var data = this.model.getXml();
var blob = new Blob([data], {type: 'text/xml'});
FileSaver.saveAs(blob, this.model.get('name') + '.xml');
},
saveToDropbox: function() {
Alerts.notImplemented();
2015-10-17 23:49:24 +02:00
}
});
module.exports = SettingsAboutView;