},
selected: function(e) {
- if (this.model.isDir()) {
- e.preventDefault();
- this.model.trigger('selected:dir', this.model);
- }
+ e.preventDefault();
+ this.model.trigger(this.model.isDir() ? 'selected:dir' : 'selected:file', this.model);
}
});
this.listenTo(this.path, 'selected', this.selectedPath);
this.listenTo(this.files, 'reset', this.resetFiles);
this.listenTo(this.files, 'selected:dir', this.selectedDir);
+ this.listenTo(this.files, 'selected:file', this.selectedFile);
// used in selectize callbacks
var view = this,
this.path.add({'text': dir.get('name'), 'path': dir.get('name')});
},
+ selectedFile: function(file) {
+ this.trigger('selected:file', this.host + this.path.full() + '/' + file.get('name'));
+ },
+
selectedPath: function(bit) {
var newPath = this.path.slice(0, this.path.indexOf(bit) + 1);
this.path.set(newPath);