-
Notifications
You must be signed in to change notification settings - Fork 0
/
views.js
128 lines (94 loc) · 2.48 KB
/
views.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
define([
'app',
// Libs
'backbone'
],
function(app, Backbone) {
var Views = {};
Views.Upload = Backbone.View.extend({
template: 'app/templates/localeedit/upload',
tagName: 'div',
manage: true
});
Views.Overview = Backbone.View.extend({
template: 'app/templates/localeedit/overview',
manage: true
});
Views.EditKeyValueItem = Backbone.View.extend({
template: 'app/templates/localeedit/editKeyValueItem',
manage: true,
tagName: "li",
className: 'edititem ',
events: {
"change input.translation": "translationChanged"
},
translationChanged: function(ev) {
console.log(ev);
},
data: function() {
return { model: this.model };
}
});
Views.EditItem = Backbone.View.extend({
template: 'app/templates/localeedit/editItem',
manage: true,
tagName: "div",
className: 'edit-wrapper-outer',
data: function() {
return { model: this.model };
},
beforeRender: function() {
var items = this.model.get('LocaleValues');
for (var i = 0; i < items.length; i++) {
this.insertView("ul.locales", new Views.EditKeyValueItem({
model: items[i]
}));
}
}
});
Views.EditList = Backbone.View.extend({
template: 'app/templates/localeedit/edit',
//tagName: 'div',
manage: true,
className: 'container',
data: function() {
return {
count: this.collection.length
};
},
events: {
"keyup #keySearchTask" : "search"
//,
//"change #taskSorting":"sorts"
},
search: function(e){
var letters = $("#keySearchTask").val();
this.renderList(this.collection.search(letters));
},
renderList : function(task){
console.log(task);
},
beforeRender: function() {
//var active = this.options.commits.repo;
this.collection.each(function(locale) {
// if (locale.get("name") === active) {
// app.active = repo;
// }
this.insertView("div.localelistitems", new Views.EditItem({
model: locale
}));
}, this);
},
cleanup: function() {
this.collection.off(null, null, this);
},
initialize: function() {
this.collection.on("reset", this.render, this);
this.collection.on("fetch", function() {
this.$("div.loading").html("<img src='/app/img/loading.gif'>");
}, this);
//this.collection.fetch();
}
});
return Views;
});