mirror of
https://github.com/viq/NewsBlur.git
synced 2025-09-18 21:43:31 +00:00
Renaming folder, backboneified.
This commit is contained in:
parent
19eaa0e7c7
commit
f997d48f1c
3 changed files with 21 additions and 13 deletions
|
@ -54,6 +54,13 @@ NEWSBLUR.Models.FeedOrFolder = Backbone.Model.extend({
|
|||
});
|
||||
|
||||
return true;
|
||||
},
|
||||
|
||||
rename: function(new_folder_name) {
|
||||
var folder_title = this.get('folder_title');
|
||||
var in_folder = this.collection.options.title;
|
||||
NEWSBLUR.assets.rename_folder(folder_title, new_folder_name, in_folder);
|
||||
this.set('folder_title', new_folder_name);
|
||||
}
|
||||
|
||||
});
|
||||
|
|
|
@ -5412,22 +5412,11 @@
|
|||
|
||||
manage_menu_rename_folder: function(folder, $folder) {
|
||||
var self = this;
|
||||
var in_folder = '';
|
||||
var $parent = $folder.parents('li.folder');
|
||||
var new_folder_name = $('.NB-menu-manage-folder-rename-confirm .NB-menu-manage-title').val();
|
||||
|
||||
if (new_folder_name.length <= 0) return this.hide_confirm_rename_menu_item();
|
||||
var folder_view = NEWSBLUR.assets.folders.get_view($folder);
|
||||
|
||||
if ($parent.length) {
|
||||
in_folder = $parent.eq(0).find('.folder_title_text').eq(0).text();
|
||||
}
|
||||
|
||||
this.model.rename_folder(folder, new_folder_name, in_folder, function() {
|
||||
});
|
||||
$('.folder_title_text', $folder).eq(0).text(new_folder_name);
|
||||
if (new_folder_name.length > 0) folder_view.model.rename(new_folder_name);
|
||||
this.hide_confirm_rename_menu_item(true);
|
||||
|
||||
$('.NB-menu-manage-folder-rename').parents('.NB-menu-manage').data('folder_name', new_folder_name);
|
||||
},
|
||||
|
||||
// =============================
|
||||
|
|
|
@ -19,6 +19,14 @@ NEWSBLUR.Views.Folder = Backbone.View.extend({
|
|||
"mouseleave" : "remove_hover_inverse"
|
||||
},
|
||||
|
||||
initialize: function() {
|
||||
_.bindAll(this, 'update_title');
|
||||
if (this.model) {
|
||||
// Root folder does not have a model.
|
||||
this.model.bind('change:folder_title', this.update_title);
|
||||
}
|
||||
},
|
||||
|
||||
render: function() {
|
||||
var depth = this.options.depth;
|
||||
this.options.collapsed = _.contains(NEWSBLUR.Preferences.collapsed_folders, this.options.title);
|
||||
|
@ -75,6 +83,10 @@ NEWSBLUR.Views.Folder = Backbone.View.extend({
|
|||
return $folder;
|
||||
},
|
||||
|
||||
update_title: function() {
|
||||
this.$('.folder_title_text').html(this.model.get('folder_title'));
|
||||
},
|
||||
|
||||
// ==========
|
||||
// = Events =
|
||||
// ==========
|
||||
|
|
Loading…
Add table
Reference in a new issue