Attachments: Concerning the mobile settings to save badwidth and fix relative urls in cordova

pull/1658/head
Rodrigo Nascimento 10 years ago
parent b64a720d99
commit 2c588131fc
  1. 14
      packages/rocketchat-message-attachments/client/messageAttachment.coffee
  2. 23
      packages/rocketchat-message-attachments/client/messageAttachment.html
  3. 1
      packages/rocketchat-message-attachments/package.js
  4. 1
      packages/rocketchat-ui/views/app/room.coffee

@ -0,0 +1,14 @@
Template.messageAttachment.helpers
fixCordova: (url) ->
if Meteor.isCordova and url?[0] is '/'
return Meteor.absoluteUrl().replace(/\/$/, '') + url
return url
showImage: ->
if Meteor.user()?.settings?.preferences?.autoImageLoad is false and this.downloadImages? is not true
return false
if Meteor.Device.isPhone() and Meteor.user()?.settings?.preferences?.saveMobileBandwidth and this.downloadImages? is not true
return false
return true

@ -11,12 +11,12 @@
{{#if author_icon}}
<img src="{{author_icon}}">
{{/if}}
<a href="{{author_link}}" target="_blank">{{author_name}}</a>
<a href="{{fixCordova author_link}}" target="_blank">{{author_name}}</a>
</div>
{{else}}
<div class="attachment-author">
{{#if author_icon}}
<img src="{{author_icon}}">
<img src="{{fixCordova author_icon}}">
{{/if}}
{{author_name}}
</div>
@ -25,7 +25,7 @@
{{#if title}}
{{#if title_link}}
<div class="attachment-title"><a href="{{title_link}}" target="_blank">{{title}}</a></div>
<div class="attachment-title"><a href="{{fixCordova title_link}}" target="_blank">{{title}}</a></div>
{{else}}
<div class="attachment-title">{{title}}</div>
{{/if}}
@ -34,7 +34,7 @@
<div class="attachment-flex">
{{#if thumb_url}}
<div class="attachment-thumb">
<img src="{{thumb_url}}">
<img src="{{fixCordova thumb_url}}">
</div>
{{/if}}
@ -47,11 +47,18 @@
{{#if image_url}}
<div class="attachment-image">
<a href="{{image_url}}" class="swipebox" target="_blank">
<div class="inline-image" style="background-image: url({{image_url}});">
<img src="{{image_url}}">
{{#if showImage}}
<a href="{{fixCordova image_url}}" class="swipebox" target="_blank">
<div class="inline-image" style="background-image: url({{fixCordova image_url}});">
<img src="{{fixCordova image_url}}">
</div>
</a>
{{else}}
<div class="image-to-download" data-url="{{image_url}}">
<i class="icon-picture"></i>
<div>click to load</div>
</div>
</a>
{{/if}}
</div>
{{/if}}

@ -16,6 +16,7 @@ Package.onUse(function(api) {
]);
api.addFiles('client/messageAttachment.html', 'client');
api.addFiles('client/messageAttachment.coffee', 'client');
// stylesheets
api.addAssets('client/stylesheets/messageAttachments.less', 'server');

@ -368,6 +368,7 @@ Template.room.events
'click .image-to-download': (event) ->
ChatMessage.update {_id: this._arguments[1]._id, 'urls.url': $(event.currentTarget).data('url')}, {$set: {'urls.$.downloadImages': true}}
ChatMessage.update {_id: this._arguments[1]._id, 'attachments.image_url': $(event.currentTarget).data('url')}, {$set: {'attachments.$.downloadImages': true}}
'click .pin-message': (event) ->
message = @_arguments[1]

Loading…
Cancel
Save