Download:
child 192:4f5752376c0f
parent 190:1f05d2339ed1
191:d2453b933c21
Anton Shestakov <av6@dwimlabs.net>, Tue, 24 May 2016 13:11:13 +0800
templates: include top level element in templates

10 файлов изменено, 78 вставок(+), 79 удалений(-) [+]
coffee/calls.coffee file | annotate | diff | comparison | revisions
coffee/contacts.coffee file | annotate | diff | comparison | revisions
coffee/messages.coffee file | annotate | diff | comparison | revisions
index.html file | annotate | diff | comparison | revisions
js/calls.js file | annotate | diff | comparison | revisions
js/calls.js.map file | annotate | diff | comparison | revisions
js/contacts.js file | annotate | diff | comparison | revisions
js/contacts.js.map file | annotate | diff | comparison | revisions
js/messages.js file | annotate | diff | comparison | revisions
js/messages.js.map file | annotate | diff | comparison | revisions
--- a/coffee/calls.coffee Tue May 24 12:34:08 2016 +0800
+++ b/coffee/calls.coffee Tue May 24 13:11:13 2016 +0800
@@ -26,9 +26,7 @@
class Tram.CallView extends Backbone.View
- tagName: 'div'
- className: 'video-block'
- template: $('#video-block-template').html()
+ templateEl: $($('#video-block-template').html())
events:
'click [data-mute-cam]': -> @model.set('local/video/muted', true)
'click [data-unmute-cam]': -> @model.set('local/video/muted', false)
@@ -38,7 +36,7 @@
'click [data-unmute-audio]': -> @model.set('remote/audio/muted', false)
initialize: ->
- @$el.html(@template)
+ @setElement(@templateEl.clone())
@$local = @$('video.local')
@$remote = @$('video.remote')
--- a/coffee/contacts.coffee Tue May 24 12:34:08 2016 +0800
+++ b/coffee/contacts.coffee Tue May 24 13:11:13 2016 +0800
@@ -79,17 +79,17 @@
class Tram.AvatarView extends Backbone.View
- tagName: 'div'
- className: 'vignette'
- template: $('#avatar-template').html()
+ templateEl: $($('#avatar-template').html())
colors: Tram.colors.avatar
+ initialize: ->
+ @setElement(@templateEl.clone())
+
getColors: (hash) =>
ci = hash % @colors.length
"color: white; background: #{ @colors[ci] };"
render: ->
- @$el.html(@template)
@rivet = rivets.bind(@el, model: @model, view: this)
@
@@ -99,9 +99,7 @@
class Tram.ContactView extends Backbone.View
- tagName: 'li'
- className: 'contact'
- template: $('#contact-template').html()
+ templateEl: $($('#contact-template').html())
colors: Tram.colors.show
events:
'click [data-chat]': -> @model.trigger('action/chat')
@@ -114,23 +112,16 @@
'click [data-remove]': -> @model.trigger('action/remove')
initialize: ->
- @$el.attr('data-jid', @model.get('jid'))
-
- @$el.html(@template)
+ @setElement(@templateEl.clone())
@$avatarColumn = @$('.avatar-column')
@bind()
bind: ->
- @listenTo(@model, 'change:active', @updateActive)
- @listenTo(@model, 'change:show', @setBorderColor)
@listenTo(@model, 'remove', @remove)
- updateActive: ->
- @$el.toggleClass('active', @model.has('active') and @model.get('active'))
-
- setBorderColor: ->
- @$el.css('border-left-color', @colors[@model.get('show')] || @colors['default'])
+ getBorderColor: (show) =>
+ "border-left-color: #{ @colors[show] || @colors['default'] };"
getPipColor: (show) =>
"background: #{ @colors[show] || @colors['default'] };"
@@ -139,7 +130,6 @@
@rivet = rivets.bind(@el, model: @model, view: this)
av = new Tram.AvatarView(model: @model)
@$avatarColumn.prepend(av.render().el)
- @setBorderColor()
@
remove: ->
--- a/coffee/messages.coffee Tue May 24 12:34:08 2016 +0800
+++ b/coffee/messages.coffee Tue May 24 13:11:13 2016 +0800
@@ -55,14 +55,10 @@
class Tram.MessageView extends Backbone.View
- tagName: 'div'
- className: 'message'
- template: $('#message-template').html()
+ templateEl: $($('#message-template').html())
initialize: ->
- @$el.attr('data-id', @model.get('id'))
-
- @$el.html(@template)
+ @setElement(@templateEl.clone())
@$avatarColumn = @$('.avatar-column')
@bind()
@@ -92,10 +88,16 @@
class Tram.LogApp extends Backbone.View
- tagName: 'div'
- className: 'log'
+ templateEl: $($('#chat-template').html())
initialize: ->
+ @setElement(@templateEl.clone())
+ @$log = @$('.log')
+ @rivet = rivets.bind(@el, model: @model, view: @)
+
+ @bind()
+
+ bind: ->
@listenTo(@collection, 'add', @onAdd)
onAdd: (model, collection) ->
@@ -103,15 +105,19 @@
view = new Tram.MessageView(model: model)
el = view.render().el
if mi is 0
- @$el.prepend(el)
+ @$log.prepend(el)
else
- @$el.children().eq(mi - 1).after(el)
+ @$log.children().eq(mi - 1).after(el)
if @bottomed
@scroll()
bottomed: ->
- @$el.scrollTop() + @$el.height() == @$el.get(0).scrollHeight
+ @$log.scrollTop() + @$log.height() == @$log.get(0).scrollHeight
scroll: ->
- @$el.scrollTop(@$el.get(0).scrollHeight)
+ @$log.scrollTop(@$log.get(0).scrollHeight)
+
+ remove: ->
+ @rivet.unbind()
+ super
--- a/index.html Tue May 24 12:34:08 2016 +0800
+++ b/index.html Tue May 24 13:11:13 2016 +0800
@@ -204,6 +204,7 @@
</div>
<script type="text/template" id="video-block-template">
+ <div class="video-block">
<video class="remote" rv-src="model:remote/stream/url" autoplay></video>
<video class="local" rv-src="model:local/stream/url" autoplay muted></video>
<div class="buttons uk-text-center">
@@ -232,14 +233,18 @@
<i class="uk-icon-volume-off"></i>
</button>
</div>
+ </div>
</script>
<script type="text/template" id="avatar-template">
+ <div class="vignette">
<img class="avatar" rv-if="model:avatar/url" rv-src="model:avatar/url">
<div class="avatar" rv-unless="model:avatar/url" rv-style="model:bjid | dumb-hash | fn view.getColors">
{ model:d/handle | first-letter }
</div>
+ </div>
</script>
<script type="text/template" id="message-template">
+ <div class="message" rv-data-id="model:id">
<div class="splitter" rv-if="model:d/split"></div>
<div class="column avatar-column" rv-class-uk-invisible="model:d/fold"></div>
<div class="column text-column">
@@ -260,8 +265,10 @@
<div class="xhtml-body" rv-if="model:html" rv-html="model:html"></div>
</div>
</div>
+ </div>
</script>
<script type="text/template" id="contact-template">
+ <li class="contact" rv-class-active="model:active" rv-data-jid="model:jid" rv-style="model:show | fn view.getBorderColor">
<div class="column avatar-column">
<div class="status-pip" rv-title="model:show" rv-style="model:show | fn view.getPipColor"></div>
</div>
@@ -312,6 +319,12 @@
<i class="uk-icon-times"></i> Decline
</button>
</div>
+ </li>
+ </script>
+ <script type="text/template" id="chat-template">
+ <div class="chat">
+ <div class="log"></div>
+ </div>
</script>
<script src='/js/tram.js'></script>
<script src='/js/rivets.js'></script>
--- a/js/calls.js Tue May 24 12:34:08 2016 +0800
+++ b/js/calls.js Tue May 24 13:11:13 2016 +0800
@@ -62,11 +62,7 @@
return CallView.__super__.constructor.apply(this, arguments);
}
- CallView.prototype.tagName = 'div';
-
- CallView.prototype.className = 'video-block';
-
- CallView.prototype.template = $('#video-block-template').html();
+ CallView.prototype.templateEl = $($('#video-block-template').html());
CallView.prototype.events = {
'click [data-mute-cam]': function() {
@@ -90,7 +86,7 @@
};
CallView.prototype.initialize = function() {
- this.$el.html(this.template);
+ this.setElement(this.templateEl.clone());
this.$local = this.$('video.local');
this.$remote = this.$('video.remote');
return this.bind();
--- a/js/calls.js.map Tue May 24 12:34:08 2016 +0800
+++ b/js/calls.js.map Tue May 24 13:11:13 2016 +0800
@@ -6,5 +6,5 @@
"coffee/calls.coffee"
],
"names": [],
- "mappings": "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"
+ "mappings": "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"
}
\ No newline at end of file
--- a/js/contacts.js Tue May 24 12:34:08 2016 +0800
+++ b/js/contacts.js Tue May 24 13:11:13 2016 +0800
@@ -135,14 +135,14 @@
return AvatarView.__super__.constructor.apply(this, arguments);
}
- AvatarView.prototype.tagName = 'div';
-
- AvatarView.prototype.className = 'vignette';
-
- AvatarView.prototype.template = $('#avatar-template').html();
+ AvatarView.prototype.templateEl = $($('#avatar-template').html());
AvatarView.prototype.colors = Tram.colors.avatar;
+ AvatarView.prototype.initialize = function() {
+ return this.setElement(this.templateEl.clone());
+ };
+
AvatarView.prototype.getColors = function(hash) {
var ci;
ci = hash % this.colors.length;
@@ -150,7 +150,6 @@
};
AvatarView.prototype.render = function() {
- this.$el.html(this.template);
this.rivet = rivets.bind(this.el, {
model: this.model,
view: this
@@ -172,14 +171,11 @@
function ContactView() {
this.getPipColor = bind(this.getPipColor, this);
+ this.getBorderColor = bind(this.getBorderColor, this);
return ContactView.__super__.constructor.apply(this, arguments);
}
- ContactView.prototype.tagName = 'li';
-
- ContactView.prototype.className = 'contact';
-
- ContactView.prototype.template = $('#contact-template').html();
+ ContactView.prototype.templateEl = $($('#contact-template').html());
ContactView.prototype.colors = Tram.colors.show;
@@ -211,24 +207,17 @@
};
ContactView.prototype.initialize = function() {
- this.$el.attr('data-jid', this.model.get('jid'));
- this.$el.html(this.template);
+ this.setElement(this.templateEl.clone());
this.$avatarColumn = this.$('.avatar-column');
return this.bind();
};
ContactView.prototype.bind = function() {
- this.listenTo(this.model, 'change:active', this.updateActive);
- this.listenTo(this.model, 'change:show', this.setBorderColor);
return this.listenTo(this.model, 'remove', this.remove);
};
- ContactView.prototype.updateActive = function() {
- return this.$el.toggleClass('active', this.model.has('active') && this.model.get('active'));
- };
-
- ContactView.prototype.setBorderColor = function() {
- return this.$el.css('border-left-color', this.colors[this.model.get('show')] || this.colors['default']);
+ ContactView.prototype.getBorderColor = function(show) {
+ return "border-left-color: " + (this.colors[show] || this.colors['default']) + ";";
};
ContactView.prototype.getPipColor = function(show) {
@@ -245,7 +234,6 @@
model: this.model
});
this.$avatarColumn.prepend(av.render().el);
- this.setBorderColor();
return this;
};
--- a/js/contacts.js.map Tue May 24 12:34:08 2016 +0800
+++ b/js/contacts.js.map Tue May 24 13:11:13 2016 +0800
@@ -6,5 +6,5 @@
"coffee/contacts.coffee"
],
"names": [],
- "mappings": "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"
+ "mappings": "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"
}
\ No newline at end of file
--- a/js/messages.js Tue May 24 12:34:08 2016 +0800
+++ b/js/messages.js Tue May 24 13:11:13 2016 +0800
@@ -94,15 +94,10 @@
return MessageView.__super__.constructor.apply(this, arguments);
}
- MessageView.prototype.tagName = 'div';
-
- MessageView.prototype.className = 'message';
-
- MessageView.prototype.template = $('#message-template').html();
+ MessageView.prototype.templateEl = $($('#message-template').html());
MessageView.prototype.initialize = function() {
- this.$el.attr('data-id', this.model.get('id'));
- this.$el.html(this.template);
+ this.setElement(this.templateEl.clone());
this.$avatarColumn = this.$('.avatar-column');
return this.bind();
};
@@ -158,11 +153,19 @@
return LogApp.__super__.constructor.apply(this, arguments);
}
- LogApp.prototype.tagName = 'div';
-
- LogApp.prototype.className = 'log';
+ LogApp.prototype.templateEl = $($('#chat-template').html());
LogApp.prototype.initialize = function() {
+ this.setElement(this.templateEl.clone());
+ this.$log = this.$('.log');
+ this.rivet = rivets.bind(this.el, {
+ model: this.model,
+ view: this
+ });
+ return this.bind();
+ };
+
+ LogApp.prototype.bind = function() {
return this.listenTo(this.collection, 'add', this.onAdd);
};
@@ -174,9 +177,9 @@
});
el = view.render().el;
if (mi === 0) {
- this.$el.prepend(el);
+ this.$log.prepend(el);
} else {
- this.$el.children().eq(mi - 1).after(el);
+ this.$log.children().eq(mi - 1).after(el);
}
if (this.bottomed) {
return this.scroll();
@@ -184,11 +187,16 @@
};
LogApp.prototype.bottomed = function() {
- return this.$el.scrollTop() + this.$el.height() === this.$el.get(0).scrollHeight;
+ return this.$log.scrollTop() + this.$log.height() === this.$log.get(0).scrollHeight;
};
LogApp.prototype.scroll = function() {
- return this.$el.scrollTop(this.$el.get(0).scrollHeight);
+ return this.$log.scrollTop(this.$log.get(0).scrollHeight);
+ };
+
+ LogApp.prototype.remove = function() {
+ this.rivet.unbind();
+ return LogApp.__super__.remove.apply(this, arguments);
};
return LogApp;
--- a/js/messages.js.map Tue May 24 12:34:08 2016 +0800
+++ b/js/messages.js.map Tue May 24 13:11:13 2016 +0800
@@ -6,5 +6,5 @@
"coffee/messages.coffee"
],
"names": [],
- "mappings": "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"
+ "mappings": "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"
}
\ No newline at end of file